Пожалуйста, помогите составить программу в паскале. В массиве X(N) каждый элемент равен 0, 1 или 2. Переставить элементы массива так, чтобы сначала
10-11 класс
|
располагались все единицы, затем все двойки и, наконец, все нули (дополнительного массива не заводить).
const
n=10;
var
a:array[1..n]of integer;
i,j,buf:integer;
begin
for i:=1 to n do
begin
a[i]:=random(3);
write(a[i]:4);
end;
{сортирую по возрастанию}
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]<a[j]then
begin
buf:=a[i];
a[i]:=a[j];
a[j]:=buf;
end;
{пересылаю нули в конец масива}
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]=0 then
begin
buf:=a[i];
a[i]:=a[j];
a[j]:=buf;
end;
for i:=1 to n do
write(a[i]:4);
end.
Другие вопросы из категории
Читайте также
1. Напишите программу формирования и вывода массива размером 6x3, каждые три последовательных элемента в строке которого составлены по следующему правилу:
1-й — равен случайному числу;
2-й — равен целой части квадратного корня из предыду щего элемента;
3-й-равен сумме двух предыдущих элементов.
ракета запускается с земли со скоростью V(км час) в направлении движения земли по орбите вокруг солнца. составить программу,определяющую результат запуска ракета в зависимости от скорости V.
Известно,что при V16,4 ракета покинет солнечную систему.
Имеется
массив А из N произвольных чисел (А(N)), среди которых есть положительные, отрицательные и
равные нулю. Используя оператор цикла, составить программу, выполняющую задачу:
арифметическое и количество всех положительных элементов массива))
Помогите составить программу в Паскале, буду благодарна:)
увеличить в 3 раза. Вывести на экран монитора первоначальный и преобразованный массивы в строчку.
Пожалуйста, помогите написать программу в Паскале.