pascal IF嵌套和Case语句
第六讲 IF嵌套和Case语句 一、IF语句的嵌套
在if语句中,如果then子句或else子句仍是一个if语句, 则称为if语句的嵌套。
例1 计算下列函数
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
:根据输入的x值,先分成x<100与x>=100两种情况,然后对于情况x>=100,
再区分x是否小于200。
解法一:使用if嵌套语句
program ex;
var
x:real;自变量
y:real;因变量
begin
wrtie('Input x:');readln(x);
if (x<100) then y:=x+1
else
if x<200 then y:=x-1
else y:=-1;
writeln('x=',x,'y=',y);
end.
显然,以上的程序中,在else子句中嵌套了一个?型if语句。解法二:CASE语句
program ex;
var x,y:real;
s:integer;信号灯
begin
write(‘input x:’);
Trunc()是取整函数 readln(x)
比如说
s:=trunc(x/100); trunc(2.5)=2
trunc(3.9)=3
case s of trunc(9)=9
而实型就是所有实数,包括无理数(如根号0:y:=x+1; 2)、整数、小数等等
整型是只有整数的
1:y:=x-1; 所以trunc函数对实型有用
Else y:=0;
End;//case end
Writeln(‘x=’,x);
Writeln(‘y=’,y);
End.
二、case语句
上面我们知道可以用嵌套的if语句实现多分支的选择结构。但是如果分支越来越多时,用嵌套的if语句实现多分支就显得繁杂。当多分支选择的各个条件由同一个
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
达式的不同结果值决定时,可以用case语句实现。它的选择过程,很象一个多路开关,即由case语句的选择表达式的值,决定切换至哪一语句去工作。因此在分支结构程序设计中,它是一种强有力的手段。在实现多路径分支控制时,用case对某些问题的处理和设计,比用if语句写程序具有更简洁、清晰之感。
(一)、情况语句的一般形式:
case <表达式> of
<情况标号表1>:语句1 ;
<情况标号表2>:语句2 ;
:
<情况标号表n>:语句n ;
end;
其中case、of、end是Pascal的保留字, 表达式的值必须是顺序类型,它可以是整型、布尔型及以后学习的字符型、枚举型和子界型。情况标号表是一串用逗号隔开的与表达式类型一致的常量序列。语句可以是任何语句,包括复合语句和空语句。
(二)、case语句的执行过程
先计算表达式(称为情况表达式)的值,如果它的值等于某一个常量(称为情况常量,也称情况标号),则执行该情况常量后面的语句,在执行完语句后,跳到case语句的末尾end处。
练习题:(输入两个正整数a,b。b最大不超过三位数,a不大于31。使a在左,b在右,拼接成一个新的数c。例如:a,2,b,16,则c,216;若a,18,b,476,则c,18476。
提示:求c的公式为:
c,a×K,b
其中:
S:
Case s of;
0:k=10
1:k=100