Решаем задачи Абрамян на Паскале. Boolean22

Boolean22. Дано трехзначное число. Проверить истинность высказывания: «Цифры данного числа образуют возрастающую или убывающую последовательность».

Решение:

Другие задачи из раздела Boolean можно посмотреть здесь.

Комментарии:

Комментарии 4

  • ну поскольку я только учится начал, то уверен имею право спросить:
    вот есть у этой задачи два очевидных решения — первое описано выше, а второе с доп. переменными(разбивающими число на сотни/десятки/единицы)… так, не решение получается одно, просто способы немного разнятся…
    так вот о чем я — в будущем, допустим при написании кода, считается ли первый способ(с одной переменной) рациональнее для вычислений или это просто рациональней для скорости набора (ну для самого человека).
    надеюсь вопрос понятен. спасибо

  • Это на самом деле очень сложный вопрос и на него нет никогда однозначного решения.
    В данных задачках использовать или не использовать переменную это … да просто выпендриваемся между друг другом 🙂
    В реальной жизни в реальной программе надо задумываться, какими ресурсами обладает компьютер который будет выполнять программу.
    Поясню упростим себе задачу и скажем, что в компьютере есть только процессор, память и некий вывод… пусть будет принтер. (ооочень такой сфирический компьютер в вакуме 🙂
    И вот нам надо взять и вывести на принтер степень двойки от 1 до 3!!!
    есть варианты

    Первый пример
    юзаем память:
    объявляем переменную! допустим «перменная».
    И говорим этому компьютеру:
    переменная=2
    вывести переменную на принтер
    перменная=переменная*2
    вывести переменную на принтер
    перменная=переменная*2
    вывести переменную на принтер

    Второй пример
    юзаем проц:
    вывести 2
    вывести 2*2
    вывести 2*2*2

    Третий пример
    до кучи:
    вывести 2
    вывести 4
    вывести 8

    Теперь вопрос какой из этих примеров в реальной жизне жизнеспособный?

    ответ всё зависит от компа… если у него памяти хватило только на то чтобы загрузить алгоритм программы… то первый вариант с объявлением переменной не будет работать!
    если там проблемы с производительностью, то вариант с использованием проца будет не лучшим вариантом.
    третий вариант может не заработать из за какойнить дикой особенности принтера… что если в коде не умножают он ничего не выводит… шучу конеш… но что только не бывает в жизни 🙂

    Ну и опять же если вы используете много памяти, то убить компьютер можно даже не большими программами.
    Да самое простое:

    Программка просто запускает две своих копии… мало компу не покажется. Забьёт всю память, а дальше результат будет зависеть от ось. 🙂

    Тот же самый эффекта можно добиться случайно загрузив сильно большой массив или не подумав начать записывать экспоненциальные даныые в какойнить массив.

    ну и правда жизни… в современных тенденциях, иногда лучше отожрать 50 гигов винта и гиг оперативы, чем постоянно качать банеры из интернета.:)

  • Ух ты, спасибо за развернутый ответ

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *