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

Matlab程序设计

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
4 z4 }. `0 R% A% _
一、实验任务和目的

  e/ S4 _$ \" k5 }8 M2 Z
  • 熟悉程序设计思想。
  • 掌握伪代码的编写方法。
  • 掌握分支语句和循环结构的用法。
    6 |# d) _& A+ d* Y# o
1 k/ d) m. C- `* h% C3 G5 K
二、实验内容
1 w1 g+ G$ N/ x+ f8 W9 J+ u+ G7 ]* C1、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E,其中90-100为A,80-89为B,70-79为C,60-69为D,60分以下为E。要求
; S5 _7 I2 n% i8 y(1)分别用if语句和switch语句实现;
8 b" r; S+ N8 Z0 d% t(2)应对输入的成绩进行合理性判断,对不合理的成绩应输出错误信息。
6 W5 b+ T1 l5 P  N& D0 k  D( g3 ~0 \! d3 _- f* @
2、编程实现一个九九乘法表,并屏幕显示出来,如下图所示:- y+ E" T+ E  a, ~7 G4 @$ h& D

4 C& a9 q( @4 @
/ W" X2 u, ^5 c5 Y- _* }8 t+ t# K
3、计算the day of year(年积日),the day of year 是指这一年已经逝去的天数(包括当天)。在平年中,它的取值范围为1到365,在闰年中,它的取值范围1 到366。编写一个MATLAB 程序,输入年、月、日,输出为对应的the of year。/ C+ T2 n5 \7 M5 ]$ W) i

: c, t8 z3 @/ I6 h) H& I$ q三、实验过程和结果
( v/ S+ R. |5 D3 b  j" @$ O* C$ w1、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E,其中90-100为A,80-89为B,70-79为C,60-69为D,60分以下为E。要求9 q( Y' D( u! Y" v
(1)分别用if语句和switch语句实现;# t. L3 h/ \9 V* ?
If语句:
4 U7 \5 c' y) o# d( S+ e* r
  •     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');
  •     end+ ~4 z" ?7 l  z& u/ ?9 g/ P- S
: ~. m# s: k7 ?* g6 ]* Z% g1 Y
switch语句:* q! ?& z% F( w1 T& S

/ @2 A3 A. T. h# f! n
  • 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
    6 B0 T7 v) V' a- ^

9 `7 g7 Q5 O/ p& O/ i) _. Y$ ^1 |# x' B$ p' W/ M# A& ~
(2)应对输入的成绩进行合理性判断,对不合理的成绩应输出错误信息。
( f( U1 \  u1 i
" [3 m! n4 F, ?" D4 u7 B
  • 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: i* r4 W, w! @. `3 W: Z6 Y1 a

; j+ a) x* C1 {: B
7 d  w3 @  f4 X: C8 O2、编程实现一个九九乘法表,并屏幕显示出来,如下图所示:
' u! K$ d/ p$ H, R 4 B6 r8 g3 }8 V4 P1 R& g9 {

* ~/ F2 Y& |; 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
    ! b3 l' U! H1 x& t5 J+ Y

' G4 k) C' j+ ?& C1 v
9 X6 ^) M+ A* h1 s. x3、计算the day of year(年积日),the day of year 是指这一年已经逝去的天数(包括当天)。在平年中,它的取值范围为1到365,在闰年中,它的取值范围1 到366。编写一个MATLAB 程序,输入年、月、日,输出为对应的the of year。
* }5 A3 n5 z' x' c) [2 Q
  • 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
    . h/ f- v! W& y: Q9 w" X) y
! W) P7 \5 d% P' z* q2 A. t

) ~: n/ W8 [0 I3 S四、实验总结和心得
4 {/ _* r: t+ d- w  A( C熟悉了程序设计思想。! V; v/ m$ Q# j  Z9 a) D$ b
掌握了伪代码的编写方法。
% m  e9 x' q# t# z掌握了分支语句和循环结构的用法。
: s5 y& h3 u3 y, L3 k& M8 |  W  x7 x8 E( x' U" x( o: ]
: D" _, `  @9 r6 f0 ^, g

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-1 02:51 , Processed in 0.125000 second(s), 26 queries , Gzip On.

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

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

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