Добавил ещё команду печати списка найденных троек, а не только их количества (строка writeln('(',a,', ',b,', ',c,') '); ).
16 = 2⁴ ⇒ 4 бита на пиксель
2×256×256×4 = 2¹×2⁸×2⁸×2² = 2¹⁹ бит
2¹⁹/(1024×8) = 2¹⁹/2¹⁰×2³ = 2¹⁹⁻¹³ = 2⁶ Кбайт = 64 Кбайт
//Видимо, это одна задача, так как "изменения" во второй не указаны
//Pascal ABC.NET v3.1 сборка 1172
Const
n=20;
Var
ar:array[1..n] of integer;
i:integer;
begin
randomize;
writeln('First array:');
for i:=1 to n do
begin
ar[i]:=random(10)-3;
write(ar[i]:4);
if ar[i]>0 then ar[i]:=ar[i]*2 else ar[i]:=0;
end;
writeln;
writeln('Final array:');
for i:=1 to n do
write(ar[i]:4);
end.
Пример работы программы:
First array: 2 -3 5 6 -3 -3 1 -2 -3 1 3 -3 4 -3 1 -1 6 6 2 3
Final array: 4 0 10 12 0 0 2 0 0 2 6 0 8 0 2 0 12 12 4 6
Program zadacha;
var a,b,c,s,p: integer;
begin
writeln ('Введите три числа');
readln (a,b,c);
s:=a+b+c;
p:=a*b*c;
writeln ('Сумма равна ',s);
writeln ('Произведение равно ',p);
end.