|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
Опции темы | Опции просмотра |
14.05.2011, 15:57 | #1 (permalink) |
Member
Регистрация: 26.03.2011
Сообщений: 25
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Многомерный массив или записи?
Дана информация о студентах: курс, группа, оценки. Мне нужно будет выяснять средний балл каждой группы. Т.е. группы 1.1, 1.2, ..., 2.2, 2.3, ... Что меньше будет занимать памяти и что луше использовать для этого - многомерный массив или записи? Интересны также ваши предложения... |
14.05.2011, 15:57 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Возможно, данная тема уже решена ранее Массив в VBA Массив Массив в с++ Двумерный массив |
14.05.2011, 18:05 | #2 (permalink) | |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Цитата:
|
|
14.05.2011, 18:56 | #5 (permalink) |
Member
Регистрация: 26.03.2011
Сообщений: 25
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Ясно, спасибо за ваше мнение. Вот только у меня появилась проблема. Где то ошибся в коде - не могли бы вы посмотреть:
Код:
procedure GPAgr(var count:integer); var i,j:integer; sum:real; begin reset(f); for i := 1 to high(GPAgroup) do for j := 1 to high(GPAgroup[0]) do begin count:=0; sum:=0; while not(eof(f)) do begin read(f,s); if (i=s.Kurs) and (j=s.Group) then //Вот тут что-то нетак!!! begin sum:=sum+GPAstud(s); inc(count); end; end; if existGR(i,j)=true then GPAgroup[i,j]:=sum/count; end; Closefile(f); end; Так как код написал уже с массивом а особой роли как вы говорите это не играет, решил все так и оставить как есть. Проверял по счетчику count в первом операторе if не находит совпадения - не могу понять почему... а именно в переменной j чтото нетак - подставлял число вместо нее - все ок... Помогите пожалуйста. |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
14.05.2011, 19:26 | #7 (permalink) |
Member
Регистрация: 26.03.2011
Сообщений: 25
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
GPAgroup - это многомерный массив.
high(GPAgroup)- это должен быть индекс максимальной строки а high(GPAgroup[0]) - по идее максимальный столбец. Или это неправильно? |
16.05.2011, 09:33 | #10 (permalink) |
support
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,797
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
|
Покажите как вы определили этот массив. Максимальное значение индекса вообще-то это MaxValue, но вам, наверное, виднее
high(GPAgroup) - это не индекс максимальной строки (кстати, как это понять?), а вообще непонятно что! GPAgroup - что это за компонента? На какой палитре инструментов находится?
__________________
Убить всех человеков! |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Опции темы | |
Опции просмотра | |
|
|