|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.04.2010, 23:12 | #1 |
Регистрация: 03.12.2009
Сообщений: 4
|
Delphi. StringGrid. посчитать суммарный балл каждого студента
Я сделала 2 таблицы. Во вторую пыталась вывести фамилии с суммарными баллами. Но проблема с повторением фамилии. Что только не пробовала..
Код:
Последний раз редактировалось Stilet; 21.04.2010 в 11:12. |
21.04.2010, 11:22 | #2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Код:
I'm learning to live...
|
|
21.04.2010, 11:43 | #3 | |
А может и не...
Участник клуба
Регистрация: 27.03.2010
Сообщений: 1,269
|
Цитата:
Зачем делать вторую проверку, если она уже является результатом первой проверки на условие... Это два взаимоисключающие друг друга условия... Else будет выполняться если не соблюдено равенство, зачем там проверка того же самого на неравенство. Да и код полностью повторяется в обеих блоках (абсолютно одинаковый), тогда зачем вообще проверки....
Перемешивай дело с бездельем и не сойдешь с ума...
|
|
21.04.2010, 20:08 | #4 |
Регистрация: 03.12.2009
Сообщений: 4
|
пример: посчитать суммарное количество баллов студентов: Курочкин -50, Лапкин -35, Зайчиков - 70, Лапкин - 45, Зайчиков - 60. Нужно чтобы вывелось: Курочкин -50, Лапкин - 80, Зайчиков - 130. Так не получится в этой процедуре? а тогда как ее изменить чтобы например из таблицы в memo вывести только столбец с фамилиями и баллами с суммированными
procedure TForm2.N6Click(Sender: TObject); var i,l:integer; bal,fam,ob:array[1..100] of string; k,j,flag:integer; begin k:=0; l:=1; for i:=1 to stringgrid1.rowcount-1 do begin if (stringgrid1.Cells[1,i]=stringgrid1.Cells[1,i+1]) then begin k:=k+1; l:=l+1; fam[k]:=stringgrid1.Cells[1,i]; bal[k]:=bal[k]+stringgrid1.Cells[4,i]; а такое может быть???? stringgrid2.Cells[1,l]:=fam[k]; stringgrid2.Cells[2,l]:=bal[k]; end else if (stringgrid1.Cells[1,i]<>stringgrid1.Cells[1,i+1]) then begin k:=k+1; l:=l+1; fam[k]:=stringgrid1.Cells[1,i]; bal[k]:=stringgrid1.Cells[4,i]; stringgrid2.Cells[1,l]:=fam[k]; stringgrid2.Cells[2,l]:=bal[k]; end; end; end; |
21.04.2010, 20:13 | #5 | |
Регистрация: 03.12.2009
Сообщений: 4
|
Цитата:
|
|
24.04.2010, 17:11 | #6 |
Регистрация: 03.12.2009
Сообщений: 4
|
Я что-то тут вообще не поняла, что за чем нужно и куда вставлять..
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
посчитать значение по каждой статье за определенный период для каждого листа | Graver | Microsoft Office Excel | 5 | 04.12.2009 01:31 |
Посчитать и преоброзовать Excel в Delphi | WithGod | Общие вопросы Delphi | 2 | 03.11.2009 09:49 |
StringGrid посчитать сумму строк или столбцов | Sweetness | Общие вопросы Delphi | 4 | 12.10.2009 00:19 |
суммарный отбор | Alexi | БД в Delphi | 9 | 15.04.2009 15:26 |
Средний балл | KORT | Общие вопросы C/C++ | 3 | 27.02.2008 17:04 |