阅读程序作业5from 12 届普及组 2008123

1. Program ex301;

var

u:array[0..3] of integer;

i,a,b,x,y:integer;

begin

   y:=10;

for i:=0 to 3 do

read(u[i]);

a:=(u[0]+u[1]+u[2]+u[3]) div 7;

b:=u[0] div ((u[1]-u[2]) div u[3]);

x:=(u[0]+a+2)-u[(u[3]+3) mod 4];

if (x>10) then

y:=y+(b*100-u[3]) div (u[u[0] mod 3]*5)

else

y:=y+20+(b*100-u[3]) div (u[u[0] mod 3]*5);

writeln (x,',',y);

 end. {*注:本例中,给定的输入数据可以避免分母为 0 或下标越界。 }

输入:9 3 9 4输出:_______________

 

2.Program ex302;

 const

 m:array[0..4] of integer=(2,3,5,7,13);

 var

 i,j:integer;

 t: longint;

 begin

for i:=0 to 4 do

   begin

 t:=1;

 for j:=1 to m[i]-1 do

 t:=t*2;

 t:=(t*2-1)*t;

 write (t,' ');

   end;

 writeln;

end.

输出:____________________

 

3.Program ex303;

 Const

 NN=7;

Type

 Arr1=array[0..30] of char;

 var

s:arr1;

 k,p:integer;

Function fun(s:arr1; a:char;n:integer):integer;

 var

   j:integer;

 begin

   j:=n;

   while (a<s[j])and(j>0) do dec(j);

   fun:=j;

 end;

begin

for k:=1 to NN do

 s[k]:=chr(ord('A')+2*k+1);

 k:=fun(s,'M',NN);

 writeln(k);

end.

输出:_____________

 

4.program ex304;

var

 x,x2:longint;

procedure digit(n,m:longint);

 var n2:integer;

 begin

   if(m>0) then

 begin

   n2:=n mod 10;

   write(n2:2);

   if(m>1) then digit(n div 10,m div 10);

   n2:=n mod 10;

   write(n2:2);

 end;

 end;

begin

  writeln('Input a number:');

   readln(x);

 x2:=1;

 while(x2<x) do x2:=x2*10;

 x2:=x2 div 10;

 digit(x,x2);

 writeln;

end.

输入:9734526

输出:______________________________

 

posted on 2008-12-04 19:07  sandboy  阅读(130)  评论(0)    收藏  举报