Функции и процедуры
113
10.6. Найти периметр фигуры
ABCD по заданным сторонам
AB,
AD и
DC —
рис. 10.1. (Определить функцию для расчета гипотенузы прямоугольного
треугольника по его катетам.)
B
D
C
A
90 ,
90
BAC
BCD
Рис. 10.1
10.7. Даны основания и высоты двух равнобедренных трапеций. Найти сумму их
периметров. (Определить функцию для расчета периметра равнобедренной
трапеции по ее основаниям и высоте.)
10.8. Даны три квадратных уравнения:
2
,
ax
bx
c
2
bx
ax
c ,
2
cx
ax
b .
Сколько из них имеют вещественные корни? (Определить функцию, позво-
ляющую распознавать наличие вещественных корней в квадратном уравне-
нии.)
10.9. Найти периметр треугольника, заданного координатами своих вершин. (Оп-
ределить функцию для расчета длины отрезка по координатам его вершин.)
10.10. Даны вещественные числа
a,
b,
c,
d,
e. Найти площадь пятиугольника, изо-
браженного на рис. 10.2. (Определить функцию для расчета площади тре-
угольника по трем его сторонам.)
b
d
c
a
e
f
g
Рис. 10.2
10.11. Даны вещественные числа
1
1
2
2
5
5
,
,
,
, ...,
,
.
x
y
x
y
x
y Найти площадь пяти-
угольника (см. рис. 10.2), вершины которого имеют координаты
1
1
( ,
),
x
y
2
2
(
,
),
x
y
...,
5
5
(
,
).
x
y
(Определить функцию для расчета площади треуголь-
ника по координатам его вершин.)
Глава 10
114
10.12. Даны две последовательности целых чисел:
1
2
8
,
, ...,
a
a
a и
1
2
8
,
, ...,
.
b b
b
Найти количество четных чисел в первой из них и количество нечетных во
второй. (Определить функцию, позволяющую распознавать четные числа.)
10.13. Даны натуральное число
n и целые числа
1
2
,
, ...,
.
n
a a
a Найти количество
чисел
i
a (
i
1, 2, ...,
n), являющихся полными квадратами. (Определить
функцию, позволяющую распознавать полные квадраты.)
10.14. Даны натуральное число
n и целые числа
1
2
,
, ...,
.
n
a a
a Найти количество
чисел
i
a (
i
1, 2, ...,
n), являющихся степенями пятерки. (Определить функ-
цию, позволяющую распознавать степени пятерки.)
10.15. Найти все трехзначные простые числа. (Определить функцию, позволяющую
распознавать простые числа.)
10.16. Два простых числа
(см. предыдущую задачу) называются
"близнецами", если
они отличаются друг от друга на 2 (таковы, например, числа 41 и 43). Напе-
чатать все пары чисел-"близнецов", не превышающих число 200. (Опреде-
лить функцию, позволяющую распознавать простые числа.)
10.17. Найти значение выражения
2 5! 3 8!
6! 4!
,
где
n! означает факториал числа
n ( ! 1 2 ...
n
n
). (Определить
функцию для
расчета факториала натурального числа.)
10.18. Даны два натуральных числа. Выяснить, в каком из них сумма цифр больше.
(Определить функцию для расчета суммы цифр натурального числа.)
10.19. Даны два натуральных числа. Выяснить, в каком из них больше цифр. (Оп-
ределить
функцию для расчета количества цифр натурального числа.)
10.20. Получить все шестизначные счастливые номера.
Счастливым называют та-
кое шестизначное число, в котором сумма его первых трех цифр равна сумме
его последних трех цифр. (Определить функцию для расчета суммы цифр
трехзначного числа.)
10.21. Даны два натуральных числа. Выяснить, является ли хоть одно из них па-
линдромом ("перевертышем"), т. е. таким числом, десятичная запись которо-
го читается одинаково слева направо и справа налево. (Определить функ-
цию, позволяющую распознавать числа-палиндромы.)
10.22. Даны шесть различных чисел. Определить максимальное из них. (Опреде-
лить функцию, находящую максимум из двух различных чисел.)
10.23. Дата некоторого дня характеризуется тремя натуральными числами:
g (год),
m (порядковый номер месяца) и
n (число). По заданным
g,
n и
m определить:
а) дату предыдущего дня;
б) дату следующего дня.
Функции и процедуры
115
Определить функцию, подсчитывающую количество дней в том или ином
месяце.
В обеих задачах рассмотреть два случая:
1) заданный год не является високосным;
2) заданный год может быть високосным
(см. задачу 4.65).
10.24. Даны натуральные числа
a и
b. Найти их наименьшее общее кратное. (Опре-
делить
функцию для расчета наибольшего общего делителя двух натураль-
ных чисел, используя алгоритм Евклида.)
10.25. Даны натуральные числа
a и
b, обозначающие соответственно числитель и
знаменатель дроби. Сократить дробь, т. е. найти такие натуральные числа
p и
q, не имеющие общих делителей, что
p q
a b . (Определить функцию для
расчета наибольшего общего делителя двух натуральных чисел, используя
алгоритм Евклида.)
10.26. Найти наибольший общий делитель трех натуральных чисел, имея в виду,
что НОД(
a,
b,
c) = НОД(НОД(
a,
b),
c). (Определить
функцию для расчета
наибольшего общего делителя двух натуральных чисел, используя алго-
ритм Евклида.)
10.27. Даны
n натуральных чисел. Найти их наибольший общий делитель, исполь-
зуя алгоритм Евклида и учитывая, что НОД(
a,
b,
c) = НОД(НОД(
a,
b),
c).
(Определить функцию для расчета наибольшего общего делителя двух нату-
ральных чисел, используя алгоритм Евклида.)
10.28. Даны два предложения. Найти общее количество букв
н в них. (Определить
функцию для расчета количества букв
н в предложении.)
10.29. Составить программу для нахождения общего количества заданной буквы
в трех заданных предложениях. (Определить
функцию для расчета количест-
ва некоторой буквы в предложении.)
10.30. Даны два предложения. В каком из них доля (в %) буквы
б больше. (Опреде-
лить функцию для расчета доли некоторой буквы в предложении.)
10.31. Даны два предложения, в которых имеются буквы
ш. Найти, в каком из них
эта буква имеет больший порядковый номер (при счете от начала предложе-
ния). Если в предложении имеется несколько букв
ш, то должна быть учтена
последняя из них. (Определить
функцию для нахождения порядкового номе-
ра буквы последнего вхождения в предложение некоторой буквы.)
10.32. Даны три слова. Выяснить, является ли хоть одно из них палиндромом
("перевертышем"), т. е. таким, которое читается одинаково слева направо и
справа налево. (Определить функцию, позволяющую распознавать слова-
палиндромы.)