Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.10.2011, 15:32   #1
Fri
Пользователь
 
Регистрация: 24.04.2011
Сообщений: 26
Подмигивание Найти сумму по столбцам и определить максимум.

Добрый день. Хочу найти сумму по столбцам и определить из этой суммы максимум. Я заношу сумму в одномерный массив и там уже ищу max элемент, но у меня почему-то выводит только одни нули. Вот код:
Код:
type
  matr=array[1..6,1..5] of Integer; //Исходная матрица
  mas=array[1..10] of Integer; //Массив куда буду записывать сумму

var
 n,m,i,j:Integer;
 max:Integer;
 A:matr;
 S:mas;
 procedure SUMA( n,m:Integer; A:matr; var S:mas); //Процедура нахождения суммы по столбцам
 var i,j:Integer;
 begin
   for j:=0 to m do
   S[j]:=0;
   for i:=0 to n do

   S[j]:=S[j]+A[i][j];
 end;
begin
 n:=StrToInt(Edit1.Text);
  m:=StrToInt(Edit2.Text);
  for i:=0 to n do
  for j:=0 to m do
  A[i][j]:=StrToIntDef(Trim(StringGrid1.Cells[j,i]),0);
  SUMA(n,m,A,S);
  for j:=0 to m do
  StringGrid2.Cells[j+1,0]:=IntToStr(S[j]); //Передаю вывод массива в другой СтрингГрид
  max:=S[1]; // Дальше нахожу максимум уже из одномерного массива.
  for j:=1 to m do
  if max<S[j] then
  max:=S[j];
  Label1.Caption:=IntToStr(max);
end;

end.
Почему выводит 0-ли? Я как-то не правильно вывожу или считаю?
Fri вне форума Ответить с цитированием
Старый 10.10.2011, 15:50   #2
ByAlex
Форумчанин
 
Аватар для ByAlex
 
Регистрация: 15.03.2011
Сообщений: 465
По умолчанию

Используй Debug или скинь файлы проекта, я посмотрю что там.
Помог - жми на весы!
ByAlex89@mail.ru
ByAlex вне форума Ответить с цитированием
Старый 10.10.2011, 15:58   #3
Fri
Пользователь
 
Регистрация: 24.04.2011
Сообщений: 26
По умолчанию

Вот исходник
Вложения
Тип файла: rar Сумма по столбцу и max эл.rar (187.8 Кб, 10 просмотров)
Fri вне форума Ответить с цитированием
Старый 10.10.2011, 16:50   #4
ByAlex
Форумчанин
 
Аватар для ByAlex
 
Регистрация: 15.03.2011
Сообщений: 465
По умолчанию

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    StringGrid1: TStringGrid;
    Edit1: TEdit;
    Edit2: TEdit;
    StringGrid2: TStringGrid;
    Label1: TLabel;
    Label2: TLabel;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
type
  matr=array[1..6,1..5] of Integer;
  mas=array[1..10] of Integer;
var
  n,m,i,j:Integer;
  max:Integer;
  A:matr;
  S:mas;
procedure SUMA( n,m:Integer; A:matr; var S:mas);
var
  Sum, i,j:Integer;
begin
Sum:=0;
  for i := 1 to n do
  begin
    for j := 1 to m do
      Sum:=sum+A[j,i];
    S[i]:=sum;
    sum:=0;
  end;
end;
begin
  n:=StrToInt(Edit1.Text);
  m:=StrToInt(Edit2.Text);
  for i:=1 to m do
    for j:=1 to n do
      A[i][j]:=StrToIntDef(Trim(StringGrid1.Cells[j,i]),0);
  SUMA(n,m,A,S);
  for j:=1 to n do
    StringGrid2.Cells[j,0]:=IntToStr(S[j]);
  max:=S[1];
  for j:=1 to n do
    if max<S[j] then
      max:=S[j];
  Label1.Caption:=IntToStr(max);
end;
end.
Вот так, проверь. Если помогло, жми весы.
Помог - жми на весы!
ByAlex89@mail.ru
ByAlex вне форума Ответить с цитированием
Старый 10.10.2011, 16:58   #5
Fri
Пользователь
 
Регистрация: 24.04.2011
Сообщений: 26
По умолчанию

Цитата:
Сообщение от ByAlex Посмотреть сообщение
[CODE]unit Unit1;


Sum:=sum+A[j,i];
S[i]:=sum;
sum:=0;
Ааа точно я же забыл саму сумму передать...Невнимательность меня губит Спасибо, жму на весы)
Fri вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определить сколько знаков в числе, вычислить сумму цифр и определить старшую цифру Blombox Помощь студентам 5 25.04.2011 15:52
Найти сумму элементов матрицы по столбцам и строкам.На паскале Дмитричок Помощь студентам 14 02.04.2011 15:34
Delphi! Определить максимум повторов числа в таблице. Len4i]{ Помощь студентам 0 12.12.2010 16:20
Как в MS Excel посчитать сумму значений по столбцам, входящих в именованную ячейку? sahthey Microsoft Office Excel 3 20.05.2010 11:32
двумерный массив, нати макс.сумму по столбцам mau6 Помощь студентам 5 04.06.2008 21:14