a: array [1..20] of integer; {объявляем целочисленный массив на 20 элементов}
i, min, t, m: integer; {i - счетчик, min - минимум, t, m - временные переменные}
begin
{рандом 20 чисел в диапазоне [-20;12]}
randomize;
for i:=1 to 20 do
a[i]:=random(33)-20;
min:=a[1]; //присваиваем минимуму первый элемент.
{цикл начинается с 2, чтобы не делать лишнюю итерацию}
for i:=2 to 20 do
begin
{если минимум больше текущего значения элемента массива, то минимуму присваивается это значение и запоминаем его индекс, чтобы в дальнейшем поменять минимальный элемент с последним.}
Язык: Pascal.
var
a: array [1..20] of integer; {объявляем целочисленный массив на 20 элементов}
i, min, t, m: integer; {i - счетчик, min - минимум, t, m - временные переменные}
begin
{рандом 20 чисел в диапазоне [-20;12]}
randomize;
for i:=1 to 20 do
a[i]:=random(33)-20;
min:=a[1]; //присваиваем минимуму первый элемент.
{цикл начинается с 2, чтобы не делать лишнюю итерацию}
for i:=2 to 20 do
begin
{если минимум больше текущего значения элемента массива, то минимуму присваивается это значение и запоминаем его индекс, чтобы в дальнейшем поменять минимальный элемент с последним.}
if min > a[i] then
begin
min:=a[i];
m:=i;
end;
end;
{выводим старый массив}
Writeln('Старый массив:');
for i:=1 to 20 do
writeln(a[i]);
{меняем местами последний элемент с минимальным}
t:=a[20];
a[20]:=min;
a[m]:= t;
{выводим новый массив}
Writeln('Новый массив:');
for i:=1 to 20 do
writeln(a[i]);
end.
1-И, 2-Н, 3-Ф, 4-О, 5-Р, 6-М, 7-А, 8-Т, 9-И, 10-К, 11-А.
Перепишем алгоритм, раскрывая циклы и подставляя значения.
m := 10
b := Извлечь('ИНФОРМАТИКА', 10) 'K'⇒b
k:=4
с := Извлечь('ИНФОРМАТИКА', 4) 'O'⇒c
b := Склеить(b, с) 'KO'⇒b
k:=5
с := Извлечь('ИНФОРМАТИКА', 5) 'Р'⇒c
b := Склеить(b, с) 'KOР'⇒b
k:=1
с := Извлечь('ИНФОРМАТИКА', 1) 'И'⇒c
b := Склеить(b, с) 'KОРИ'⇒b
k:=2
с := Извлечь('ИНФОРМАТИКА', 2) 'Н'⇒c
b := Склеить(b, с) 'KОРИН'⇒b
k:=3
с := Извлечь('ИНФОРМАТИКА', 3) 'Ф'⇒c
b := Склеить(b, с) 'KОРИНФ'⇒b
Переменная b примет значение строки 'KОРИНФ'