找回密码
 注册
关于网站域名变更的通知
查看: 452|回复: 1
打印 上一主题 下一主题

Matlab程序设计

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-1-3 09:56 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
4 X" [3 Q2 t- P# u
一、实验任务和目的

9 a: {) h% c2 r6 B
  • 熟悉程序设计思想。
  • 掌握伪代码的编写方法。
  • 掌握分支语句和循环结构的用法。2 H% b" Y' ^! D/ O# Z8 Z. `
" {- O8 f" ~; j/ J. O3 l
二、实验内容
" [6 U. e2 {  ~- {) z# o4 w! V1、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E,其中90-100为A,80-89为B,70-79为C,60-69为D,60分以下为E。要求" ~/ Y6 K2 z8 @/ R
(1)分别用if语句和switch语句实现;3 m0 ~9 b+ [! b, ~" |
(2)应对输入的成绩进行合理性判断,对不合理的成绩应输出错误信息。
" G3 P; ~' Z/ n) }' T+ u" Y( a- L7 Y7 K( m8 J% _8 @& t
2、编程实现一个九九乘法表,并屏幕显示出来,如下图所示:8 N0 g- a7 L; a0 x% r

$ I; x% c* C7 u0 p
& s& D" h7 s2 P. h8 E' K: B
4 `7 X- h5 A. R. |) {; x1 C6 ^4 O4 v3、计算the day of year(年积日),the day of year 是指这一年已经逝去的天数(包括当天)。在平年中,它的取值范围为1到365,在闰年中,它的取值范围1 到366。编写一个MATLAB 程序,输入年、月、日,输出为对应的the of year。
& l# e$ E6 B& m; R- a- p) v2 d3 A4 M9 t# C
三、实验过程和结果
: T& k! `! c( O0 R- I  R1、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E,其中90-100为A,80-89为B,70-79为C,60-69为D,60分以下为E。要求. b; k" k. S5 w# H( k  V! O
(1)分别用if语句和switch语句实现;
( {9 O9 v" T& }, r# }+ ?' k* Z7 I# ]If语句:
; B7 K! a+ T6 x! k
  •     x=input(‘成绩’);
  •     if x>=90&&x<=100
  •         disp('A');
  •     elseif x>=80&&x<=89
  •         disp('B');
  •     elseif x>=70&&x<=79
  •         disp('C');
  •     elseif x>=60&&x<=69
  •         disp('D');
  •     else disp('E');
  •     end9 N$ y& m3 H: K7 K0 Z. j
+ b. B0 R" ]5 @. c0 t. M
switch语句:
- l, c. o( X4 u" `; R* ~( O( E: |- X: |1 a! O+ W1 I# @' Z7 R/ f
  • x=input('成绩');
  • switch x
  •     case num2cell(90:100)
  •         disp('A');
  •     case num2cell(80:89)
  •         disp('B');
  •     case num2cell(70:79)
  •         disp('C');
  •     case num2cell(60:69)
  •         disp('D');
  •     otherwise
  •         disp('E');
  • end
    7 w2 L( s/ m/ S3 }. j# L& t, M
: `$ P$ s  V( v; T: Z* N1 y5 i' Y
7 v! S7 g; B; e% g8 F: P/ G
(2)应对输入的成绩进行合理性判断,对不合理的成绩应输出错误信息。' ^0 j/ t' g, g* o1 L( E

: h, h5 x. Y8 p" C4 k
  • x=input('成绩');
  • if(x>100||x<0)
  •     disp('wrong input');
  • else
  •     switch x
  •         case num2cell(90:100)
  •             disp('A');
  •         case num2cell(80:89)
  •             disp('B');
  •         case num2cell(70:79)
  •             disp('C');
  •         case num2cell(60:69)
  •             disp('D');
  •         otherwise
  •             disp('E');
  •     end
  • end
    ) e- ~. n9 S: P! I6 g* Q
4 s: Z" e, X% d2 U9 j, y

4 Q- b3 i7 E- I& Y2、编程实现一个九九乘法表,并屏幕显示出来,如下图所示:! D& n  V' Y  N

7 y6 R6 y& R% a: D" N7 Y! G+ m4 j4 q& g& J6 l9 o3 k
  •         for i=1:9
  •                 for j=1:i
  •                     fprintf('%dx%d=%d',j,i,i*j);
  •                     if(j~=i)
  •                 fprintf(' ');
  •                     end
  •                 end
  •                 fprintf('\n');
  •         end
    7 K  o& Q" f3 a* |. T" ~& [. d
9 f. U3 F1 |: {, l# Y

% D* o% M& p6 f: _: M3、计算the day of year(年积日),the day of year 是指这一年已经逝去的天数(包括当天)。在平年中,它的取值范围为1到365,在闰年中,它的取值范围1 到366。编写一个MATLAB 程序,输入年、月、日,输出为对应的the of year。
& P, I' O# W/ j' Y5 I2 \
  • y=input('年');
  • m=input('月');
  • d=input('日');
  • sum=0;
  • a=[31,28,31,30,31,30,31,31,30,31,30,31];
  • b=[31,29,31,30,31,30,31,31,30,31,30,31];
  • if(y<0||m<0||d<0||m>12||d>31)
  •     fprintf('wrong input');
  • else
  •     if(mod(y,400)==0||mod(y,100)~=0 && mod(y,4)==0)
  •         for i=1:m-1
  •             sum=sum+b(i);
  •         end
  •         if(d>b(m)) fprintf('wrong input');
  •         else fprintf('%d',sum+d);
  •         end
  •     else
  •         for i=1:m-1
  •             sum=sum+a(i);
  •         end
  •         if(d>b(m)) fprintf('wrong input');
  •         else fprintf('%d',sum+d);
  •         end
  •     end
  • end  ^" Z/ F+ h! A6 S2 x

* @1 _6 E( n. U# U3 J8 k* L4 M; Q1 h. d# }4 |% a- |  [6 b! @% w( u
四、实验总结和心得7 c# ?  j. \; q1 ]% x" |
熟悉了程序设计思想。
; i2 h6 @- ^$ Y7 D3 L7 `; |: R掌握了伪代码的编写方法。
4 A3 C$ e% B2 B  Y* D8 M掌握了分支语句和循环结构的用法。
& q. P& N/ Z4 ~: S5 a# M9 i, J* {6 [# [# g4 h, o; [

* [% H- G, K# S3 n2 y! F

该用户从未签到

2#
发表于 2020-1-3 18:06 | 只看该作者
我熟悉了程序设计思想
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-15 08:38 , Processed in 0.078125 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表