190 likes | 403 Views
1014: 【 入门 】 求三个数的最大数 题目描述 : 已知有三个不等的数,将其中的最大数找出来。 输入只有一行,包括 3 个整数。之间用一个空格分开。 输出只有一行(这意味着末尾有一个回车符号),包括 1 个 整数 。. a. max. a. b. c. 算法:解决问题的方法. 1015: 【 入门 】 求三个数的大小顺序 题目描述 : 输入三个数,按由大到小顺序打印出来。 输入只有一行,包括 3 个整数。之间用一个空格分开。 输出只有一行,包括 3 个整数。之间用一个空格分开。 样例输入 3 8 2 样例输出 8 3 2.
E N D
1014: 【入门】求三个数的最大数 题目描述:已知有三个不等的数,将其中的最大数找出来。 输入只有一行,包括3个整数。之间用一个空格分开。 输出只有一行(这意味着末尾有一个回车符号),包括1个整数。 a max a b c 算法:解决问题的方法
1015: 【入门】求三个数的大小顺序 题目描述:输入三个数,按由大到小顺序打印出来。 输入只有一行,包括3个整数。之间用一个空格分开。 输出只有一行,包括3个整数。之间用一个空格分开。 样例输入 3 8 2 样例输出 8 3 2 课本P55页3-8,作业,下节课请同学上黑板写
1003 题目描述:编程求解数学中的分段函数。 x+1 (当x>0) y=f(x)= 0 (当x=0) x-1 (当x<0) 上面描述的意思是:当x>0时y=x+1; 当x=0时y=0; 当x<0时y=x-1 输入:一行,只有一个整数x(-30000<=x<=30000) 输出:只有一行,包括1个整数(即y)。 样例输入 3 样例输出 4 Integer -32768---32767 var x,y:integer; begin readln(x); if x>0 then y:=x+1 else if x=0 then y:=0 else y:=x-1; writeln(y); end. if x>=0 then if x=0 then y:=0 else y:=x+1 else y:=x-1; else 同它最近的then 配对
1013: 【入门】判断成绩等级 题目描述:输入某学生成绩,如果86分以上(包括86分)则输出“VERY GOOD” ,如果在60到85之间的则输出“GOOD”(包括60和85),小于60的则输出“BAD”。 输入只有一行,包括1个整数。 输出只有一行(这意味着末尾有一个回车符号)。 样例输入 80 样例输出 GOOD program ex_1013; var x:integer; begin readln(x); if x>=86 then writeln('VERY GOOD') else if x<60 then writeln('BAD') else writeln('GOOD'); end.
16题 打印某年某月有多少天。(提示:A、闰年的计算方法:年数能被4整除,并且不能被100整除;或者能被400整除的整数年份。) (year mod 4=0) and (year mod 100<>0 ) or (year mod 400=0) 提示:如果1、3、5……天数为31 如果4、6……天数为30 如果2 再分两种情况
program qday; var year,month,day:integer; begin readln(year,month); if (month=1) or (month=3) or (month=5) or (month=7) or (month=8) or (month=10) or (month=12)then day:=31; if (month=4) or (month=6) or (month=9) or (month=11) then day:=30 ; if month=2 then if (year mod 4=0) and (year mod 100 <>0) or (year mod 400=0) then day:=29 else day:=28; writeln('day=',day); readln; end. 用嵌套
用嵌套的if语句实现选择结构多分支。但是如果分支越来越多时,用嵌套的if语句实现多分支就显得繁杂。用嵌套的if语句实现选择结构多分支。但是如果分支越来越多时,用嵌套的if语句实现多分支就显得繁杂。 当多分支选择的各个条件由同一个表达式的不同结果值决定时,可以用case语句实现。 月份
1,3,5,7,8,10,12 4,6,9,11 2 program day_case; var year,month,day:integer; beginreadln(year,month);case month of1,3,5,7,8,10,12: day:=31;4,6,9,11: day:=30; 2:if (year mod 400=0) or (year mod 100<>0) and (year mod 4=0) then day:=29 else day:=28; end; writeln(‘day=’,day);readln; end. 31 30 28 29
Case语句 Case 表达式of常量表1:语句1;……常量表n:语句n;[else 语句n+1] ;end; 格式说明:常量表为有序类型数据。表达式要与常量类型一致。 常量后的语句为一条语句。如果要完成多条语句功能,要将这些语句写成复合语句。 表达式只能是序数类型。序数类型包括整型、字符型、布尔型、枚举型、子界型。
根据学生的成绩给予相应的等低,对应关系如下: 90——100 A 80——89 B 60——79 C 60以下 D根据学生的成绩给予相应的等低,对应关系如下: 90——100 A 80——89 B 60——79 C 60以下 D 析:利用case语句进行程序设计 关键在于巧妙地构造情况表达式
n值是整型 program chengji;var n:integer; ch:char;beginreadln(n);casen div 10 of10,9:ch:=‘A’;8:ch:=‘B’;7,6:ch:=‘C’;else ch:='D';end;writeln(n,'--',ch);end. program chengji;var n:integer; ch:char;beginreadln(n);casen of90..100:ch:=‘A’;80..89:ch:=‘B’;60..79:ch:=‘C’;else ch:='D';end;writeln(n,'--',ch);end. 表达式有序
n值是整型 program chengji;var n:integer; ch:char;beginreadln(n);casen div 10 of10,9:ch:=‘A’;8:ch:=‘B’;7,6:ch:=‘C’;else ch:='D';end;writeln(n,'--',ch);end. program chengji;var n:integer; ch:char;beginreadln(n);casen of90..100:ch:=‘A’;80..89:ch:=‘B’;60..79:ch:=‘C’;else ch:='D';end;writeln(n,'--',ch);end. 表达式有序
n值是实型 program chengji;var n:real; ch:char;beginreadln(n);case trunc(n /10) of10,9:ch:=‘A’;8:ch:=‘B’;7,6:ch:=‘C’;else ch:='D';end;writeln(n,'--',ch);end. program chengji;var n:integer; ch:char;beginreadln(n);casen div 10 of10,9:ch:=‘A’;8:ch:=‘B’;7,6:ch:=‘C’;else ch:='D';end;writeln(n,'--',ch);end.
Trunc(x) 取x整数部分,结果为整形 Int(x) 取整数部分,结果为实型 Round(x) 四舍五入,结果为整形 Sqrt(x) 求x的开方,结果为实型 begin writeln(trunc(3.657)); writeln(int(3.657)); writeln(round(3.657)); writeln(sqrt(81)); end.
判断输入的字符是大写、小写、数字还是其它 表达式的值是子界型
题18 找出最经济型的包装箱型号--已知有A,B,C,D,E五种包装箱,为了不浪费材料,小于10公斤的用A型,大于等于10公斤小于20公斤的用B型,大于等于20公斤小于40公斤的用C型,大于等于40公斤的小于50公斤的用D型,大于等于50公斤小于80公斤的用E型。现在输入一货物的重量(小于80公斤),找出最经济型的包装箱型号。 Input 输入只有一行,包括一个整数。 Output 输出只有一行(这意味着末尾有一个回车符号),包括1个字符。 Sample Input 8 Sample Output A
program rm18; var m:integer; xz:char; begin readln(m); case m div 10 of 0: xz:='A'; 1: xz:='B'; 2,3: xz:='C'; 4: xz:='D'; 5,6,7: xz:='E'; end; write(xz); end.
题17:任意输入一个三位整数,再把它的次序打乱重新组合一个新的三位整数,使其值最大。题17:任意输入一个三位整数,再把它的次序打乱重新组合一个新的三位整数,使其值最大。 Input 输入只有一行,包括1个整数。 Output 输出只有一行(这意味着末尾有一个回车符号),包括1个整数。 Sample Input 470 Sample Output 740 思路:把三位拆除出来,求出最大、中间、最小
program rm4; var x,g,s,b,y,t:integer; begin readln(x); g:=x mod 10; b:=x div 100; s:=x div 10 mod 10; if b<s then begin t:=b;b:=s;s:=t; end; if b<g then begin t:=b;b:=g;g:=t;end; if s<g then begin t:=s;s:=g;g:=t;end; y:=b*100+ s*10+g; write(y); end.