Тема: Массивы
Показать сообщение отдельно
  #1  
Старый 04.11.2011, 14:27
kudim kudim вне форума
Прохожий
 
Регистрация: 04.11.2011
Сообщения: 1
Репутация: 10
По умолчанию Массивы

Задача такая:
Составить программу, которая в матрице K(m,n), m<=10, N<=12 меняет местами строки содержащие максимальное количество четных и нечетных элементов? Если во всех строках это количества одинаковы, то поменять местами первую и последнюю строки матрицы. Вывести исходную и полученную матрицы, найденные количества и номера найденных строк.

Получается только до "если во всех строках это количество одинаково".
Помогите пожалуйста!

Код:
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
  A:array[1..10,1..12] of integer;
  I,J,N,M,Buf,Ichet,Inchet,S:integer;
  C:array[1..12] of integer;
  P:array[1..12] of integer;
begin
Writeln('Vvedita M,N');
Readln(M,n);
Writeln('Vvedite matrizy');
For I:=1 to N do
For J:=1 to M do
begin
Write('a[',i,',',j,']=');
read(a[i,j]);
end;
Writeln('ishodnaya matriza');
For i:=1 to N do
 begin
 For j:=1 to m do
 write(a[i,j],' ');
 writeln;
 writeln;
 end;

   c[i]:=0;
   p[i]:=0;
 For i:=1 to n do
 For j:=1 to m do
  IF  a[i,j] mod 2 = 0 then
  c[i]:=c[i]+1
  else If a[i,j] mod 2 <> 0 then
  P[i]:=p[i]+1;
 Ichet:=1;
 Inchet:=1;
  For I:=1 to m do
  If  I>Ichet then
  Ichet:=I
  else If Inchet<I then
  Inchet:=I;

  s:=0;
  {эта часть проблемная}For I:=1 to N do
  If C[i]=p[i] then
   s:=s+1;

  If s=n then begin
  For I:=1 to N do
  For J:=1 to M do
  begin
  buf:=a[1,j];
  a[1,j]:=a[n,j];
  a[n,j]:=buf;
  end;
  end
  else
  For I:=1 to n do
  For J:=1 to M do
  begin
  Buf:=a[ichet,j];
  a[ichet,j]:=a[inchet,j];
  a[inchet,j]:=buf;
  end;
  readln;
  writeln;
  writeln('Chet');


  For I:=1 to N do
  write(c[i],' ' );
  writeln;
  For I:=1 to N do
  write(p[i],' ' );
  writeln;





  writeln;
  writeln('novaya');
  For i:=1 to n do
 begin
 For j:=1 to m do
 write(a[i,j],' ');
 writeln;
 writeln;
 end;
 readln;

  { TODO -oUser -cConsole Main : Insert code here }
end.
Админ: Пользуемся тегами для оформления кода!
Ответить с цитированием