Другие языки программирования и технологии
Помогите пожалуйста! Необходимо записать в паскале как можно проще для школьника. Срочно!!!
Дан массив. Сформировать три массива, включив в первый положительные чётные элементы массива, во второй - положительные нечётные, в третий - все остальные.
Школа уже не учится вроде или экзамен сдаёте :)
Что-то такое на память без проверки
Если дан массив mas
var
a[1..10] array of Integer = (0,-1,2,3,-4,5,-6,7,8,9);
a1[1..10] array of Integer;
a2[1..10] array of Integer;
a3[1..10] array of Integer;
ra1, ra2, ra3 : integer;
n : Integer;
begin
ra1:=0; ra2:=0; ra3:=0;
for n:=1 to 10 do
begin
if (a[n]>=0) and (a[n] mod 2 = 0) then
begin
Inc(ra1);
a1[ra1] := a[n];
end
else if (a[n]>=0) and (a[n] mod 2 = 1) then
begin
Inc(ra2);
a2[ra2] := a[n];
end
else
begin
Inc(ra3);
a3[ra3] := a[n];
end;
end;
end.
Что-то такое на память без проверки
Если дан массив mas
var
a[1..10] array of Integer = (0,-1,2,3,-4,5,-6,7,8,9);
a1[1..10] array of Integer;
a2[1..10] array of Integer;
a3[1..10] array of Integer;
ra1, ra2, ra3 : integer;
n : Integer;
begin
ra1:=0; ra2:=0; ra3:=0;
for n:=1 to 10 do
begin
if (a[n]>=0) and (a[n] mod 2 = 0) then
begin
Inc(ra1);
a1[ra1] := a[n];
end
else if (a[n]>=0) and (a[n] mod 2 = 1) then
begin
Inc(ra2);
a2[ra2] := a[n];
end
else
begin
Inc(ra3);
a3[ra3] := a[n];
end;
end;
end.
const N=20; {Длина массива}
var
Inp, {исходный массив}
Out1, {массив 1}
Out2, {массив 2}
Out3: {массив 3}
array[1..N] of Integer;
I, {переменная для цикла}
L1, L2, L3: Integer; {длина каждого из результирующих массивов}
begin
for I:=1 to N do
begin
Inp[I]:=0;
Out1[I]:=0; Out2[I]:=0; Out3[I]:=0;
end;
L1:=0; L2:=0; L3:=0;
{Заполняем массив Inp случайными числами}
for I:=1 to N do
Inp[I]:=Random(100)-50;
for I:=1 to N do
if (Inp[I]>=0) then
if not Odd(Inp[I]) then begin L1:=L1+1; Out1[L1]:=Inp[I]; end
else begin L2:=L2+1; Out2[L2]:=Inp[I]; end
else begin L3:=L3+1; Out3[L3]:=Inp[I]; end;
{Вывод массивов}
Write('Массив 1: ');
if L1=0 then Writeln('нет элементов! ') else
for I:=1 to L1 do Write(Out1[I]:3); Writeln;
Write('Массив 2: ');
if L2=0 then Writeln('нет элементов! ') else
for I:=1 to L2 do Write(Out2[I]:3); Writeln;
Write('Массив 3: ');
if L3=0 then Writeln('нет элементов! ') else
for I:=1 to L3 do Write(Out3[I]:3); Writeln;
end.
Программку не тестировал, тут набрал. Если нигде не ошибся, работать будет.
var
Inp, {исходный массив}
Out1, {массив 1}
Out2, {массив 2}
Out3: {массив 3}
array[1..N] of Integer;
I, {переменная для цикла}
L1, L2, L3: Integer; {длина каждого из результирующих массивов}
begin
for I:=1 to N do
begin
Inp[I]:=0;
Out1[I]:=0; Out2[I]:=0; Out3[I]:=0;
end;
L1:=0; L2:=0; L3:=0;
{Заполняем массив Inp случайными числами}
for I:=1 to N do
Inp[I]:=Random(100)-50;
for I:=1 to N do
if (Inp[I]>=0) then
if not Odd(Inp[I]) then begin L1:=L1+1; Out1[L1]:=Inp[I]; end
else begin L2:=L2+1; Out2[L2]:=Inp[I]; end
else begin L3:=L3+1; Out3[L3]:=Inp[I]; end;
{Вывод массивов}
Write('Массив 1: ');
if L1=0 then Writeln('нет элементов! ') else
for I:=1 to L1 do Write(Out1[I]:3); Writeln;
Write('Массив 2: ');
if L2=0 then Writeln('нет элементов! ') else
for I:=1 to L2 do Write(Out2[I]:3); Writeln;
Write('Массив 3: ');
if L3=0 then Writeln('нет элементов! ') else
for I:=1 to L3 do Write(Out3[I]:3); Writeln;
end.
Программку не тестировал, тут набрал. Если нигде не ошибся, работать будет.
В паскале вроде бы нельзя делать динамические массивы.
Похожие вопросы
- Помогите пожалуйста с Заданием по Паскалю!
- Срочно.Помогите пожалуйста написать программу на паскале.
- Помогите пожалуйста создать программу на Паскале. Заранее всем благодарен
- Pascal. Помогите пожалуйста решить задачу в паскале !
- Помогите, пожалуйста, решить задачку на паскале. Заранее благодарна.
- помогите пожалуйста составить программу в паскале
- Программирование на Паскале Помогите, пожалуйста , написать программу на паскале
- Помогите пожалуйста с опросом в паскале
- Помогите пожалуйста написать программу для Паскаля
- Помогите пожалуйста с задачей на Паскаль.