Предмет: Информатика,
автор: Wellcome
1.Написать программу, которая проверяет, образуют ли элементы введенного с клавиатуры массива неубывающую последовательность.
2.Вставить число А перед всеми элементами, большими А, а число В - после всех элементов, меньших его.
3.Дана матрица Ф(6х7), заполненный случайным образом. Заменить максимальный элемент каждой строки на противоположный по знаку.
4. Дан двумерный массив. Найти сумму элементов его главной диагонали и поизведение элементов побочной диагонали. Результат занести в одномерный массив.
Пожалуйста, помогите, очень нужно! Хотя бы некоторые решите. Второй день не могу сделать! Тема одномерных и двумерных массивов.
Ответы
Автор ответа:
0
НАПИСАНО НА ПАСКАЛЕ!
2)
program fofgogjoj;
const nmax=100;
var
m:array[1..nmax] of integer;
n,i,j,k:byte;
a,b,x:integer;
begin
randomize;
repeat Write('Размер массива до ',nmax div 3,' n=');
readln(n);
until n in [1..nmax div 3];
Writeln('Исходный массив:');
for i:=1 to n do
begin
m[i]:=random(50);
Write(m[i],' ');
end;
Writeln;
Writeln;
Write('Введите число для вставки перед a=');
Readln(a);
i:=1;
k:=0;
while i<=n do
begin
if m[i]>a then
begin
n:=n+1;
k:=1;
for j:=n downto i+1 do
m[j]:=m[j-1];
m[i]:=a;
i:=i+2; end
else i:=i+1;
end;
if k=0 then
Writeln('Элементов больше ',a,' нет')
else
begin
Writeln('Массив после вставки числа ',a,' перед большими ',a);
for i:=1 to n do
Write(m[i],' ');
Writeln;
Writeln;
Write('Введите число для вставки после b=');
Readln(b);
i:=1;k:=0;
while i<=n do
if m[i]<b then
begin
n:=n+1;
k:=1;
for j:=n downto i+2 do
m[j]:=m[j-1];
m[i+1]:=b;
i:=i+2; end
else
i:=i+1;
if k=0 then
Writeln('Элементов меньше ',b,' нет')
else
begin
Writeln('Массив после вставки числа ',b,' после меньших ',b);
for i:=1 to n do
Write(m[i],' ');
end;
end;
readln
end.
2)
program fofgogjoj;
const nmax=100;
var
m:array[1..nmax] of integer;
n,i,j,k:byte;
a,b,x:integer;
begin
randomize;
repeat Write('Размер массива до ',nmax div 3,' n=');
readln(n);
until n in [1..nmax div 3];
Writeln('Исходный массив:');
for i:=1 to n do
begin
m[i]:=random(50);
Write(m[i],' ');
end;
Writeln;
Writeln;
Write('Введите число для вставки перед a=');
Readln(a);
i:=1;
k:=0;
while i<=n do
begin
if m[i]>a then
begin
n:=n+1;
k:=1;
for j:=n downto i+1 do
m[j]:=m[j-1];
m[i]:=a;
i:=i+2; end
else i:=i+1;
end;
if k=0 then
Writeln('Элементов больше ',a,' нет')
else
begin
Writeln('Массив после вставки числа ',a,' перед большими ',a);
for i:=1 to n do
Write(m[i],' ');
Writeln;
Writeln;
Write('Введите число для вставки после b=');
Readln(b);
i:=1;k:=0;
while i<=n do
if m[i]<b then
begin
n:=n+1;
k:=1;
for j:=n downto i+2 do
m[j]:=m[j-1];
m[i+1]:=b;
i:=i+2; end
else
i:=i+1;
if k=0 then
Writeln('Элементов меньше ',b,' нет')
else
begin
Writeln('Массив после вставки числа ',b,' после меньших ',b);
for i:=1 to n do
Write(m[i],' ');
end;
end;
readln
end.
Похожие вопросы
Предмет: Алгебра,
автор: yanchukmiroslav
Предмет: Қазақ тiлi,
автор: elnurasavethan
Предмет: Литература,
автор: Ann3624
Предмет: Химия,
автор: alkolesnikova9