Первый условно назовем "я - компьютер". Вы превращаетесь в Исполнителя и с железной тупостью выполняете алгоритм - инструкцию за инструкцией, каждый раз выписывая на бумаге результат. Если у Вас много времени и Вы, как и компьютер, не делаете ошибок, то рано или поздно нужный результат будет получен.
Второй назовем "я - человек". Вы напрягаете свой мозг и определяете, что именно делает алгоритм, после чего проводите нужные вычисления. В этом варианте обычно к результату приходят быстрее.
Попробуем второй путь.
Вначале полагаем, что s=0, n=12. Далее следует цикл, в котором i последовательно принимает значения 1, 2, ... 10. s=s+"что-то" говорит нам о том, что в s накапливается некая сумма, для чего s предварительно обнулялось. А что именно накапливается? n-i. При проходах по циклу это будут значения n-1, n-2, ... n-10. У нас n=12, поэтому в s будет накапливаться сумма 11+10+9+...+2. Или, это удобнее записать как 2+3+4+...+9+10+11. Это сумма арифметической прогрессии из 10 членов и ее можно найти по формуле суммы арифметической прогрессии. Если лениво вспоминать формулу, можно просто сложить эти числа. А можно поступить, как поступил в свое время Гаусс: заметить, что 2+11=13, 3+10=13, 4+9=13 и таких пар 5. И найти результат 5×13=65. Такая вот победа мозга над рутиной))) ответ: 65
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.