ВУЗ:
Составители:
Рубрика:
62
выражение1 знак_операции_сравнения выражение2.
Здесь выражения 1 и 2 должны быть одного типа, иначе сравнение
завершится АВОСТом. Исключение допускается лишь для данных целого и
вещественного типа. Результатом операции является «истина» или «ложь».
Для практического программирования важно знать, как записываются
наиболее часто используемые условия, и уметь по известным образцам
записывать новые
.
Заметим, что в виде условий и/или вложенных ветвящихся алгоритмов
записываются алгоритмы распознавания, которые позволяют распознать,
подходит ли некоторый объект под заданное определение(понятие).
Рассмотрим примеры:
Пример 9.1. Проверить, является ли число a четным.
Решение. Это задание означает, что нужно написать условие истинное, если
число а является четным, и
ложное в противном случае. Вспомним определение
четного числа. Число, делящееся на 2 нацело (без остатка), называется четным.
Отсюда следует, что если при делении числа а на 2 остаток будет равен нулю,
то число будет четным. Условие на Паскале можно записать одним из
предложенных ниже вариантов.
a mod 2=0,
a-(a div 2)*2=0,
a-trunc(a/2)*2=0.
Пример 9.2. Проверить, является ли число a кратным
числу b.
Решение. Определение: число a кратно числу b, если а делится на b нацело
(без остатка). Отсюда: a mod b=0, a-(a div b)*b=0 или a-trunc(a/b)*b.
Упражнение
. Сравните решения первого и второго примеров, найдите
общие черты и различия, сделайте выводы.
Пример 9.3 Проверить, имеет ли действительные корни квадратное
уравнение ax
2
+bx+c=0 (a≠0).
Решение. Определение: квадратное уравнение имеет действительные корни,
если его дискриминант неотрицательный. Это определение можно записать на
Паскале так: sqrt(b*b-4*a*c)>=0 или sqrt(sqr(b)-4*a*c)>=0.
Пример 9.4. Проверить, лежит ли точка с координатами (x,y) вне круга
радиуса r с центром в начале координат (точка 0,0).
Решение. Определение: точки, лежащие на окружности радиуса r с центром
в точке (x
с
,y
с
), удовлетворяют уравнению (x-x
с
)
2
+(y-y
с
)
2
=r
2
. Поскольку нас
интересуют точки, лежащие вне круга, следовательно, их расстояние до центра
должно быть больше радиуса. С учетом того, что центр круга лежит в точке
(0,0), искомое условие запишется так: sqr(x)+sqr(y)>sqr(r).
Пример 9.5. Проверить, является ли натуральное n полным квадратом.
Решение. Определение: число является полным квадратом, если квадратный
корень из него является числом целым. У целого числа отсутствует дробная
часть, поэтому если извлечь квадратный корень из заданного числа, отбросить у
него дробную часть и возвести результат в квадрат, то полученное значение
может совпасть с исходным только тогда, когда исходное значение было целым.
Исходя из этого получаем условие sqr(trunc(sqrt(n)))=n.
62
выражение1 знак_операции_сравнения выражение2.
Здесь выражения 1 и 2 должны быть одного типа, иначе сравнение
завершится АВОСТом. Исключение допускается лишь для данных целого и
вещественного типа. Результатом операции является «истина» или «ложь».
Для практического программирования важно знать, как записываются
наиболее часто используемые условия, и уметь по известным образцам
записывать новые.
Заметим, что в виде условий и/или вложенных ветвящихся алгоритмов
записываются алгоритмы распознавания, которые позволяют распознать,
подходит ли некоторый объект под заданное определение(понятие).
Рассмотрим примеры:
Пример 9.1. Проверить, является ли число a четным.
Решение. Это задание означает, что нужно написать условие истинное, если
число а является четным, и ложное в противном случае. Вспомним определение
четного числа. Число, делящееся на 2 нацело (без остатка), называется четным.
Отсюда следует, что если при делении числа а на 2 остаток будет равен нулю,
то число будет четным. Условие на Паскале можно записать одним из
предложенных ниже вариантов.
a mod 2=0,
a-(a div 2)*2=0,
a-trunc(a/2)*2=0.
Пример 9.2. Проверить, является ли число a кратным числу b.
Решение. Определение: число a кратно числу b, если а делится на b нацело
(без остатка). Отсюда: a mod b=0, a-(a div b)*b=0 или a-trunc(a/b)*b.
Упражнение. Сравните решения первого и второго примеров, найдите
общие черты и различия, сделайте выводы.
Пример 9.3 Проверить, имеет ли действительные корни квадратное
уравнение ax2+bx+c=0 (a≠0).
Решение. Определение: квадратное уравнение имеет действительные корни,
если его дискриминант неотрицательный. Это определение можно записать на
Паскале так: sqrt(b*b-4*a*c)>=0 или sqrt(sqr(b)-4*a*c)>=0.
Пример 9.4. Проверить, лежит ли точка с координатами (x,y) вне круга
радиуса r с центром в начале координат (точка 0,0).
Решение. Определение: точки, лежащие на окружности радиуса r с центром
в точке (xс,yс), удовлетворяют уравнению (x-xс)2+(y-yс)2=r2. Поскольку нас
интересуют точки, лежащие вне круга, следовательно, их расстояние до центра
должно быть больше радиуса. С учетом того, что центр круга лежит в точке
(0,0), искомое условие запишется так: sqr(x)+sqr(y)>sqr(r).
Пример 9.5. Проверить, является ли натуральное n полным квадратом.
Решение. Определение: число является полным квадратом, если квадратный
корень из него является числом целым. У целого числа отсутствует дробная
часть, поэтому если извлечь квадратный корень из заданного числа, отбросить у
него дробную часть и возвести результат в квадрат, то полученное значение
может совпасть с исходным только тогда, когда исходное значение было целым.
Исходя из этого получаем условие sqr(trunc(sqrt(n)))=n.
Страницы
- « первая
- ‹ предыдущая
- …
- 58
- 59
- 60
- 61
- 62
- …
- следующая ›
- последняя »
