Программа:
Pascal:
№1)
var
arr: array[1..30] of integer;
i, pr: integer;
begin
// генерация массива из 30 рандомных чисел от -100 до 100
for i := 1 to 30 do arr[i] := random(-100, 100);
writeln(arr); // вывод массива
pr := 1;
for i := 1 to 30 do if (arr[i] mod 2 = 0) and (arr[i] mod 3 = 0) then pr := pr * arr[i];
pr.Print();
end.
№2)
var
arr: array[1..30] of integer;
i, s: integer;
begin
// генерация массива из 30 рандомных чисел от -1000 до 1000
for i := 1 to 30 do arr[i] := random(-1000, 1000);
writeln(arr); // вывод массива
s := 0;
for i := 1 to 30 do if (arr[i] >= 100) and (arr[i] < 1000) then begin
while arr[i] > 0 do begin
s := s + arr[i] mod 10;
arr[i] := arr[i] div 10;
end;
end;
s.print();
end.
Сразу два решения.
Объяснение:
Так как тут можно использовать и case и if, вот вам на выбор.
if then elseprogram zadacha;
var a,b,kod:real;
begin
write('Введите значение a: ');readln(a);
write('Введите значение b: ');readln(b);
write('Введите код операции (от 1 до 4): ');readln(kod);
if kod=1 then
kod:=a+b
else
if kod=2 then
kod:=a-b
else
if kod=3 then
kod:=a*b
else
kod:=a/b;
writeln('ответ: ',kod);
end.
case:program zadacha;
var a,b,kod:integer;
begin
write('Введите значение a: ');readln(a);
write('Введите значение b: ');readln(b);
write('Введите код операции (от 1 до 4): ');readln(kod);
case kod of
1:kod:=a+b;
2:kod:=a-b;
3:kod:=a*b;
4:kod:=a div b;
end;
writeln('ответ: ',kod);
end.