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

Matlab程序设计

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
3 |- ~2 g7 b5 h' m- r
一、实验任务和目的

; S9 g7 u9 R/ w4 e# b& `- O
  • 熟悉程序设计思想。
  • 掌握伪代码的编写方法。
  • 掌握分支语句和循环结构的用法。- S3 r- _0 v+ W  L
' o: l; m$ a& z  R3 \- N4 e0 I: @4 Q. Y
二、实验内容
1 D1 L0 |! E' P" t; _; h1、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E,其中90-100为A,80-89为B,70-79为C,60-69为D,60分以下为E。要求& z: j0 @! r4 P0 B
(1)分别用if语句和switch语句实现;! m5 c$ ]. B6 b3 U
(2)应对输入的成绩进行合理性判断,对不合理的成绩应输出错误信息。( }6 p" g/ t; N7 x

( `( p6 C' z/ F2 S' K) U; n2、编程实现一个九九乘法表,并屏幕显示出来,如下图所示:
; N( T1 |5 f' K3 x5 ~' T
) `- K% \$ }  S
8 `! u7 W5 H! t4 g
" K0 \) {' t6 ], ^0 }- B+ J: Z3、计算the day of year(年积日),the day of year 是指这一年已经逝去的天数(包括当天)。在平年中,它的取值范围为1到365,在闰年中,它的取值范围1 到366。编写一个MATLAB 程序,输入年、月、日,输出为对应的the of year。
+ P# d/ t/ R  f6 N* t; Y; X: ~; v5 U, `* Y3 A5 s3 n; z" a0 s" W
三、实验过程和结果
0 ]2 |7 v3 K3 e7 V7 W& y0 F/ Q1、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E,其中90-100为A,80-89为B,70-79为C,60-69为D,60分以下为E。要求
. O3 A7 W. k$ F7 F4 M7 b(1)分别用if语句和switch语句实现;
1 _+ E, A- z6 e% q' ]If语句:
& v2 Z+ @6 |. _
  •     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
    " |5 ?% t+ r  q6 K8 ?3 ]5 a
1 L' o: o3 j! J% t4 G" Q
switch语句:6 u4 {: {1 V2 F) X! P# K

! `+ ^# G) P+ e* [+ j5 r8 t
  • 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 O3 u" K8 a2 Y* p/ r! i/ D

, r& Y& X( Y9 @5 K5 v0 n- b+ ^- M3 z. n+ u) I0 I% `; i
(2)应对输入的成绩进行合理性判断,对不合理的成绩应输出错误信息。
1 p  U, ^) H5 e7 I
/ Z. {! N1 Y* m4 {7 X
  • 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- B; W* {' |! k1 N/ E- h2 O  g0 @

" C( b2 \' J( B  Q6 g  g/ s: l2 l- G6 ~; G7 [
2、编程实现一个九九乘法表,并屏幕显示出来,如下图所示:
& i& }9 H% U3 M# a9 g
1 p9 P9 n9 _' n. O- \1 M9 C' F2 q- c8 n$ g6 l
  •         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
    , N8 y$ d5 @3 d

$ D3 `/ V5 O/ _6 ]
7 k: l8 y0 f4 y0 F5 j  {, u/ _3、计算the day of year(年积日),the day of year 是指这一年已经逝去的天数(包括当天)。在平年中,它的取值范围为1到365,在闰年中,它的取值范围1 到366。编写一个MATLAB 程序,输入年、月、日,输出为对应的the of year。8 A+ @! a9 y5 H" ?2 V2 u
  • 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
    % O" {; W; x$ _: N1 N2 H# E
3 |8 I6 H3 z( N$ K  k

4 ?; R9 p8 H8 B* L0 P四、实验总结和心得
1 h6 Q' ^9 g1 v( e9 _熟悉了程序设计思想。  ]9 v1 S% j+ N& Q; _6 E. S
掌握了伪代码的编写方法。
. F0 V& s4 d4 c$ [9 \5 g/ |掌握了分支语句和循环结构的用法。; u# V; B; e2 d) E# x: u# x* p

& l  r$ H9 [* d7 S6 G8 U' x) Y+ u$ @1 n. `1 I

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-1 20:25 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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