![]() |
求助各位坛友,帮忙解决两道问题。。。
[COLOR="Red"]已解决,谢谢hrt兄弟!!![/COLOR]
1. 输入一个百分制成绩,要求输出成绩等级A,B,C,D,E.其中90~100输出A,80~89输出B,70~79输出C,60~69输出D,60分以下E. 要求(1)分别用if和switch语句实现 (2)判断合理性,对不合理成绩输出错误信息 2. 求1到100之间的偶数之和。[/SIZE][/SIZE] |
回复: 求助各位坛友,帮忙解决两道问题。。。
对于第一题,写了个函数M文件如下:
function fscore(x) if((x>100)||(x<0)) disp('成绩不合理'); else switch(floor(x/10)) %floor为MATLAB自带的取整函数 case {9,10} disp('A'); case 8 disp('B'); case 7 disp('C'); case 6 disp('D'); otherwise disp('E'); end end 运行的一些结果如下: >> fscore(101) 成绩不合理 >> fscore(-1) 成绩不合理 >> fscore(90.9) A >> fscore(65) D 对于第二题 程序1: k=0; for i=1:100 if(rem(i,2)==0) k=k+i; else continue; end end k 结果为: k = 2550 程序2: >> i=2:2:100; >> sum(i) 结果为: ans = 2550 关于上面两道题,肯定还有其它方法啦~ ~ 加油~ ~ |
回复: 求助各位坛友,帮忙解决两道问题。。。
谢谢你,第二题很简单,我明白了。
但是第一题我照着写了个M文件 出现的错误提示是: ??? Input argument "x" is undefined. Error in ==> baifen2wuji at 2 if((x>100)||(x<0)) 是不是我哪里操作错了??? |
回复: 求助各位坛友,帮忙解决两道问题。。。
由于没有参数传给x,执行函数M文件就会出现你说的问题。
编写好M文件后,直接保存,不在debug下执行,就不会有问题了。(注意:m文件名要和函数名一样,为fscore) 再在matlab命令窗口中,输入命令: >> fscore(101) 或 >> fscore(56) 。。。 可得到结果 |
回复: 求助各位坛友,帮忙解决两道问题。。。
原来是这样,呵呵,非常感谢
|
所有时间均为北京时间。现在的时间是 12:15。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.