阅读程序作业2来自第11届(2008.10.28)普及组
1. var
a,b : integer;
begin
read(a);
b:=(a*(a*a))+1;
if b mod 3 = 0 then b := b div 3;
if b mod 5 = 0 then b := b div 5;
if b mod 7 = 0 then b := b div 7;
if b mod 9 = 0 then b := b div 9;
if b mod 11 = 0 then b := b div 11;
if b mod 13 = 0 then b := b div 13;
if b mod 15 = 0 then b := b div 15;
writeln((100*a-b) div 2);
end.
输入:12
输出:_____
2.
var
str : string;
i : integer;
begin
str := 'Today-is-terrible!';
for i := 7 to 11 do
if str[i] = '-' then str[i-1] := 'x';
for i := 13 downto 1 do
if str[i] = 't' then str[i+1] := 'e';
writeln(str);
end.
输出:_____
3. var
a,b,c,p,q : integer;
r : array[0..2] of integer;
begin
read(a,b,c);
p := a div b div c;
q := b - c + a + p;
r[0] := a * p div q *q;
r[1] := r[0] * (r[0] - 300);
if (3 * q - p mod 3 <= r[0]) and (r[2] =r[2]) then
r[1] := r[r[0] div p mod 2]
else r[1] := r[r[0] div p mod 2];
writeln(r[0] - r[1]);
end.
输入:100 7 3
输出:_____
4. var
str : string;
len,i,j : integer;
nchr : array[0..25] of integer;
mmin : char;
begin
mmin := 'z';
readln(str); len := length(str);
i := len;
while i>= 2 do begin
if str[i - 1] < str[i] then break; dec(i);
end;
if i = 1 then begin
writeln('No result!'); exit;
end;
for j := 1 to i - 2 do write(str[j]);
fillchar(nchr,sizeof(nchr),0);
for j := i to len do begin
if (str[j] > str[i - 1]) and (str[j] < mmin) then
mmin := str[j];
inc(nchr[ord(str[j]) - ord('a')]);
end;
dec(nchr[ord(mmin) - ord('a')]);
inc(nchr[ord(str[i - 1]) - ord('a')]);
write(mmin);
for i := 0 to 25 do
for j := 1 to nchr[i] do
write(chr(i + ord('a')));
writeln;
end.
输入:zzyzcccbbbaaa
输出:_____
浙公网安备 33010602011771号