matlab脚本编程习题3

第三次作业:switch和循环
1.从键盘输入两个数和运算符,用switch语句实现一个简单的四则运算计算器。采用循环设置10个题目,输出做对多少题。

题目描述不太清晰,不必纠结,就是写个四则运算器

count=0;
for i=1:10fprintf('第%d题\n',i);x=input('x=');y=input('y=');m=input('input the + or - or * or /:','s');answer=input('input your answer:');result=0;switch mcase '*'result=x*y;fprintf('x*y=%.4f\n',result); case '/'if y==0result=NaN;fprintf('error');elseresult=x/y;fprintf('x/y=%.4f\n',result); endcase '+'result=x+y;fprintf('x+y=%.4f\n',result); case '-'result=x-y;fprintf('x-y=%.4f\n',result); endif answer==resultcount=count+1;end
end
fprintf('total right: %d',count);

2.百钱买百鸡的问题算是一套非常经典的不定方程的问题,题目很简单:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买一百只鸡, 其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱

我一开始还以为是贪心来着。。是我想多了
代码里的步长4、7是解方程得的,i,j的初值是逆推出来的,只是为了降低算法复杂度而已

for i=0:4:15for j=4:7:26k=100-i-j;if (i*7+4*j==100)&&(mod(k,3)==0&&(i*j*k~=0))fprintf('公鸡%d只,母鸡%d只,小鸡%d只\n',i,j,k);endend
end

3.验证哥德巴赫猜想:任何一个大于4的偶数都可以表示为两个素数的和。

验证猜想也就是把数num拆成两个数x和num-x嘛
遍历x可能的值,同时num-x也为素数就可以证明了

sushu.m
用了函数,sushu判断数字n是否为素数,判断大于2的数是否为素数的方法自行百度~

function [k]=sushu(n)k=1;if n==2k=1;elsefor i=2:round(sqrt(n))if (mod(n,i)==0)k=0;endendend

homework3_3.m
第一种,输出6-2000以内的偶数,并表示为两素数之和的形式,跟百钱百鸡类似

for i=6:2:2000for x=2:2000y=i-x;flag1=sushu(x);flag2=sushu(y);if flag1*flag2==1fprintf('%d=%d+%d\n',i,x,y);break;endend
end

第二种,随便输入一个数并验证哥德巴赫猜想

n=input('输入任意大于4的偶数:');
for x=2:n-1y=n-x;flag1=sushu(x);flag2=sushu(y);if flag1*flag2==1fprintf('%d=%d+%d\n',n,x,y);break;end
end

4.输入一个10进制整数,转换为二进制输出。

最坑的地方在于matlab里没有数据类型,默认不会向下取整,注意数组维度

n=input('请输入一个10进制整数(0~1023):');
A=zeros(1,10);
i=1;
while 1   A(i)=floor(mod(n,2));n=floor(n/2);i=i+1;  if n==0break;end
end
for i=10:-1:1fprintf('%d',A(i));
end

5.斐波那契数列:又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(3)=2,F(n)=F(n-1)+F(n-2)(n>=4,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1963年起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。

要求:(1)编写函数fibo,功能是求斐波那契数列的第n项。(2)编写测试脚本,调用fibo函数,输出斐波那契数列的前30项。

用了递归,简单理解就是 根据递推式F(n)=F(n-1)+F(n-2)
只要有初项F(1)F(2),后面所有项都可以递推地求出来,在程序中就表现为我自己调用我自己,感兴趣可以再去做做汉诺塔问题

fibo.m

function [x]=fibo(n)if n==1||n==2x=1;elsex=fibo(n-2)+fibo(n-1);end

homework3_5.m

for i=1:30f=fibo(i);fprintf('斐波那契数列第%d项为:%d\n',i,f);
end

(优雅的使用)matlab脚本编程习题3相关推荐

  1. matlab脚本编程习题

    1.输入长方形的长和宽,计算长方形的周长和面积并输出 len=input('input the length of rectangle:');w=input('input the width of r ...

  2. MATLAB 脚本编程的常用快捷键的整理

    了解快捷键,可以快速了解MATLAB 软件一些基本功能和使用方法. 文件使用方法: 1.打开MATLAB,找个简单的MATLAB程序,对着文件逐条试验. 2.MATLAB编程前,尽量浏览一遍,有助于提 ...

  3. linux运维脚本编写,最强Linux自动化运维 Shell高级脚本编程实战 带习题+项目实战案例+全套配置脚本...

    最强Linux自动化运维 Shell高级脚本编程实战 带习题+项目实战案例+全套配置脚本 大家可以通过参考下面的课程学习目录,就会发现单单只从目录上来分析就知道这是一部非常系统的Shell自动化脚本运 ...

  4. Matlab:编程和脚本

    Matlab:编程和脚本 脚本 实时脚本 循环及条件语句 脚本位置 脚本是最简单的一种 MATLAB 程序.脚本是一个包含多行连续的 MATLAB 命令和函数调用的文件.在命令行中键入脚本名称即可运行 ...

  5. matlab两个多项式相除,C++和MATLAB混合编程求解多项式系数(矩阵相除)

    摘要:MATLAB对于矩阵处理是非常高效的,而C++对于矩阵操作是非常麻烦的,因而可以采用C++与MATLAB混合编程求解矩阵问题. 主要思路就是,在MATLAB中编写函数脚本并使用C++编译为dll ...

  6. 【 MATLAB 】使用 MATLAB 作图讨论有限长序列的 N 点 DFT(强烈推荐)(含MATLAB脚本)

    这篇博文本来是和上篇博文一起写的:[ MATLAB ]离散傅里叶级数(DFS)与DFT.DTFT及 z变换之间的关系 但是这篇博文我最初设计的是使用MATLAB脚本和图像来讨论的,而上篇博文全是公式, ...

  7. linux shell命令行及脚本编程实例详解_Linux高手必看的10本经典书籍

    Linux高手必看的10本经典书籍 Linux 是一个开放.灵活.跨平台的操作系统,上至庞大的数据中心,下至可放于掌心中的嵌入式设备,Linux 的身影无处不在. 如果你想成为一名精通 Linux 程 ...

  8. shell脚本编程for循环求阶乘_shell脚本编程(完结版).pdf

    shell脚本编程(完结版) Shell 脚本编程学习笔记 2013 年 5 月 2 日 追风~忆梦 如有任何疑问,请联系作者,作者 QQ:1028150787,或者到韦东山群共同讨论 1 Shell ...

  9. matlab求解多项式系数,C++和MATLAB混合编程求解多项式系数(矩阵相除)

    摘要:MATLAB对于矩阵处理是非常高效的,而C++对于矩阵操作是非常麻烦的,因而可以采用C++与MATLAB混合编程求解矩阵问题. 主要思路就是,在MATLAB中编写函数脚本并使用C++编译为dll ...

最新文章

  1. 25个视频神同步,还能给视频声音移花接木,谷歌开源最新自监督算法
  2. glide 显示图片慢_做个看图片的App玩玩_第一篇
  3. Python之路_Day13
  4. 《面向对象的思考过程(原书第4版)》一1.11 组合
  5. 两个队列+k叉哈夫曼树 HDU 5884
  6. 数字电路与微型计算机原理,电子科技大学1999年考研真题-微机原理与数字电路...
  7. NUC1041 数字三角形【DP】
  8. MySQL 基础 —— DDL(数据定义)、DCL(数据控制)
  9. java简易计算器程序框图_简易计算器程序设计思路及流程图
  10. linux安装中文输入法 -谷歌拼音
  11. 京东运营体系组织架构曝光,自建物流秘密在这里
  12. html的reset按钮的作用简单介绍
  13. 【SPSS笔记】主效应、交互效应
  14. App开发外包给专业软件开发公司,需要注意什么?
  15. mysql中表结构是什么_查询MySQL数据库中表结构
  16. es数据更新时间_京东到家订单中心系统mysql到es的转化之路
  17. 第三届“传智杯”全国大学生IT技能大赛(初赛B组)题解合集
  18. pythonselenium浏览器_python3的爬虫笔记11——Selenium和浏览器的一些设置
  19. STM32配置CH375B成HID Host模式读取自定义HID设备的数据 ——STM32配置CH375B接口函数
  20. Vim快捷键(二):光标移动

热门文章

  1. NNM的netmon运行小问题,No connection with master agent
  2. EFR32MG裸机工程-1-新建
  3. 德州扑克AI辅助实时建议
  4. QT 绘制圆角边框存在圆角加粗问题,使用反锯齿无效
  5. centos系统一键安装docker环境
  6. unity学习笔记-番外(3d模型的动作设计以及导入-2018版)材质的替换以及动作穿模(自己的手穿模到自己的其他部位)
  7. spring 的AOP和动态代理分析
  8. 2020资料员-通用基础(资料员)模拟考试题库及资料员-通用基础(资料员)考试试题
  9. ElasticSearch 搜索相关
  10. html+css+js实现的新年烟花