массивы

За вознаграждение или нахаляву (если повезёт)

Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill

Ответить
krg49
Сообщения: 3
Зарегистрирован: 30 сен 2013, 22:39

30 сен 2013, 22:48

у меня в консоле, нужно в делфи, я новичок, умею тока в консоле( а в делфи переделать ну никак не получается пжл помогите((
program Project2;

{$APPTYPE CONSOLE}

uses
SysUtils;

Var a:array[1..10,1..10] of byte;
summ:array[1..10] of byte;
i,j,m,n,max:integer;
SummChet, SummNechet:integer;
begin
writeln('vvedite razmernost matrici mxn: ');
write('m= '); readln(m);
write('n= '); readln(n);
writeln('vvedite elementi matr: ');
for i:=1 to m do
for j:=1 to n do begin
write('a[',i,',',j,']= ');
readln(a[i,j]);
end;
writeln('matrica');
for i:=1 to m do begin
for j:=1 to n do begin
write(a[i,j]:3);
summ:=summ+a[i,j];
end;
writeln;
end;
writeln('summa elementov kajdoi stroki: ');
max:=summ[1];
for i:=1 to m do
begin
writeln(i,' stoka: ',summ);
if summ>max then max:=summ;
end;
writeln('max summa:',max);
writeln('pomenyali pervuyu stoku s poslednei: ');
for i := 1 to n do
begin
j := a[1, i];
a[1, i] := a[m, i];
a[m, i] := j;
end;
for i := 1 to m do
begin
for j := 1 to n do
write(a[i, j]:6);
writeln;
end;
// Считаем сумму четных/нечетных элементов
writeln('summa elementov 4etnih i ne4etnih 4isel: ');
SummChet := 0;
SummNechet := 0;
for i := 1 to m do
for j := 1 to n do
begin
if (a[i, j] mod 2 = 0) then
inc(SummChet, a[i, j])
else
inc(SummNechet, a[i, j]);
end;
writeln('summa chetnih: ', SummChet:6);
writeln('summa nechetnih: ', SummNechet:6);
write('vihod-enter');
readln;
end.
krg49
Сообщения: 3
Зарегистрирован: 30 сен 2013, 22:39

30 сен 2013, 23:50

вот на делфи, кое как получилось, кто нидь знает как сделать чтобы на листбоксе размерности матрицы отображались как сама матрица
напр так:
1 2 3
4 5 6
7 8 9
а выводится у меня так:
1
2
3

4
5
6

7
8
9 помогите) и спасибо )))
и чтоб сраазу в коде делфи было это, а то трудно осуществить код на делфи

Код: Выделить всё

unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;

type

  { TForm1 }

  TForm1 = class(TForm)
    ListBox1: TListBox;
    procedure FormCreate(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
Var a:array[1..10,1..10] of byte;
      summ:array[1..10] of byte;
      i,j,m,n,max:integer;
      SummChet, SummNechet:integer;
begin
  writeln('vvedite razmernost matrici mxn: ');
  m:=StrToInt(InputBox('Ввод','m= ',''));
  n:=StrToInt(InputBox('Ввод','n= ',''));
  for i:=1 to m do
     for j:=1 to n do begin
        a[i,j]:=StrToInt(InputBox('Ввод','a['+IntToStr(i)+','+IntToStr(j)+']= ',''));
     end;
    for i:=1 to m do begin
    for j:=1 to n do begin
         ListBox1.AddItem(IntToStr(a[i,j]),nil);
          summ[i]:=summ[i]+a[i,j];
    end;
    ListBox1.AddItem('',nil);
   end;
   ListBox1.AddItem('summa elementov kajdoi stroki: ',nil);
   max:=summ[1];
   for i:=1 to m do
   begin
        ListBox1.AddItem(IntToStr(i)+' stoka: '+IntToStr(summ[i]),nil);
        if summ[i]>max then max:=summ[i];
        end;
   ListBox1.AddItem('max summa:'+IntToStr(max),nil);
   ListBox1.AddItem('pomenyali pervuyu stoku s poslednei: ',nil);
   for i := 1 to n do
  begin
    j := a[1, i];
    a[1, i] := a[m, i];
    a[m, i] := j;
  end;
  for i := 1 to m do
  begin
    for j := 1 to n do
      ListBox1.AddItem(IntToStr(a[i,j]),nil);
    ListBox1.AddItem('',nil);
  end;
  // Считаем сумму четных/нечетных элементов
  ListBox1.AddItem('summa elementov 4etnih i ne4etnih 4isel: ',nil);
  SummChet := 0;
  SummNechet := 0;
  for i := 1 to m do
  for j := 1 to n do
  begin
  if (a[i, j] mod 2 = 0) then
  inc(SummChet, a[i, j])
  else
  inc(SummNechet, a[i, j]);
    end;
   ListBox1.AddItem('summa chetnih: '+IntToStr(SummChet),nil);
   ListBox1.AddItem('summa nechetnih: '+IntToStr(SummNechet),nil);
 ListBox1.AddItem(IntToStr(i)+' stoka: '+IntToStr(summ[i]),nil);
end;

end.
Ответить