Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2009-03-20, 13:21   #1
robertshan
初级会员
 
注册日期: 2009-03-20
年龄: 37
帖子: 1
声望力: 0
robertshan 正向着好的方向发展
默认 [求助]请高手们帮我看看哪里出错了 这是我第一次编程

题目是:输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90分~100分为A,80分~89分为B,70分~79分为C,60分~69分为D,60分以下为E。
要求:
(1)分别用if语句和switch语句实现。
(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
x=input('请输入x的值:');
if x>=90 and x<=100
y='A';
elseif x>=80 and x<=89
y='B';
elseif x>=70 and x<=79
y='C';
elseif x>=60 and x<=69
y='D';
elseif x>=0 and x<=59
y='E';
else
'error';
end

grade=input('请输入grade的值');
switch fix(grade/10)
case{0,1,2,3,4,5}
y='E';
case{6}
y='D';
case{7}
y='C';
case{8}
y='B';
case{9,10}
y='A';
otherwise
'error';
end;
这两段调试都出错了 但是我不知道错在哪里 希望大家指导我下,谢谢各位!
顺便看下这个题目:
已知f1=1,n=1;f2=0,n=2;f3=1,n=3;f(n)=f(n-1)-2f(n-2)+f(n-3),n>3.求f1到f100中,
(1)最大值、最小值、各数之和。(2)正数、零、负数的个数。

感谢大家!
robertshan 当前离线   回复时引用此帖
旧 2009-03-20, 16:22   #2
天风么
初级会员
 
注册日期: 2009-03-16
年龄: 39
帖子: 4
声望力: 0
天风么 正向着好的方向发展
默认 回复: [求助]请高手们帮我看看哪里出错了 这是我第一次编程

第一个别用and 用&
第二个没错,我试了。
天风么 当前离线   回复时引用此帖
旧 2009-03-21, 20:27   #3
zlhxln
初级会员
 
注册日期: 2009-03-21
年龄: 58
帖子: 5
声望力: 0
zlhxln 正向着好的方向发展
默认 回复: [求助]请高手们帮我看看哪里出错了 这是我第一次编程

x=input('请输入x的值:');
if x>=90 & x<=100
y='A'
elseif x>=80
y='B'
elseif x>=70
y='C'
elseif x>=60
y='D'
elseif x>=0
y='E'
else
'error'
end



grade=input('请输入grade的值');
switch fix(grade/10)
case{0,1,2,3,4,5}
y='E'
case{6}
y='D'
case{7}
y='C'
case{8}
y='B'
case{9,10}
y='A'
otherwise
'error'
end;

注意基础知识,别和C语言混淆。那题目我在看看。
zlhxln 当前离线   回复时引用此帖
旧 2011-04-29, 10:58   #4
shengmiaomiao
初级会员
 
注册日期: 2009-09-16
年龄: 37
帖子: 4
声望力: 0
shengmiaomiao 正向着好的方向发展
默认 回复: [求助]请高手们帮我看看哪里出错了 这是我第一次编程

我这有一个问题,给出一个常数s=11;三个矩阵a=[1 2 3 5 6 8];b=[10 11 13];c=[15 16 78];用switch语句判断s分别对应哪一个矩阵的处理情况,比方说:
switch s
case {a}
s=1;
case {b}
s=2;
case {c}
s=3;
end
这样哪里有问题啊?程序根本就进入不了case语句。
感谢帮助!
shengmiaomiao 当前离线   回复时引用此帖
旧 2011-04-30, 09:15   #5
anbcjys
高级会员
 
注册日期: 2008-09-14
年龄: 43
帖子: 351
声望力: 24
anbcjys 正向着好的方向发展
默认 回复: [求助]请高手们帮我看看哪里出错了 这是我第一次编程

引用:
作者: shengmiaomiao 查看帖子
我这有一个问题,给出一个常数s=11;三个矩阵a=[1 2 3 5 6 8];b=[10 11 13];c=[15 16 78];用switch语句判断s分别对应哪一个矩阵的处理情况,比方说:
switch s
case {a}
s=1;
case {b}
s=2;
case {c}
s=3;
end
这样哪里有问题啊?程序根本就进入不了case语句。
感谢帮助!
没有s=11的情况 。
__________________
qq604443022
anbcjys 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 15:43


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.