Var m : array[0..6] of Integer; i,k,N : Integer; Begin For i:=0 to 6 do m[i]:=0; Readln(N); k:=6; While N>0 do Begin If N>=Power(2,k) then Begin N:=N-Trunc(Power(2,k)); Inc(m[k]); end else Dec(k); end; For i:=0 to 6 do Writeln(Power(2,i),' ',m[i],' шт.'); end.
Еще вариант: Const NN = 7; money : array[1..7] of Integer = (1,2,4,8,16,32,64); Var m : array[1..NN] of Integer; i,k,N : Integer; Begin For i:=1 to NN do m[i]:=0; Readln(N); k:=NN; While N>0 do Begin If N>=money[k] then Begin N:=N-money[k]; Inc(m[k]); end else Dec(k); end; For i:=1 to NN do Writeln(money[i],' ',m[i],' шт.'); end.
const
n = 15;
var
x: array[1..n] of integer;
i, k, t, min: integer;
begin
Randomize;
Writeln('Исходные элементы массива');
min := 1000;
for i := 1 to n do
begin
x[i] := Random(101) - 50;
Write(x[i]:4);
if min > x[i] then begin
min := x[i];
k := i
end
end;
t := x[k]; x[k] := x[1]; x[1] := t;
Writeln;
Writeln('Результирующие элементы массива');
for i := 1 to n do Write(x[i]:4);
Writeln
end.
Исходные элементы массива
-28 -22 -15 3 27 29 34 -29 -49 -37 -19 31 40 -36 4
Результирующие элементы массива
-49 -22 -15 3 27 29 34 -29 -28 -37 -19 31 40 -36 4
Объяснение: