2 Мбайт
но могу ошибаться ((
Uses Crt;
const
n=10;
var
a,b:array[1..n] of integer;
i,k,t:integer;
begin
ClrScr;
Randomize;
for i:=1 to n do begin
a[i]:=Random(50);
Write(a[i],' ')
end;
Writeln;
for i:=1 to n do begin
b[i]:=Random(50);
Write(b[i],' ')
end;
Writeln;
Write('k t='); Read(k,t);
for i:=1 to n do begin
if a[i]>t then a[i]:=a[i]+4;
Write(a[i],' ')
end;
Writeln;
for i:=1 to n do begin
if b[i]>10*k then b[i]:=b[i]+k;
Write(b[i],' ')
end;
Readkey
end.
<u><em>Тестовое решение:</em></u>
1 6 23 12 47 1 44 24 6 18
31 30 30 29 0 3 43 32 46 21
k t=2 20
1 6 27 12 51 1 48 28 6 18
33 32 32 31 0 3 45 34 48 23
Program dlksjijh;
var
A: array[1..40] of integer;
i: integer;
begin
randomize;
writeln('исходные данные:');
for i := 1 to 40 do
begin
A[i] := Random(21);
write(A[i], ' ');
end;
writeln;
writeln('преобрезованный массив:');
for i := 1 to 40 do
begin
if A[i] mod 2 = 0 then
A[i] := Round(A[i]/2)
else
A[i] := A[i] * 3;
write(A[i], ' ');
end;
end.
Имена математических операций - с прописной буквы, и, поскольку есть Random(), то самой первой строкой программы должна быть команда randomize, то есть активация генератора случайных чисел.
У меня работает.
Чтобы найти число разрядов числа находишь логарифм по основанию 10 от данного числа, обрезаешь целую часть и прибавляешь единицу.
trunc(log10(a)+1)
У трёхзначных чисел это значение будет равно трём.
// составьте программу нахождения в массиве а( 10) индексов элементов значения которых не кратны 4
var i,x: word;
a : array [1..10] of integer;
Begin
writeln ('Введите 10 целых чисел');
for i:=1 to 10 do
Begin
write (i,' число ');
readln (a[i]);
end;
writeln;
for i:=1 to 10 do
Begin
x:=a[i] mod 4;
if x<>0 then writeln (i,' элемент таблицы не кратен 4');
end;
<span>End.</span>