Задачи по теме «Логические
выражения»
В
обычной школьной и вузовской практике учащимся и студентам предлагаются для
решения те задания, которые представлены в задачниках или составлены
преподавателем. Однако усвоение материала будет более осознанным, если
предоставить ученикам возможность самостоятельно разработать и решить задачи на
указанную тему. Здесь появляется возможность дать волю фантазии, выдумке,
сделать какие-то нестандартные ходы. Всё это идёт на пользу делу.
В
настоящей публикации представлены наиболее удачные задачи по теме
«Логические выражения и их запись на языке Pascal», которые были
составлены студентами. Задание они получили в следующей формулировке:
«Составить высказывание, содержащее переменные, которое в зависимости от
их значений принимает значение TRUE или FALSE. Записать соответствующее
логическое выражение.«. Тема »Логические выражения» является
очень важной при изучении программирования как в школьном, там и вузовском
курсе. Зачастую она остается незаслуженно обойденной, в то время как именно по
этой причине учащиеся затрудняются правильно построить логическое выражения,
являющееся условием в развилке или цикле. Потому подобного рода задания
позволяют акцентировать внимание на указанной проблематике и лучшей степени
подготовить учащихся к изучению тем «Развилка», «Циклы».
Что
касается моего задания, то следует отметить, что некоторые студенты подошли к
его выполнению формально, предложив полные аналоги задач из учебников, но были
и своего рода находки. Ниже приведены сами задания и соответствующие им
логические выражения.
1.
Сумма цифр заданного четырёхзначного числа N превосходит произведение цифр
этого же числа на 1.
N Div 1000 + N Div 100 Mod 10 +
N Mod 100 Div 10 + N Mod 10 1 =
(N Div 1000) * (N Div 100 Mod 10) * (N Mod 100 Div
10) * (N Mod 10)
2.
Сумма двух последних цифр заданного трёхзначного числа N меньше заданного K, а
первая цифра N больше5.
(N Div 10 Mod 10 + N Mod 10
< K) And (N Div 100 > 5)
3.
Заданное натуральное число N является двузначным и кратно K.
(N >= 10) And (N <= 99)
And (N Mod K = 0)
или
(N in [10..99]) And (N Mod K = 0)
4.
Сумма двух первых цифр заданного четырёхзначного числа N равна произведению
двух последних.
N Div 1000 + N Div 100 Mod 10 =
(N Mod 100 Div 10) * (N Mod 10)
5.
Каждая последующая цифра трёхзначного числа N, начиная со старшего разряда,
больше предыдущей на 1.
(N Mod 10 — N Div 10 Mod 10 =
1) And (N Div 10 Mod 10 — N Div 100 = 1)
6.
X — отрицательное целое число, делящееся на 3 нацело.
(X < 0) And (X Mod 3 = 0)
7.
Заданы три положительных числа A, B, C. Эти числа являются сторонами
равнобедренного треугольника.
(A + B > C) And (A + C >
B) And (B + C > A) And
((A = B) Or (B = C) Or (A = C))
Для
действительных A, B, C
(A + B > C) And (A + C >
B) And (B + C > A) And
((Abs(A B) < 1E 7) Or (Abs(B C) < 1E 7)
Or (Abs(A C) < 1E 7))
8.
Среди заданных целых чисел A, B, C, D есть хотя бы два чётных.
Ord(Not Odd(A)) + Ord(Not
Odd(B)) + Ord(Not Odd(C)) + Ord(Not Odd(D)) >= 2
9.
Прямоугольник с измерениями A, B подобен прямоугольнику с соответствующими
измерениями C, D.
Abs(A / C B / D) < 1E 7
10.
Дробь A / B является правильной.
(A < B) And (B > 0)
11.
Дано натуральное число N — некоторый год. Этот год является високосным.
(N Mod 4 = 0) And (N Mod 100
<> 0) Or (N Mod 400 = 0)
или
(N Mod 4 = 0) And Not((N Mod 100 = 0) Xor (N Mod
400 = 0))
Список литературы
Для
подготовки данной работы были использованы материалы с сайта http://www.comp-science.narod.ru/