- •Конспект лекций по курсу «Информатика» для студентов очной и заочной форм обучения.
- •Базовые положения
- •§.1. Физическое устройство и разумная деятельность мозга
- •§2. Самодостаточная эвм
- •2.1. Память (оперативная память)
- •2.2. Процессор
- •2.3. Программа
- •2.4. Жизненный цикл «Самодостаточной эвм»
- •§3. Язык процессора – базовый язык эвм
- •§4. Реальная эвм. Периферийные устройства
- •§5. Язык программирования. Программа транслятор
- •§6. Язык программирования Pascal
- •6.1. Базовые типы числовых информационных объектов
- •6.2. Явные константы
- •6.3. Оператор описания var
- •Var и1, и2, и3, . . . . ,Иn: Итипа;
- •6.5. Операторы консольного ввода информации
- •6.5.1. Стандартные форматы вывода числовой информации.
- •6.6. Логические переменные
- •6.7. Операторы управления программой
- •6.7.1. Условный оператор if then
- •If Условие then Оператор ;
- •6.7.2. Условный оператор выбора if then else
- •6.8. Метки операторов. Оператор безусловного перехода
- •6.9. Циклические вычисления. Операторы зацикливания
- •Организация циклических вычислений операторами if then goto
- •Программа вычисления корня по формуле Герона.
- •6.9.3. Оператор цикла for to
- •6.9.4. Оператор цикла for downto
- •6.9.5. Оператор цикла while
- •6.9.6. Программа вычисления длины дуги кривой
- •7. Массивы переменных
- •7.1. Программа нахождения экстремальных значений
- •7.2. Программа решения системы линейных алгебраических уравнений
- •8. Сортировка информации
- •8.1. Элементы формальной логики, теории множеств и операций
- •8.2. Упорядоченные структуры информационных объектов
- •8.3. Алгоритм сортировки «поплавок»
- •8.3.1. Программа сортировки массива «на месте»
- •8.3.2. Программа сортировки «индексов» массива
- •8.4. Алгоритм быстрого поиска информации в линейно упорядоченном массиве
- •8.4.1. Программа поиска в отсортированных массивах.
- •9. Символьные переменные
- •9.1.Строковые переменные
- •9.1.1. Программа написания чисел прописью
- •10. Клавиатурное управление эвм
- •§.11. Информационные объекты класса – изображение
- •11.1. Устройство функционированиемонитора
- •11.2. Процедурный язык управления графическим экраном
- •11.3. Оцифровка и масштабирование реальных изображений (чертежей) для последующего их вывода на экран
- •11.4. Пример построения фрагмента графика функции
- •11.5. Ввод и обработка информации в форме изображений
- •§12. Информационные объекты класса – подпрограммы
- •12.1. Подпрограммы типа procedure
- •12.1.1. Пример оформления подпрограммы-процедуры
- •12.2. Подпрограммы класса function
- •12.2.1.Пример оформления подпрограммы-функции
- •12.3. Процедурные языки программирования
- •12.4. Библиотечные модули Unit
- •§13. Динамическое распределение оперативной памяти эвм
- •13.1. Программа использующая динамические переменные
- •§14. Переменные типа record
- •§15. Внешняя память эвм. Работа с файлами
- •15.1. Процедурный язык обработки файлов
- •15.2.Программа “ Жизненный путь файла “
- •15.3. Текстовые файлы
- •§16. Элементы объектно-ориентированного программирования
- •Основная рекомендуемая литература.
6.5.1. Стандартные форматы вывода числовой информации.
Для вывода целочисленных переменных используется формат I:n, где n-количество позиций экрана, которые программист отводит под символьную запись числа. Запись числа прижимается к правой границе выделенной области. Если количество цифр выводимого числа больше отведенного места, то область вывода автоматически увеличивается.
Для вывода вещественных переменных используются два формата:
формат F:n:m, где n- общее количество позиций экрана, которое программист отводит под символьную запись числа, m-количество цифр, отводимое для записи дробной части числа,
формат E:n, где n- общее количество позиций экрана, которое программист отводит под символьную запись числа в виде мантиссы и порядка.
Запись числа прижимается к правой границе выделенной области. Если количество цифр выводимого числа больше отведенного места, то область вывода автоматически увеличивается.
Примеры форматированного вывода:
Var ii: integer; b: real;
. . . . . . . . . .
ii:=-108; b:=-34.28;
Write(ii:5, b:8:3, b:11); {форматы I:5 F:8:3 и E:11}
символьная информация на экране:
ַ-108ַ–34.280–3.43Eַ0001
позиции экрана 12345
12345678
12345678901
Если программист не указывает форматы вывода, то «в режиме по умолчанию» целочисленные числа выводятся в формате I:1, а вещественные числа в формате E:19.
Синтаксис и назначение процедур ReadLN и WriteLN полностью соответствуют процедурам Read и Write. Отличие же процедур в том, что после нажатия клавиши «Enter» в процедурах ReadLN и WriteLN курсор экрана автоматически перемещается в начало следующей строки, а в процедурах Read и Write он остается на том же месте. Эта специфика операций ввода/вывода позволяет программистам эстетически красиво оформить экран в режиме диалога «пользователь – ЭВМ».
6.6. Логические переменные
Опр. Логические (булевы) переменные это – математические объекты, которые могут принимать только два значения, и к которым применимы три операции порождения: логическое сложение, умножение и отрицание.
Логические переменные трактуются:
а) как числа 1 или 0 (математика, бинарный код ЭВМ),
б) как утверждения «Да» или «Нет» (лексика естественного языка),
в) оценки «Истина» или «Ложь» (формальная логика).
В языке Pascal логические переменные описываются стандартным типом BOOLEAN, а зарезервированные константы TRUE (Да, 1) и FALSE (Нет, 0) обозначают возможное содержимое этих переменных.
Правила вычисления результатов логических операций
OR, AND, NOT (в терминологии Pascal)
Значение аргумента А |
Значение аргумента B |
Результат бинарной операции сложения C:=A OR B; |
Результат бинарной операции умножения C:=A AND B; |
Унарная операции отрицанияния C:= NOT B; |
|
True |
True |
True |
True |
False |
|
True |
False |
True |
False |
True |
|
False |
True |
True |
False |
|
|
False |
False |
False |
False |
|
Примеры:
Var a, b, c: boolean; {описание логических переменных с именами a, b, c }
. . . . . . . .
a:= False; {присвоить логической переменной «a» значение Ложь (число 0) }
b:=True; { присвоить логической переменной «b» значение Истина (число 1)}
c:=a OR b; {присвоить переменной «с» результат логического сложения двух переменных «a» и «b»}
WRITELN(c); {вывод на экран содержимого логической переменной «с», на экране будет символьная запись «TRUE»}
Опр. Характеристика некой совокупности объектов называется бинарной, если для каждого элемента она представима: либо неким положительным утверждением, либо его отрицанием.
Примеры бинарных характеристик (свойств, признаков):
свойство «четность»: натуральное число либо четное, либо нечетное,
свойство «Sex»: либо мужской либо, либо немужской (женский),
свойство «движение»: предмет либо перемещается в пространстве, либо не перемещается (покоится).
Опр. Высказывание – предложение естественного языка, которое описывает бинарное свойство объекта.
Обязательное свойство высказываний - каждое высказывание наделено однозначной смысловой оценкой: оно либо истинно, либо ложно. Следует отличать оценку смысла, используемую для термина «высказывание», от бытовых рассуждений «о неизбежной доле правды и лжи в каждом высказывании».
Логические переменные используются для формального (математического) описания и вычисления смысловой значимости высказываний.
Сложные высказывания образуются из элементарных путем их упорядоченного объединения в единое целое с помощью следующих союзных слов:
ИЛИ-ИЛИ, значимость новообразованного высказывания вычисляется по правилам логического сложения,
И, значимость новообразованного высказывания вычисляется по правилам логического умножения,
НЕ, значимость новообразованного высказывания вычисляется по правилам логического отрицания.
Примеры:
простое высказывание «4 четное число», его значимость – TRUE,
простое высказывание «5 четное число», его значимость - FALSE,
сложное высказывание «4 четное число ИЛИ 5 четное число ИЛИ оба четные» имеет значимость - TRUE,
сложное высказывание «4 четное число И 5 четное число» имеет значимость- FALSE,
сложное высказывание «4 НЕ четное число» имеет значимость- FALSE.
Частным случаем высказывания является формулировка результата сравнения двух объектов по какому-то количественному признаку.
Например, результатом сравнения двух чисел 5.3 и 4.6 является:
высказывание «5.3 > 4.6», которое описывается логической переменной со значение TRUE,
высказывание «5.3 < 4.6», формально описывается логической переменной со значение FALSE,
высказывание «5.3 = 4.6», которое тоже будет ложно - FALSE.
Запись соответствующих вычислений на языке Pascal имеет вид:
Var a, b, c: boolean;
. . . . . . . .
a:=5.3 > 4.6; b:= 5.3 < 4.6; c:= 5.3 = 4.6;
Стандартные обозначения (языка Pascal) операций сравнения числовых переменных:
> больше, < меньше, = равно, <> неравно,
>= больше или равно, <= меньше или равно.
Для записи сложных высказываний обязательно использование системы вложенных круглых скобок.
Пример:
Var r, k: real; bb: boolean;
r:=5.2; k:=2.7; bb:=((r – 5) >= k) or (k>2); {логическая переменная “bb”
получит значение FALSE}
Приложение.
Алгебра булевых переменных является основой для реализации всех операций выполняемых процессором. А поскольку все операции над битами можно выразить через бинарную операцию Шефера (обозначается значком «↑»), то следует вывод – «интеллектуальная сущность ЭВМ сводится к единственной операции, последовательно применяемой к различным упорядоченным парам битов».
Аргументы |
Операция c=a ↑ b |
Логическое умножение a AND b = ( a↑a) ↑ (b↑b) |
Логическое сложение a OR b = ( a↑b) ↑ (a↑b) |
Отрицание NOT b = b↑b |
||
a |
b |
|||||
1 |
1 |
0 |
1 = ( 0) ↑ (0) |
1 = ( 0) ↑ (0) |
0 = 1 ↑ 1 |
|
1 |
0 |
0 |
0 = ( 0) ↑ (1) |
1 = ( 0) ↑ (0) |
1 = 0 ↑ 0 |
|
0 |
1 |
0 |
0 = ( 1) ↑ (0) |
1 = ( 0) ↑ (0) |
|
|
0 |
0 |
1 |
0 = ( 1) ↑ (1) |
0 = ( 1) ↑ (1) |
|