Programming Taskbook 0
Download 1.62 Mb. Pdf ko'rish
|
Abramyan-Pascal2016-1
0 5 10
0 2 4 6 8 10 В первом случае, поскольку все параметры являются целыми, исполь- зуется первый вариант функции Range, для которого третий параметр определяет шаг изменения значений. Поэтому перебираются и выводятся все целые числа от 0 до 10 с шагом 5. Во втором случае, поскольку первый параметр является вещественным, выбирается третий вариант функции Range (и при этом второй параметр также приводится к вещественному типу). Для третьего варианта третий параметр означает число отрезков, на которые надо разбить исходный отрезок, поэтому в этом случае выполня- ется разбиение отрезка [0; 10] на 5 равных отрезков, и печатаются концы 44 полученных отрезков в порядке возрастания (на самом деле вторая после- довательность состоит из вещественных чисел, однако все они имеют ну- левую дробную часть, которая при печати не указывается). Используя третий вариант функции Range, легко реализовать процеду- ру табуляции Tab, которая упоминалась в п. 1.3. Напомним, что эта проце- дура печатает значения функции f в точках разбиения отрезка [a, b] на n равных частей и имеет следующий заголовок: procedure Tab(f: real -> real; a, b: real; n: integer); Простейший вариант реализации этой процедуры, выводящей каждое значение табулируемой функции на новой строке и не использующий спе- циальные средства форматирования выводимых данных, может быть пред- ставлен в виде единственного оператора: PartitionPoints(a, b, n).Select(x -> f(x)).PrintLines; Вначале мы генерируем последовательность точек, в которых требу- ется вычислить функцию, затем применяем к этой последовательности за- прос Select, преобразующий аргументы x в значения функции f(x), а затем выводим полученную последовательность значений с помощью метода Println, явно указывая разделитель #13 — разрыв строки. Если указанным образом описать процедуру Tab, а затем выполнить фрагмент с ее вызовами, приведенный к конце п. 1.3, то на экране будут выведены следующие данные: Download 1.62 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling