| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > Цикл repeat ... until |
| Автор: ac1dbuRn 6.10.2009, 21:37 | ||||
Ввожу число 4547, а он выводит бесконечный цикл с числом 7... нужно, при вводе числа, например 4547, в ответ было таким образом: "В числе три разных цифры - 4, 5, 7" 4 5 4 7 Через mod и div получаются бесконечные циклы.... Через while тоже самое...
|
| Автор: kami 6.10.2009, 22:09 |
А с каких пор остаток от деления может стать меньше нуля? |
| Автор: Keeper89 6.10.2009, 22:12 | ||
ac1dbuRn, а вы сами сообразили, что пишите? Операция mod никогда в жизни не даст отрицательного числа, которое вы хотите увидеть в цикле. О чем я? - О том, что сравнивать надо с нулем, т.е.
Добавлено через 37 секунд Блин, kami опередил |
| Автор: Christoph 6.10.2009, 22:15 |
| цикл repeat закончиться только лишь тогда когда условие станет True, в цикле while наоборот 1.в цикле repeat никогда 0 не станет больше X 2. в цикле while тоже самое Уго |
| Автор: kami 6.10.2009, 22:27 | ||
Скорее всего, в цикле должно быть так:
Правда, при этом перечисление будет в порядке, обратном положению цифр в числе. Добавлено через 2 минуты и 21 секунду 7 mod 10 = 7. И нулем здесь не пахнет даже через бесконечное количество циклов. |
| Автор: ac1dbuRn 6.10.2009, 22:32 | ||
вот, написал, тока как-то мудрёно...
но это тока для 4-значного числа.... А можно ли как-то попроще и для n-ого кол-ва?... kami, сейчас попробую Добавлено через 9 минут и 21 секунду kami, Отлично! Благодарю! |
| Автор: Keeper89 6.10.2009, 23:14 | ||
да уж, накосячил. |