Минимальный элемент массива
Дан массив A из N целых элементов. Требуется найти и вывести минимальный элемент
массива, вывести исходный массив.
Input
Со стандартного устройства ввода в первой строке вводится число N (1 <= N <=
1000)—количество элементов массива A. Во второй строке через пробел вводятся N чисел,
элементы массива A (-1000 <= A i <= 1000).
Output
В первой строке выведите минимальный элемент массива A.
Во второй строке выведите элементы исходного массива A, выводя пробел после
каждого элемента.
Sample Input
9
5 4 -6 0 -3 -2 2 0 3
Sample Output
-6
5 4 -6 0 -3 -2 2 0 3
Нужно решить на языке C++
var
a : array[1..10] of word;
max : word;
begin
randomize;
for I : byte := 1 to 10 do
a[i] := random(1, 60000);
max := 0;
for I : byte := 1 to 10 do
if a[i] > max then max := a[i];
writeln(max*3);
end.
Объяснение:
Добавлю и объяснение. Алгоритм заполняет целочисленный массив из десяти элементов случайными числами. Возможны диапазон числе: от 1 до 60000. Затем в следующем цикле выискивается максимальное число, которое выдал генератор случайных чисел. В строке writeln выводится значение этого числа умноженное на три.
const n=10;
var a:array [1..n] of integer;
i,j,v:integer;
begin
write(' Исходный массив: ');
for i:=1 to n do
begin
a[i]:=random(20);
write(a[i]:4)
end;
writeln;
for i:=1 to n do
for j:=1 to n-i do
if (a[j]<a[j+1]) and ((a[j]>9) or (a[j+1]>9)) then
begin
v:=a[j];
a[j]:=a[j+1];
a[j+1]:=v
end;
for i:=1 to n do
for j:=1 to n-i do
if (a[j]>a[j+1]) and ((a[j]<=9) or (a[j+1]<=9)) then
begin
v:=a[j];
a[j]:=a[j+1];
a[j+1]:=v
end;
write('Отсортированный массив: ');
for i:=1 to n do write(a[i]:4);
end.
Объяснение:
Сначала сортируем числа больше 9, потом числа меньше 10.