Предмет: Информатика,
автор: vladikantimag
Необходимо написать программу на Паскале.
Условие задачи:
Составить программу формирования двумерного массива из предложенного одномерного так, чтобы первая строка нового массива содержала четные по номеру элементы исходящего массива, а вторая - нечетные. Предусмотреть случай нечетного количества элементов массива.
Например, если мы вводим такой одномерный массив 2 5 1 6 9 2, то должно вывести так:
5 6 2
2 1 9
А если количество элементов одномерного массива нечетное, например 2 5 1 6 9 2 4 то так:
5 6 2 0
2 1 9 4
Помогите пожалуйста, заранее благодарен!
Ответы
Автор ответа:
0
var
a:array[1..50] of integer;
b:array[1..2,1..25] of integer;
i,j,n:integer;
begin
writeln('Вводите элементы массива, конец ввода по значению 7777');
n:=0;
repeat
read(i);
if i<>7777 then begin
n:=n+1;
a[n]:=i
end
until i=7777;
if n mod 2<>0 then begin
n:=n+1;
a[n]:=0
end;
for j:=1 to n div 2 do begin
b[2,j]:=a[2*j-1];
b[1,j]:=a[2*j]
end;
writeln;
for i:=1 to 2 do begin
for j:=1 to n div 2 do write(b[i,j]:5);
writeln
end
end.
Тестовый прогон:
Вводите элементы массива, конец ввода по значению 7777
2 5 1 6 9 2 7777
5 6 2
2 1 9
Вводите элементы массива, конец ввода по значению 7777
2 5 1 6 9 2 4 7777
5 6 2 0
2 1 9 4
a:array[1..50] of integer;
b:array[1..2,1..25] of integer;
i,j,n:integer;
begin
writeln('Вводите элементы массива, конец ввода по значению 7777');
n:=0;
repeat
read(i);
if i<>7777 then begin
n:=n+1;
a[n]:=i
end
until i=7777;
if n mod 2<>0 then begin
n:=n+1;
a[n]:=0
end;
for j:=1 to n div 2 do begin
b[2,j]:=a[2*j-1];
b[1,j]:=a[2*j]
end;
writeln;
for i:=1 to 2 do begin
for j:=1 to n div 2 do write(b[i,j]:5);
writeln
end
end.
Тестовый прогон:
Вводите элементы массива, конец ввода по значению 7777
2 5 1 6 9 2 7777
5 6 2
2 1 9
Вводите элементы массива, конец ввода по значению 7777
2 5 1 6 9 2 4 7777
5 6 2 0
2 1 9 4
Автор ответа:
0
Ну если тебя не затруднит, можешь все таки сделать, так как мне нужно? Сори, что так напрягаю)
Автор ответа:
0
И потом, в программе ввод - не главное. Главное - реализация алгоритма, и если ты не понял, как работает сам алгоритм решения задачи, то ввод в цикле for тебя не спасет.
Автор ответа:
0
Хорошо, что я не сделал на процедурах... тогда бы точно было весело. Кстати, многие просят именно на процедурах делать.
Похожие вопросы
Предмет: История,
автор: tursunzanovazulfia
Предмет: Русский язык,
автор: Аноним
Предмет: Математика,
автор: Аноним
Предмет: Алгебра,
автор: марго456