![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
Footballplayer |
![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Льоха Репутация: ![]() ![]() ![]() |
опять застрял..
определить является ли последовательность цифр в числе справа налево последовательностью возрастающей.. например: 54321 - TRUE. 54325 - FALSE я тут написал кое-что..но работает неправильно..не судите строго..я только учусь ![]() program My7_11; предполагается что задачу надо решать без использования массива.. Сообщение отредактировано: Footballplayer - 5.08.2009 14:21 |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Все проще гораздо:
varНе надо ничего выделять из числа заранее, не надо считать количество цифр в числе. Просто проверяешь, последняя цифра больше или нет предыдущей последней цифры (и накапливаешь этот результат. Как только один раз Ok стало = False, оно больше НИКОГДА не станет = True, это гарантируется использованием AND, ведь AND вернет True, только в случае двух операндов, равных True ![]() Добавлено через 2 мин. P.S. Можно еще ускорить, сделать цикл While Ok and (X <> 0) Do. Тогда как только встретится "неправильная" цифра, выполнение цикла немедленно прекратится. |
Footballplayer |
![]()
Сообщение
#3
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Льоха Репутация: ![]() ![]() ![]() |
вот до этой строчки ни за что в жизни бы не додумался:
...спасибо..со стороны всё так просто но фиг до этой простоты доберёшься..)) |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Цитата вот до этой строчки ни за что в жизни бы не додумался: prev := 0; ok := true;(работает точно так же, как и первый вариант) |
Footballplayer |
![]()
Сообщение
#5
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Льоха Репутация: ![]() ![]() ![]() |
есть одно но.... на числа оканчивающиеся нулём выдаёт FALSE..
я сделал так: prev:=-1; соответственно изменив тип переменной prev на shortint ... такой ход не ошибочен? |
мисс_граффити |
![]()
Сообщение
#6
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Ну да, иначе для чисел, оканчивающихся нулем, получалось равенство при первом сравнении...
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
![]() ![]() |
![]() |
Текстовая версия | 20.06.2025 14:29 |