Сверху вниз в такой последовательности2,1,3,5,4,6
1. Выделение числа, которое является степенью двойки. Определили, что числами, которые являются степенью двойки, будут числа 1, 2, 4, 8, 16 и т.д.
2. Определение искомых чисел, отвечающих условию задачи - остаток от деления числа на 17 должен быть равен нулю, остаток от деления числа на 10 должен быть равен 9 (девяти).
В данной задаче, получается, есть три модуля, которые необходимо реализовать.
Первый - определение числа - степени двойки.
Второй - определение искомых чисел и их подсчет.
Третий - модуль, который позволяет объединить оба модуля в одно целое.
Видно, что первый и второй модули - самостоятельны и независимы друг от друга. Поэтому, первый модуль можно вынести в самостоятельный блок алгоритма, которому и дали имя st_dv.
Вспомогательный алгоритм(подпрограмма) должен имеет уникальное имя и должен быть расположен под основным алгоритмом.
При реализации задач могут применяться несколько вспомогательных алгоритмов (подпрограмм).
Правила разработки алгоритма решения задачи:
I. Алгоритм решения задачи необходимо разбить на отдельные подзадачи и каждую подзадачу необходимо решать отдельно. Для нашего примера первый модульреализован в виде вспомогательного алгоритма st_dv, в который передается число, вводимое с клавиатуры. А вспомогательный алгоритм (далее, подпрограмма), проверяет: является ли число степенью двойки.
3 кита разработки вспомогательных алгоритмов
1. Вспомогательный алгоритм (в отличие от основного) обязательно должен иметь имя.
2. Тип возвращаемого значения должен совпадать с типом переменной в основном алгоритме.
3. Во вспомогательный алгоритм данные передаются посредством переменных, следовательно, в описании вспомогательного алгоритма должно быть указано такое же количество переменных, что и в имени вызываемой функции в основном алгоритме.
Var
x,y:real;
begin
x:=2.509;
y:=(exp(3*ln(abs(x-3)))-5*x)/(sqr(x+2)+exp(ln(x)/5))*exp(3*ln(x+sqr(x)));
Writeln(y)
end.
<em><u>Результат выполнения программы:</u></em>
-393.821568095705
В порядке возрастания:
бит
байт
килобайт
мегабайт
гигабайт
терабайт
петабайт
эксабайт
зеттабайт
<span>йоттабайт </span>