1)
var
D: array[1..20] of integer;
i, min: integer;
begin
min := 100; // минимальное значение
for i:=1 to 20 do
begin
D[i] := random(100);
if D[i] < min then
min := D[i];
end;
write(min);
end.
2)
var
B: array[1..30] of integer;
i, sum, count: integer;
srAr: real;
begin
count := 0; // количество чисел больших среднего арифметического
sum := 0; // сумма всех чисел массива
for i := 1 to 30 do
begin
B[i]:= random(30) + 20;
sum := sum + B[i];
end;
srAr := sum / 30; // среднее арифметическое
for i := 1 to 30 do
if B[i] > srAr then
count := count + 1;
write(count);
end.
21222
Объяснение:
1.Анализируем: если число 10 возвести в квадрат, получим 100, а чтобы из 100 получить 58 нужно отнимать двойку больше 20 раз. Делаем вывод, что первая команда не возведение в степень 2, а вычитание. Значит первая команда - 2.
2. После вычитания двойки получили 8. Если 8 возвести в квадрат, получим 64. А из 64 можно получить 58 вычитанием двойки 3 раза. Значит вторая команда - 1.
3. Вычтем из 64 двойку, получим 62. Третья команда - 2.
4. Вычтем из 62 двойку, получим 60. Четвёртая команда - 2.
5. Вычтем из 60 двойку, получим 58. Пятая команда - 2. Конец.