Решить задачи с помощью Паскаля: 1. Заполнить массив из 10 частей
Решить задачи с подмогою Паскаля:
1. Заполнить массив из 10 частей случайными числами в промежутке [0..100] и отсортировать его по заключительной цифре.
2. Заполнить массив из 10 элементов случайными числами в промежутке [0..100] и отсортировать первую половину по возрастанию, а вторую- по убыванию. Тут решать лучше способом выбора.
2 ответа
Грядов
Леонид
Var i,j:integer;
mas:array [1..10] of integer;
begin
randomize;
for i:= 1 to 10 do
mas[i]:=random(101);
for j:=1 to 10-1 do
for i:=1 to 10-j do
if mas[i] mod 10 gt; mas[i+1] mod 10 then
swap(mas[i],mas[i+1]);
for i:=1 to 10 do
writeln(mas[i]);
end.
2)
var a:array[1..10] of Integer;
i,j:Integer;
begin
randomize;
for i:=1 to 10 do
a[ i]:=random(101);
for i:=1 to 4 do
for j:=i+1 to 5 do
if a[ i] gt; a[ j] then
swap(a[i],a[j]);
for i:=5 to 9 do
for j:=i+1 to 10 do
if a[ i] lt; a[ j] then
swap(a[i],a[j]);;
for i:=1 to 10 do
write(a[ i],' ');
end.
mas:array [1..10] of integer;
begin
randomize;
for i:= 1 to 10 do
mas[i]:=random(101);
for j:=1 to 10-1 do
for i:=1 to 10-j do
if mas[i] mod 10 gt; mas[i+1] mod 10 then
swap(mas[i],mas[i+1]);
for i:=1 to 10 do
writeln(mas[i]);
end.
2)
var a:array[1..10] of Integer;
i,j:Integer;
begin
randomize;
for i:=1 to 10 do
a[ i]:=random(101);
for i:=1 to 4 do
for j:=i+1 to 5 do
if a[ i] gt; a[ j] then
swap(a[i],a[j]);
for i:=5 to 9 do
for j:=i+1 to 10 do
if a[ i] lt; a[ j] then
swap(a[i],a[j]);;
for i:=1 to 10 do
write(a[ i],' ');
end.
Владислав
2) Сортирую не методом выбора, а пузырьковым способом, т.к. мне безызвестна формулировка "способ выбора"
program z1;
var
mas:array[1..10] of Integer;
m,n,temp:integer;
begin
randomize;
for i:=1 to 10 do
begin
mas[i]:=random(100);
end;
for i:=1 to 4 do if mas[i]gt;mas[i+1] then
begin
temp:=mas[i+1];
mas[i+1]:=mas[i];
mas[i]:=temp;
end;
for i:=6 to 9 do if mas[i]lt;mas[i+1] then
begin
temp:=mas[i+1];
mas[i+1]:=mas[i];
mas[i]:=temp;
end;
end.
Если нужен еще и вывод на экран - то дописываете перед end. следующее: for i:=1 to 10 do writeln(mas[i])
Насчет первого. Мне непонятна формулировка "отсортировать по последней цифре"
program z1;
var
mas:array[1..10] of Integer;
m,n,temp:integer;
begin
randomize;
for i:=1 to 10 do
begin
mas[i]:=random(100);
end;
for i:=1 to 4 do if mas[i]gt;mas[i+1] then
begin
temp:=mas[i+1];
mas[i+1]:=mas[i];
mas[i]:=temp;
end;
for i:=6 to 9 do if mas[i]lt;mas[i+1] then
begin
temp:=mas[i+1];
mas[i+1]:=mas[i];
mas[i]:=temp;
end;
end.
Если нужен еще и вывод на экран - то дописываете перед end. следующее: for i:=1 to 10 do writeln(mas[i])
Насчет первого. Мне непонятна формулировка "отсортировать по последней цифре"
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Игорь 14 лет назад был на 8 лет моложе, чем его
Математика.
Два тела массами m1 и m2 находящие на расстоянии R друг
Физика.
В сосуде 4целых одна пятая литр воды что бы заполнить сосуд
Математика.
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
Облако тегов