Во всех программах у меня будет использоваться процедура swap:
procedure swap(a: ^real; b: ^real);
var
t: real;
begin
t := a^;
a^ := b^;
b^ := t;
end;
swap(x,y) - меняет местами значения x и y.
1.
var
A: array[1..100] of real;
i, j, N: integer;
begin
readln(N);
for i := 1 to N do
read(A[i]);
for j := 1 to (N div 2) - 1 do
for i := 1 to (N div 2) - j do
swap(A[i], A[i + 1]);
for j := 1 to (N div 2) - 1 do
for i := (N div 2) + 1 to N - j do
swap(A[i], A[i + 1]);
for i := 1 to N do
writeln(A[i])
end.
2.
var
A: array[1..100] of real;
i, N: integer;
begin
readln(N);
for i := 1 to N do
read(A[i]);
for i := 1 to N - 1 do
swap(A[i], A[i + 1]);
for i := 1 to N do
writeln(A[i])
end.
3.
var
A: array[1..100] of real;
i, N: integer;
begin
readln(N);
for i := 1 to N do
read(A[i]);
for i := N downto 2 do
swap(A[i], A[i - 1]);
for i := 1 to N do
writeln(A[i])
end.
Это слово-Аммиак, но существует множество таких слов.
var a,b,c:integer;
begin
readln(a,b,c);
if((a=b)or(b=c)or(c=a)) then writeln(':)') else writeln(':(')
end.
Program task_1;
var
A, B, C : integer;
begin
read(A);
B := A;
C := 0;
While B <> 0 do
begin
C := C*10 + B mod 10;
B := B div 10
end;
If A=C then
begin
writeln('Число симметрично')
end
else
begin
writeln('Число НЕ симметрично')
end;
end.
При использовании 1024-х цветовой палитры для хранения 1 точки необходимо log(2)1024 = 10 бит.
Для всего изображения - 900*180*10 бит = 900*180*10/8 байт = 202500 байт =
202500/1024 Кбайт ≈ 198 Кбайт