![]() |
|
Модераторы: volvo877, Snowy, MetalFan |
![]()
|
|
| Mcicool |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 205 Регистрация: 9.10.2005 Репутация: нет Всего: нет |
Вводится последовательность чисел. Признак конца ввода - число 100.
Записать алгоритм решения следующей задачи. 1. Нахождения количества чисел в последовательности. 2. Нахождения суммы последовательности чисел. 3. Нахождения произведения последовательности чисел. 4. Нахождения максимального числа последовательности чисел. |
|||
|
||||
| Zero |
|
||||||||||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2169 Регистрация: 23.10.2004 Где: Россия, г. Рязань Репутация: нет Всего: 24 |
Если эта последовательность перечисляется через запятые или пробелы, то подсчтать их кол-во и минус один.
А там в начале создаёшь переменную типа реал:
а далее к в цикле прибавляешь к S соответствующие значения:
Тоже самое, но вот так:
А тут вот типа такого:
далее в цикле: проверяешь, если следующее число последовательности больше текущего Max, тогда Max, присвоит то самое число... |
||||||||||||||||
|
|||||||||||||||||
| Mcicool |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 205 Регистрация: 9.10.2005 Репутация: нет Всего: нет |
Я не понимаю, как задать эту последовательность. Как ее задать в описательной части программы?
|
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
Объявляешь массив от 1 до 100, к примеру.
делаешь ввод элементов массива в цикле от 1 до 100. После readln( x[i] ); делаешь проверку: if x[i] = 100 then begin n := i; break; end; Ну и затем при рассчетах используешь N как кол-во элементов в массиве (последовательности). |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: нет Всего: 110 |
ну... без массива тут можно обойтись... просто хранить искомые значения (минимум, среднее, ... что там еще) и обновлять их при вводе каждого числа... после 100 - выводить... -------------------- qqq |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
Ну это да, но я так понимаю человеку надо на учебу, а там все-таки привычка у преподов видеть данные и т.п. Хотя, конечно, для птимальности для конкретных задач можно и не хранить. |
|||
|
||||
| Mcicool |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 205 Регистрация: 9.10.2005 Репутация: нет Всего: нет |
А вы не могли бы пример привести такой проги, если это не сложно.
|
|||
|
||||
| Diesel Draft |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 876 Регистрация: 18.1.2005 Где: Lviv, Ukraine Репутация: нет Всего: 5 |
Давно не писал тому могут бить ошыбкы
Это сообщение отредактировал(а) Diesel Draft - 15.10.2005, 01:11 |
|||
|
||||
| Druidik25 |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 64 Регистрация: 27.1.2005 Где: Киев, Украина Репутация: нет Всего: нет |
Кстати есть небольшая поправка к такой программе. Я не видел, что было сказано, что последовательность нужна положительная поэтому код
Не должен быть так записан. Я думаю стоит ставить
Чего не может быть, а потом ставить проверку типа:
|
||||||
|
|||||||
| Zero |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2169 Регистрация: 23.10.2004 Где: Россия, г. Рязань Репутация: нет Всего: 24 |
Diesel Draft и Druidik25, не забываем что оператор присваивания в Паскале пишется ":=", а не "=".
Тогда условие теряет смысл, вначале, максимум, должен выбиратся самым маленьким а не большим... иначе он не будет найден. |
|||
|
||||
| Druidik25 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 64 Регистрация: 27.1.2005 Где: Киев, Украина Репутация: нет Всего: нет |
Да забыл ещё втулить одну строку:
Эта строка всё выравняет... И сразу же повится смысл в том что я говорил... Хотя, придираться - третье дело, но если кто и будет придираться, то лучьше тут чем где сдавать работу... Это сообщение отредактировал(а) Druidik25 - 20.10.2005, 21:16 |
|||
|
||||
| Zero |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2169 Регистрация: 23.10.2004 Где: Россия, г. Рязань Репутация: нет Всего: 24 |
Druidik25 Прочитай мой предыдущий пост...
(на счёт оператора присваивания) |
|||
|
||||
![]()
|
| Правила форума "Delphi" | |
|
|
Запрещается! 1. Обсуждать и делится взломанными компонентами или программным обеспечением 2. Публиковать ссылки на варез 3. Оффтопить
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |