pascal编程1

来源:百度知道 编辑:UC知道 时间:2024/06/19 17:11:08
1、设n的值为一个正整数,写一个程序,判定n为几位数。
如 99,为2位数
100,为三位数
2、打印输入的n个整数中的最大、最小数及其序号。
——————————————编辑以上程序——————————————

1.
var s:string;
begin
readln(s);
writeln(length(s));
end.

2.
var i,n,minn,maxn,smi,sma,num:longint;
begin
readln(n);

minn:=maxlongint;
for i:=1 to n do begin
read(num);

if num>maxn then begin maxn:=num; sma:=i; end;

if num<minn then begin minn:=num; smi:=i; end;
end;

writeln(maxn,' ',sma);
writeln(minn,' ',smi);
end.

第一题,把它转换成字符串类型,然后用length函数求出字符串的长度,即为位数
第二题,把这n个数从头到尾扫描,假设求的是最大值,那么大概是这样一个流程
{var max,i,k,num:integer;}
max:=-32768;
for i:=1 to n do
{
read(k);
if k>max then {
max:=k;
num:=i;
};
}
用的是四不像的伪代码..'{'就是begin(开头的不是,那是注释),'}'是end
求最小值的流程基本相反

这两个程序很基础,就别打给LZ现成的代码了,也得给别人提高的机会不是
当然,如果LZ真的不希望看到伪码和自然语言,可以无视我的答复,我已经不在乎分了

原来你还分1,2了
这些书上应该有吧,怎么都不