|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
Помогите с массивом
В университете учил Delphi, но уже всё забыл.
Дело в том, что нужно сделать программку, которая принимает числа (заранее кол-во чисел неизвестно), потом вычисляет из них среднее арифметическое. Примерное условие: Ученик получает оценки. Вводим все оценки по очереди и выводим средний балл. Представил форму, как на рисунке. Кнопки "О программе.." и "Выход" сделал. А вот как быть с циклом и массивом? Я уже не помню. Помогите, пожалуйста.. |
#2
|
|||
|
|||
Можно:
1) Создать статический массив например длиною в 100 позиций и в цикле прогонять 2) Создать динамический массив и каждый раз у пользователя спрашивать о числе вводимых оценок 3) Самый опитмальный: использовать Борландовскую структуру TStrings. Добавлять в нее строку командой Add и затем в цикле от 0 до Count-1 считывать и суммировать Также можно в окно ввода вводить сразу все оценки через какой-нибудь зарезервированный символ, например, запятая и в цикле анализировать уже строку |
#3
|
|||
|
|||
А с кодом не можешь помочь?
Там чё-то коротенькое должно быть, минимальное.. Хотя бы как цикл написать.. |
#4
|
|||
|
|||
Код:
var sum : integer; stl : TStrings; begin stl := TStrings.Create; //nen добавлене значений в stl for i := 0 to high(stl) do Sum := sum + StrToInt(stl); sum := Round(sum / stl.count) Как то так) Delphi - это лишь инструмент, а что ты сможешь создать при помощи этого инструмента, зависит исключительно от тебя. Последний раз редактировалось Alexo, 26.10.2008 в 17:12. |
#5
|
|||
|
|||
Это если одну строку обрабатывать?
П.С. А как написать, чтобы цикл выполнялся до нажатия Батона2? |
#6
|
|||
|
|||
Это если весь обьект TStrings, а там может быть куча строк.
ввести булевую переменную и при каждом проходе цикла проверять, а по нажатию кнопки изменять значение переменной. Код:
if bStop then break; application.processmessages; |