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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.03.2011, 23:21   #1
aerosm
Пользователь
 
Регистрация: 28.02.2011
Сообщений: 14
По умолчанию Подсчитать сумму положительних элементов

Подсчитать сумму положительних элементов каждого радка матриц А[1..4,1..5] и В[1..4,1..5]. Язык Delphi.

Вот накатал. Но не работает, уже пол дня мучаюсь. Помогите, исправте.

Код:
var
  Form1: TForm1;

implementation

type mas=array [1..4,1..5] of integer;
mas1=array [1..4] of integer;
procedure dod(a:mas;var x1:mas1);
var i,j,k:integer;
begin
 
for j:=1 to 4 do
begin   k:=0;
 for i:=1 to 5 do
 if a[i,j]>0 then
 k:=k+a[i,j];
 x1[i]:=k;
end;
end;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
A,b: mas;
i,j:integer;l,k:mas1;
begin
for j:=1 to 4 do
begin
for i:=1 to 5 do
if (strtoint(stringgrid1.Cells[i-1,j-1])<>0)  then
a[i,j]:=strtoint(stringgrid1.Cells[i-1,0]);
if (strtoint(stringgrid2.Cells[i-1,0])<>0)   then
B[i,j]:=strtoint(stringgrid2.Cells[i-1,j-1]); end;
 dod(a,l);
 dod(b,k);
 label1.caption:=floattostr(l);
 label2.caption:=floattostr(k);

end;

procedure TForm1.Button2Click(Sender: TObject);
var
i,j:integer;
begin
randomize;
for i:=1 to 5 do
begin
for j:=1 to 4 do
begin
stringgrid1.Cells[i-1,j-1]:=inttostr(random(100));
stringgrid2.Cells[i-1,j-1]:=inttostr(random(100));
end;
end;
end;
aerosm вне форума Ответить с цитированием
Старый 03.03.2011, 05:23   #2
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

индексы местами попутали:

Код:
if a[j,i]>0 then
 k:=k+a[j,i];
 x1[j]:=k;
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 03.03.2011, 15:22   #3
aerosm
Пользователь
 
Регистрация: 28.02.2011
Сообщений: 14
По умолчанию

здесь ошибка [Error] Unit1.pas(61): Incompatible types: 'String' and 'mas1'

Код:
label1.caption:=floattostr(l);
 label2.caption:=floattostr(k);
aerosm вне форума Ответить с цитированием
Старый 03.03.2011, 15:38   #4
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Цитата:
Сообщение от aerosm Посмотреть сообщение
здесь ошибка [Error] Unit1.pas(61): Incompatible types: 'String' and 'mas1'

Код:
label1.caption:=floattostr(l);
 label2.caption:=floattostr(k);
Логично!!! Судя по коду l и k это МАССИВЫ! А не числа!

Цитата:
Код:
l,k:mas1;
Откуда mas1 это
Цитата:
Код:
mas1=array [1..4] of integer;
И чего вы хотели?
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 03.03.2011, 15:38   #5
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Ну так вы пытаетесь весь массив перегнать в строку. Сделайте цикл с перегонкой по элементу, как вариант.

Код:
for i:=1 to 4 do
label1.caption:=label1.caption+floattostr(l[i]);
 label2.caption:=label2.caption+floattostr(k[i]);
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сумму положительных элементов и сумму отрицательных элементов Natali_11111 Помощь студентам 6 04.03.2010 13:53
В массиве A, состоящем из 10 элементов, подсчитать количество положительных элементов Alex61 Помощь студентам 5 16.05.2009 23:06
В одномерном массиве, состоящем из n вещественных элементов, вычислить сумму элементов массива HazelHen Общие вопросы C/C++ 2 29.03.2009 15:16
Подсчитать сумму! Deman4eg Microsoft Office Excel 2 02.04.2008 09:16