Дан целочисленный массив размера N, заполненный целыми числами не превышающими 104....

0 голосов
80 просмотров

Дан целочисленный массив размера N, заполненный целыми числами не превышающими 104. Необходимо получить два новых массива: в первом массиве должны быть собраны только четные числа, а во втором - нечетные числа. Порядок следования элементов в новых массивах не нарушать.
Формат ввода

В первой строке входного файла записано целое число N - размер массива (1 ⩽ N ⩽ 1000). Во второй строке записано N целых чисел через пробел, не превышающих 104.
Формат вывода


Информатика (20 баллов) | 80 просмотров
0

язык?

0

Паскаль

Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.2, сборка 1374 от 10.01.2017
// Внимание! Если программа не работает, обновите версию!

procedure PrintArr(f:Text; a:array of integer);
begin
  foreach var x in a do Write(f,x,' ');
  Writeln(f)
end;

begin
  var fin:=OpenRead('input.txt');
  var n:=ReadlnInteger(fin);
  var a:=new integer[n];
  for var i:=0 to n-1 do Read(fin,a[i]);
  var fout:=OpenWrite('output.txt');
  fin.Close;
  PrintArr(fout,a);
  var b:=a.Where(x->x.IsEven).ToArray;
  PrintArr(fout,b);
  var c:=a.Where(x->x.IsOdd).ToArray;
  PrintArr(fout,c);
  fout.Close
end.
(150k баллов)