
- •Содержание:
- •Упр. 41. Ввести строку с клавиатуры и заменить все буквы «а» на буквы «б». 67
- •Writeln('Введите строку'); 67
- •1. Что такое величина типа String? Как описать переменную-строку? 67
- •§1. Понятие алгоритма. Свойства, виды и формы представления алгоритмов
- •§ 2. Введение в язык программирования Pascal
- •Write(список выражений и/или переменных); Writeln(список выражений и/или переменных);
- •№4. Вывести на экран рисунок из букв § 3. Типы величин. Переменные. Присваивание.
- •§ 4.Оператор ввода.
- •§ 5. Арифметические операции
- •§ 6. Стандартные математические функции
- •§ 7. Логические выражения
- •§ 8. Решение задач по теме «Линейные программы. Логические величины.»
- •§ 9. Условный оператор
- •В общем случае полная форма условного оператора имеет вид:
- •Условный оператор работает по следующему алгоритму.
- •§ 10. Решение задач
- •§ 11. Вложенные условные операторы
- •§ 12. Цикл с предусловием
- •Представим всю информацию о цикле с предусловием в таблице:
- •§ 13. Решение задач по теме «Цикл с предусловием»
- •§ 14. Цикл с постусловием
- •§ 15. Решение задач по теме «Цикл с постусловием»
- •§ 16. Цикл с параметром (счетчиком)
- •Общая форма записи цикла со счетчиком (параметром)
- •§ 17. Решение задач по теме «Цикл со счетчиком»
- •§ 18. Линейные массивы: описание, ввод, вывод
- •§ 19. Заполнение массива случайными числами и его обработка
- •§ 20. Замены и перестановки в массиве.
- •§ 21. Поиск максимального элемента
- •§ 22. Сортировка линейного массива
- •Сортировка методом простого выбора (простой перебор)
- •Сортировка массива по возрастанию:
- •§ 23. Двумерные массивы (матрицы)
- •§ 24. Обработка двумерного массива (матрицы)
- •§ 25. Символьный тип данных
- •№57. Вводится код символа (любое число 0-255). На экран выводится символ с данным кодом. § 26. Строковый тип данных, операции и функции.
- •Упр. 41. Ввести строку с клавиатуры и заменить все буквы «а» на буквы «б».
- •Writeln('Введите строку');
- •Что такое величина типа String? Как описать переменную-строку?
- •§ 27. Процедуры для работы со строковыми величинами.
- •§ 28. Подпрограммы пользователя
§ 7. Логические выражения
Переменные логического типа описываются посредством идентификатора Boolean. Они могут принимать только два значения – False (ложь) и True (истина). Описываются они также в разделе описания переменных. Var <имя> : Boolean;
В логические выражения могут входить:
логические величины,
операции отношения (<- меньше, >- больше, <=- меньше или равно, >=- больше или равно, <>- не равно, =- равно).
логические операции And, Or, Not
разл. действия и функции
Примеры простых логических выражений |
Значение |
0 < 5 |
True |
x mod 2 = 0 |
True при четном x |
7 mod 2 <> 1 |
False |
Sqr (2) >= 4 |
True |
Trunc(3.6) > 3 |
False |
В языке Турбо Паскаль имеются логические операции, применяемые к переменным логического типа. Это операции not, and, or и хor.
Значения операндов |
Результат операции |
|||
X |
Y |
not X |
X and Y |
X or Y |
False |
False |
True |
False |
False |
False |
True |
True |
False |
True |
True |
False |
False |
False |
True |
True |
True |
False |
True |
True |
Операция not
(не) имеет один операнд и образует его
логическое отрицание. Результат операции
not есть False, если операнд истинен, и True,
если операнд имеет значение ложь. Так,
not True
False (неправда есть ложь) not False
True (неложь есть правда).
Результат операции and (и) есть истина, только если оба ее операнда истинны, и ложь во всех других случаях (логическое умножение).
Результат операции or (или) есть истина, если какой-либо из ее операндов истинен, и ложен только тогда, когда оба операнда ложны (логическое сложение).
Логические операции, операции отношения и арифметические операции часто встречаются в одном выражении. При этом отношения, стоящие слева и справа от знака логической операции, должны быть заключены в скобки, поскольку логические операции имеют более высокий приоритет. Вообще принят следующий приоритет операций:
not
and, *, /, div, mod
or, +, -
4. операции отношения (<- меньше, >- больше, <=- меньше или равно, >=- больше или равно, <>- не равно, =- равно).
Кроме того, порядок выполнения операций может изменяться скобками. Например, в логическом выражении расставим порядок действий:
4 3 2 1
A or B and not (A or B)
Сначала выполняется заключенная в скобки операция or, а затем операции not, and, or. Если подставить вместо переменных А и В значения True и False, то, используя уже рассмотренный порядок действий, получим значение всего выражения равное True.
Примеры составных логических выражений |
Значение |
Not (X=0) |
Истина при x<>0, ложь при x=0 |
(a>b) and (a>c) |
Истина, если a=max{a,b,c} |
(a=0) or (b=0) |
Истина, если хотя бы одно из a,b =0 |
( A mod 2 =0) and (A mod 4 >0) |
Истина, если А кратно двум, но не кратно 4 |
Упражнение 5:. Запишите в тетрадь и вычислите значения выражений
при a=10, b=20, c=true, d=false: а) (a>5) and (b>5) and (a<20) and (b<30);
b)not (a<15) or not (b<30);
c)c or d and (b=20).
Внимание! В языке Паскаль нет возможности ввода логических данных с помощью оператора read. Однако предусмотрен вывод значений переменных логического типа с помощью оператора write. Например, после выполнения оператора write (5>2) на экран будет выведено True.
Упржнение 6. Существует ли треугольник со сторонами a,b,c (все > 0)? Вывести true или false. |
|
|
Var a,b,c : real; R:boolean; Begin write(‘введите положительные a, b, c’ ); read(a, b, c); R:= (a+b>c) and (b+c>a) and (c+a>b); writeln(R); End.
|
Домашние вопросы и задачи:
Как описывается логическая переменная и какие значения она может принимать?
Что может входит в логические выражения. Приведите примеры простых логических выражений.
Расскажите о логических операциях в языке Паскаль. Приведите примеры составных логических выражений.
Каков приоритет различных операций в Паскале. Приведите пример.
Задачи:
№19. Записать на Паскале выражение, истинное при выполнении указанного условия и ложное в противном случае:
целое k делится на 7;
0<x<1;
Хотя бы одно из целых x, y четное;
x=max(x,y,z), то есть x наибольшее из трех чисел x,y,z;
(операцию not не использовать)
хотя бы одна из логических переменных а и b имеет значение True;
обе логические переменные а и b имеют значение True.
№20. Указать порядок выполнения операций при вычислении выражений:
а) a and b or not c and d; б) (x>=0) or not c and d.
№21. Вычислить следующие выражения при a=True, b=False:
а) a or b and not a; б) (a or b) and not a; в) not a and b; г) not (a and b)
№22. Составить программу: На вступительных экзаменах абитуриент сдавал физику, информатику, сочинение. Абитуриет поступит, если получит 5 по информатике и наберет сумму баллов за три экзамена не менее 13. Правда ли, что он поступил(вывести True/False)?