Язык: 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.
Поделитесь своими знаниями, ответьте на вопрос:
Хэлп , написать программу на языке CSharp (C#) Условия: Программа должна содержать минимум два пользовательских класса (или структуры В классах не должно быть статических полей и методов. В консоли должно быть меню выбора варианта, с возможностью продолжения и выхода (например, по клавишам y/n или какому-нибудь другому условию). Задача : Имеются регистрационные данные 8 пользователей (фамилия, имя и год рождения). Один из пользователей - администратор). При успешном входе пользователя программа выводит сообщение «Добрый день, <имя пользователя>», а если данных пользователя нет в системе то «Ошибка авторизации». Администратор имеет возможность список, а также удалять пользователей в ходе работы программы. При удалении необходимо ввести номер пользователя. Номер пользователя программа присваивает автоматически и отображает его в списке. Обращаю внимание на то, что при удалении пользователя, не являющегося последним, программа циклически сдвигает пользователей с большими номерами на и уменьшает размерность массива на единицу. Должна быть предусмотрена возможность сменить пользователя не завершая работу программы.
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ОРИНФ'