Очень задание по информатике, от задание на языке фрипаскаль
у нас имеется строка состоящая из чисел отсортированных по убыванию и каждое число отделено от следующего двумя пробелами(9 5 6 7 ) на конце тоже два пробела
нужно ввести с клавиатуры цифру и вставить ее в строку сохраняя порядок убывания
Код на C++ (компилятор msvc, но на g++ тоже будет работать, если надо)
#include <iostream>
using namespace std;
int main()
{
int left, right;
cin >> left >> right;
if (left > right)
{
swap(left, right);
};
for (int i = left; i <= right; i++)
{
cout << i * i << " ";
};
cout << endl;
return 0;
}
Объяснение:
Тут выводятся квадраты чисел в диапазоне [left;right]. И если так получилось, что left больше right, то мы меняем значения местами
program v5;
var a:array[1..15]of integer;
i,j,n,buf:integer;
begin
randomize;
for i:=1 to 15 do
begin
a[i]:=random(70)-20;
write(a[i], ' | ');
end;
writeln; writeln('Измененный массив: ');
for i:= 1 to 15 do
begin
if a[i] mod 5=0 then
begin
a[i]:= 0;
write(a[i], ' | ')
end
else
write(a[i], ' | ');
end;
for i:=1 to 15-1 do
for j:=1 to 15-i do
begin
if (a[j] > a[j+1]) then
begin
buf := a[j];
a[j] := a[j+1];
a[j+1] := buf;
end;
end;
writeln; writeln('Массив после рассортировки по возрастанию:');
for i:=1 to 15 do
write(a[i], ' | ');
end.