Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Цифровая грамотность. В 2 частях. Ч.2. Разработка консольных приложений на языке программирования C. Учебное пособие.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
Цикл выполняется следующим образом. Вначале вычисляется
Выражение1, а затем проверяется Выражение2. Если Выражение2 истинно, то выполняется ТелоЦикла, вычисляется Выражение3 и цикл повторяется. Если Выражение2 ложно, то управление передается опера­тору вне тела цикла.
Любое из выражений может быть опущено. Пропуск Выражение2
приводит к бесконечному циклу (for(;;){…}).
В приведенном ниже примере будут напечатаны числа от 0 до 4.
Программный код:
Оператор цикла с предусловием.
Цикл с предусловием While используется для организации цикла
с неизвестным заранее числом повторений тела цикла.
Синтаксис:
Здесь Выражение управляет повторным выполнением операторов те-
ла цикла. Данный оператор начинает выполняться с проверки значения Выражение. Если оно изначально ложно (отрицательно или равно 0), то оператор вообще не выполняется и управление передается на следующий за телом цикла оператор программы. Повторение происходит до тех пор,
41
пока значение Выражение не станет ложным. Каждое следующее выпол­нение тела цикла начинается с проверки значения Выражение.
Рассмотрим пример, в котором код в цикле будет выполняться, пока переменная i меньше 5.
Программный код:
Оператор цикла с постусловием.
Цикл с постусловием do … while выполняется до тех пор, пока его условие истинно.
Синтаксис:
ТелоЦикла выполняться до тех пор, пока Выражение истинно. Про- верка Выражение происходит после каждого выполнения оператором ТелоЦикла. Гарантируется выполнение цикла хотя бы один раз, т. к. цикл всегда будет выполняться хотя бы один раз, даже если условие лож­но, потому что блок кода выполняется до проверки условия.
Рассмотрим решение предыдущего примера, но с использованием цикла с постусловием do … while.
42
Программный код:
)sin(= xy
1
≤≤0 x
1.0=Δx

Контрольные вопросы

1. Что понимается под циклическим вычислительным процессом?
2. Что такое цикл?
3. Каким образом выполняется цикл с предусловием?
4. В чем заключается отличие цикла с предусловием от цикла с пост-
условием?
5. Что такое итерационный цикл? Приведите примеры итерационных
циклов.
Лабораторная работа № 3
ПРОГРАММИРОВАНИЕ ЦИКЛИЧЕСКИХ АЛГОРИТМОВ
С ЗАДАННЫМ ЧИСЛОМ ПОВТОРЕНИЙ
Задание 1.
1.1. Изучите ГСА (рис. 2) и выполните пример 7. Вычислите функ-
цию с образцом вывода значений в табличной форме (рис. 3).
для
,
43
. Сверьте получившиеся ответы
Рис. 2 Рис. 3
Программный код:
1.2. Выполните пример 8. Вычислите сумму квадратов натурального
ряда чисел от 1 до n, т. е.=

= 1+ 2+ + .
Модифицируйте текст программы примера 8 таким образом, чтобы на экран были построчно выведены промежуточные значения вычисления суммы.
44
Программный код:
Рис. 4
Рис. 5
8
2
3
1
15
2
7
()
4. 5( )
i
k
xi
Wx
kx
=
=
−
∑
=⋅+
⋅+
∏
Задание 2.
2.1. Напечатайте квадраты и кубы всех чисел, кратных 3, в диапазоне
от 10 до 100 в три колонки (рис. 4). Изучите ГСА (рис. 5).
и т. д.
2.2. Изучите ГСА (рис. 6) и разработайте на языке программирования
Си программу для вычисления арифметического выражения W:
45
при b = –4.5,
Рис. 6. Блок-схема для вычисления
арифметического выражения
2.3. Изучите условие задачи (рис. 7), ГСА (рис. 8), образец вывода ре-
зультатов вычисления функции y в виде таблицы (рис. 9) и на языке прог­раммирования Си разработайте программу для табулирования функции y.
Примечание: nv – номер выполняемой ветви.
Δx = 0.2
Рис. 7. Условие задачи
46
Рис. 8. ГСА табулирования функции Рис. 9. Результаты
табулирования функции
Задание 3.
Индивидуальные задания
В соответствии с индивидуальным вариантом разработайте ГСА и на
языке программирования Си программный код. Строки программного ко­да сопроводите комментариями.
3.1. Вычислите сумму и произведение (табл. 15). В табличной форме выведите промежуточные значения параметра цикла, накапливаемой пе­ременной суммы и произведения, накопленное значение суммы и произ­ведения.
47
Индивидуальные задания по теме
10
1
sin(2 )
2
i
ii
C
=
+
=
∏
5
2
0
2
40 cos (6 )
5
j
xj j
V
a
=
+
∑
=
+
( )
( )
20
4
sin 2 2
cos 2
i
i
F
i
=
+
=
∑
15
2
3
ln( ) 1
4
10000 tg
L
xL
Rx
x
=

=++
∏
 
( )
( )
15
1
2tg 5 /
cos 10
i
i
T
ix
=
=
∏
−
30
1
sin(2 7)
5
21
i
xi
Jx
i
=
+
=
∑
−
3
20
5
tg( )
1 ln
k
kx
z
k
=
=
∑
+
9
1
2
sin
i
i
L
h
=
−
∏
=
10
3
3
cos
j
jb
S
b
=
+
=
∑
7
3
2
1
sin( 5)
j
xj
N
xe
=
−
++
∏
=
+
2
10
2
3
sin( 5)
cos( 7 )
f
f
M
n
=
−
=
∏
−
4
15
2
5
5
sin cos
25
p
p
Wq q
=
−

=⋅+
∑
 
«Арифметический цикл. Вычисление сумм и произведений»
Таблица 15
Номер
варианта
1.
2.
3.
Функция
Исходные
данные
– С = 7.929
х = 9 a = 12
– F = 14.957
x = 10
x = 0.57
Результат
V = 40.535
R = 680.537
T = 1.353ּ·
109
4.
5.
6.
x = 2 J = 3.61
x = 9 z = 1.752
h = –4 L = 0.094
b = 9 S = 9.634
x = 6 N = 7.3
n = 2.5 M = –0.015
q = 9 W = –0.9
48
Окончание табл. 15
2
19
4
10
cos
d
di
F
i
=
+
=
∏
7
3
2
1
sin(25 )
tg
j
k
Lk
j
=
−
= +
∑
20
2
1
sin( )
i
ix
Y
x
=
=
∑
( )
20
22
1
40 /100
20
k
k x kx
PR
x
=
++
∏
=
2
15
3
10 2
cos
v
x
M
vx
−
=
−
=
∏
+
17
6
2 ln 6
j
Cx j
=
= +
∑
14
5
6
ln
o
o
Go
x
=
= +
∑
9
1
1
ln
8
i
Du u
i
=
=++
∏
+
13
1
ln( 2)
k
Uk
=
= +
∏
( )
15
3
2
125f
PR x f x
=
= −
∑
14
2
1
cos 21
i
A xi
=
= +
∑
16
cos
1
41
p
p
AS x e
=
=
∏
Номер
варианта
7.
8.
9.
Функция
Исходные
Результат
данные
i = –1 F = 1.157ּ·1023
k = –2 L = 8.25
x = 2 Y = 0.227
x = 0.99 PR = 132.843
x = 7 M = 4.007
10.
11.
12.
x =
x =
u = 45 D = 48.807
–
x = 27 PR = 8.066·10
x = –4 A = 167.059
x = 5 AS = 59.19
C = 334.153
G = 11.479
U = 9,821·10
3
5
3.2. Реализуйте обработку чисел по указанному признаку в заданном
диапазоне (табл. 16). Выведите на экран найденные числа по указанному признаку и вычисленное значение.
49
Индивидуальные задания по теме
Вари-
1.
Определите количество четных чисел в диапазоне от 0 до 20, расположите
2.
Определите количество нечетных чисел в диапазоне от 11 до 45, расположите
3.
Определите количество чисел, кратных 4, в диапазоне от 25 до 80, располо-
4.
Определите количество четных чисел в диапазоне от 20 до 50, расположив
5.
Найдите сумму квадратов нечетных чисел в диапазоне от 42 до 73 и их ко-
6.
Найдите количество отрицательных чисел, вводимых с клавиатуры (необхо-
7.
Найдите количество нечетных чисел, вводимых с клавиатуры (необходимо
8.
Найдите количество нечетных чисел в диапазоне от 15 до 75, кратных 3,
9.
Найдите сумму кубов четных чисел в диапазоне от 10 до 50, расположив их
10.
Найдите количество положительных чисел, вводимых с клавиатуры (необ-
11.
Определите количество неотрицательных чисел, кратных 7, вводимых
12.
Определите количество нулей, вводимых с клавиатуры (необходимо ввести
«Арифметический цикл с простым разветвлением»
Таблица 16
ант
Задание
их по убыванию. Вычислите среднее арифметическое четных чисел
их по возрастанию. Вычислите среднее арифметическое нечетных чисел
жите их по возрастанию. Вычислите для этих чисел среднее геометрическое значение и выведите на экран
их по убыванию. Вычислите среднее геометрическое четных чисел
личество
димо ввести 10 чисел). Вычислите для этих чисел сумму
ввести 10 чисел). Вычислите для этих чисел сумму
расположив их по убыванию. Вычислите сумму этих чисел
по убыванию
ходимо ввести 10 чисел). Вычислите для этих чисел среднее арифметиче­ское значение
с клавиатуры (необходимо ввести 10 чисел). Найдите сумму этих чисел
10 чисел). Среди введенных чисел найдите сумму чисел, не равных нулю
3.3. Выполните табулирование функции y на заданном интервале с ша-
гом Δx = 0. 1 (табл. 14). В табличной форме выведите номер ветви (nv), x и y.
50
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]