- •Математика и информатика
- •Содержание
- •Часть 1. Основания математики Глава 1. Понятийный аппарат аксиоматического метода
- •1.1. Понятие аксиоматического метода
- •1.2. Аксиоматическое построение математической теории
- •1.3. Вопросы для самоконтроля по теме «Аксиоматический метод»
- •Глава 2. Основные понятия теории множеств. Основные структуры
- •2.1. Понятие множества
- •2.3. Алгебра множеств
- •2.3.1. Отношения между множествами
- •2.2. Способы задания множеств
- •2.3.2. Операции над множествами
- •2.3.3. Алгебраические свойства операций над множествами
- •2.3.4. Геометрическая интерпретация операций над множествами
- •2.4. Декартово произведение множеств. Бинарные отношения
- •2.5. Символический язык логической структуры математических предложений
- •2.6. Алгебраические операции над различными математическими объектами
- •2.7. Вопросы для самоконтроля по теме «Теория множеств»
- •Глава 3. Структуры на множестве. Комбинаторика
- •3.1. Перестановки
- •3.2. Размещения
- •3.3. Сочетания
- •3.4. Вопросы для самоконтроля по теме «Комбинаторика»
- •Часть 2. Основы теории вероятностей Глава 4. Случайные события
- •4.1. Основные понятия теории вероятностей. Виды случайных событий
- •4.2. Алгебра случайных событий
- •4.3. Определение вероятности
- •4.3.1. Классическое определение вероятности
- •4.3.2. Аксиомы теории вероятностей. Аксиоматическое определение вероятности
- •4.4. Теоремы сложения и умножения вероятностей
- •4.4.1. Сложение вероятностей несовместных событий
- •4.4.2. Умножение вероятностей независимых событий
- •4.4.3. Вероятность появления хотя бы одного события
- •4.4.4. Умножение вероятностей зависимых событий. Условная вероятность
- •4.4.5. Сложение вероятностей совместных событий
- •4.5. Формула полной вероятности
- •4.6. Формула Байеса
- •4.7. Вопросы для самоконтроля по теме «Основы теории вероятностей»
- •Глава 5. Случайные величины
- •5.1. Понятие случайной величины
- •5.2. Дискретная случайная величина
- •5.2.1. Закон распределения дискретной случайной величины
- •5.2.2. Числовые характеристики дискретных случайных величин
- •5.3. Непрерывная случайная величина
- •5.3.1. Функция распределения вероятностей и плотность распределения вероятностей непрерывной случайной величины
- •5.3.2. Числовые характеристики непрерывной случайной величины
- •5.3.3. Равномерный и нормальный законы распределения непрерывных случайных величин
- •5.3.4. Вероятность попадания в заданный интервал нормальной случайной величины
- •5.3.5. Вычисление вероятности заданного отклонения нормальной случайной величины
- •5.4. Вопросы для самоконтроля по теме «Случайная величина»
- •Часть 3. Элементы математической статистики Глава 6. Статистические оценки параметров распределения
- •6.1. Предмет и задачи математической статистики
- •6.2. Выборочный метод
- •6.2.1 Полигон и гистограмма
- •6.2.2. Эмпирическая функция распределения
- •6.3. Статистические оценки параметров распределения
- •6.4. Некоторые статистические распределения
- •6.4.2. Распределение Стьюдента
- •6.5. Интервальные оценки
- •6.5.1. Доверительные интервалы для оценки математического ожидания нормального распределения случайной величины
- •6.5.2. Доверительные интервалы для математического ожидания при известной дисперсии
- •6.5.3. Оценка генеральной дисперсии по исправленной выборочной
- •6.5.4. Доверительные интервалы для математического ожидания при неизвестной дисперсии
- •Глава 7. Проверка статистических гипотез
- •7.1. Понятие и классификация статистических гипотез
- •7.2. Общая схема проверки гипотез
- •7.3. Статистическая проверка гипотез о параметрах распределения
- •7.4. Вопросы для самоконтроля по теме «Элементы математической статистики»
- •Часть 4. Алгоритмизация и программирование Глава 8. Основы алгоритмизации
- •8.1. Понятие и свойства алгоритма
- •8.2. Таблица блоков
- •8.3. Линейные алгоритмы
- •8.4. Ветвления
- •8.5. Циклы. Повтор с заданным количеством циклов
- •8.6. Вопросы для самоконтроля по теме «Алгоритмизация»
- •Глава 9. Программирование на Паскале
- •9.1. Конструкция языка Turbo-Pascal
- •9.1.1. Алфавит
- •9.1.2. Данные и типы данных
- •9.1.3. Стандартные функции
- •9.1.4. Арифметические, логические, символьные выражения
- •9.2. Структура программы на языке Паскаль
- •9.3. Основные операторы Паскаля
- •9.3.1. Оператор присваивания
- •9.3.2. Операторы ввода
- •9.3.3. Операторы вывода
- •9.3.4. Комментарий
- •9.4. Программы линейных алгоритмов
- •9.5. Операторы передачи управления
- •9.5.1. Оператор безусловного перехода
- •9.5.2. Операторы условного перехода
- •9.5.3. Оператор выбора варианта
- •9.6. Разветвляющийся алгоритм
- •9.7. Операторы цикла
- •9.8. Программы циклических алгоритмов
- •9.9. Массивы
- •9.9.1. Понятие и описание массива
- •9.9.2. Ввод и вывод элементов массивов
- •9.10. Вопросы для самоконтроля по теме «Программирование»
- •9.9.3. Операции с массивами
- •Литература
- •Приложениe 1
- •Приложениe 2
- •Приложениe 3
- •Математика и информатика учебное пособие
9.5.3. Оператор выбора варианта
Оператор выбора позволяет выбрать одно из нескольких возможных вариантов программы. Параметром, по которому осуществляется выбор, служит ключ выбора – выражение любого порядкового типа (любого из рассмотренных, кроме типов REAL и STRING).
Структура оператора выбора такова:
CASE <ключ выбора> OF
<список выбора>
[else <оператор>]
end;
где CASE – случай, of – из,
<ключ выбора> выражение типа целые;
<оператор> – произвольный оператор Турбо Паскаля.
Оператор выбора работает следующим образом. Вначале вычисляется значение выражения <ключ_выбора>, а затем в последовательности операторов <список_выбора> отыскивается такой, которому предшествует константа, равная вычисленному значению. Найденный оператор выполняется, после чего оператор выбора завершает свою работу. Если в списке выбора не будет найдена константа, соответствующая вычисленному значению ключа выбора, управление передается оператору, стоящему за словом ELSE.
Пример 11.
Вывести разные функции в зависимости от значения переменной n, введённой с клавиатуры. Написать программу с использованием оператора выбораCASE.
Решение.
ProgramPr11;
Var
n: integer;
a, b, y, z: real;
begin
writeln (‘n, a, b’);
read (n, a, b);
y:=a+b; z:=a-b;
CASE n of
1, 2, 5: writeln (y);
7..10: writeln (z);
else writeln (‘ вне области определения n’);
end;end.
При значении n=1, 2, 5 программа выведет значение y. При значении n={7, 8, 9, 10}(одному из списка) программа выведет значение z, иначе выведет текст ‘вне области определения n’ .
Пример 12.
Вывести разные функции в зависимости от значения переменной k. Если переменнаяkлежит в пределах [110], вычислить y: = cos (x); z:=y+x; и вывести результат. Если переменнаяkлежит в пределах [11;20], вычислить y: = sin(x); и вывести результат. Написать программу с использованием оператора выбораCASE.
Решение.
Program Pr12;
Var
K: integer;
x, y, z: real;
begin
writeln (`x, k`); readln (x, k);
case k of
1..10: begin y:=cos (x); z:=y+x; writeln (y,z); end;
11..20: begin y:=sin(x); writeln (y); end;
else
writeln (`вне области переменной к`);
end; end.
9.6. Разветвляющийся алгоритм
Пример 13.
Дана точка А (x,y) с координатамиx,y, не равными нулю.
Найти четверть, в которой находится эта точка. Написать программу.
Решение.
ProgramPr13;
Var
x,y: integer;
Begin
writeln(‘ввести координаты т. А: x,y’);
Readln (x,y);
IF (x>0 ) and (y>0) then writeln (‘т. Aнаходится в 1 четверти’)
else
IF (x>0) and (y<0) then writeln (‘т. А в 4 четверти’)
else
IF y>0 then writeln (т. А во 2 четверти’)
else writeln (‘ т. А в 3 четверти’);
End.
Каждому ELSE соответствует предыдущее свободное then.
9.7. Операторы цикла
Оператор цикла с параметрами
Счетный оператор цикла FOR имеет такую структуру:
а) FOR i:=a TO b DO <оператор>;
Здесь FOR, TO, DO – зарезервированные слова (для, до, выполнить);
i– переменная цикла типа INTEGER;
a – начальное значение переменной цикла (тип INTEGER);
b – конечное значение переменной цикла (тип INTEGER);
<оператор> – произвольный оператор Турбо Паскаля.
Шаг изменения параметра цикла равен единице.
Алгоритм выполнения оператора цикла с параметрами при выполнении оператора FOR:
вначале осуществляется присваивание i:=a;
проверяется условие i > b;если это условие выполняется, то следует выход из цикла, иначе на пункт 3;
выполняется тело цикла;
счётчик увеличивается на единицу: i:=i + 1;
переход на 2;
после этого цикл повторяется или заканчивается.
Пример 14.
Найти сумму значений переменной цикла. Фрагмент программы с оператором цикла запишется в виде:
For i:= 1 to 10 do s:=s+i;
Writeln(‘s=’, s);
В примере 14 рассматривается простой оператор цикла.
Счётный оператор цикл FOR может иметь такую структуру:
б) FOR i: = b DOWNTO a DO <оператор>;
Замена зарезервированного слова TO на DOWNTO означает, что шаг наращивания переменной цикла равен (-1).
Пример 15.
Найти сумму значений переменной цикла.
Фрагмент программы с оператором цикла запишется в виде:
For i:=10 to 1 downto s:=s+i;
Writeln(‘s=’,s:8:3);
{Результат получится тот же, что и в примере 14}.
Правила оператора FOR.
Нельзя войти в цикл, минуя оператор FOR.
Нельзя изменять параметры цикла (a,b) внутри цикла.
Параметры цикла и переменная цикла должны быть целыми.
Шаг цикла может быть единица или минус единица.
Естественное окончание цикла осуществляется при условии i > b для а).
Из цикла можно выйти до естественного окончания цикла по условию.
Оператор цикла WHILE с предусловием
Структура оператора имеет вид:
WHILE <условие> DO <оператор>;
Здесь WHILE, DO – зарезервированные слова:
WHILE – пока; DO – выполнить,
<условие> – выражение логического типа;
<оператор> – произвольный оператор Турбо Паскаля.
Если выражение <условие> имеет значение TRUE, то выполняется <оператор>, после чего вычисление выражения <условие> и его проверка повторяются. Если <условие> имеет значение FALSE, оператор WHILE прекращает свою работу.
Пример 16.
Переписать фрагмент примера 14, используя оператор цикла с предусловием. Фрагмент программы с оператором цикла запишется в виде:
s:=0;i:=1;
while i<=10 do
Begin
s:=s+i;
i:=i+1;
End;
Writeln(‘s=’,s);
В примере 16 рассматривается составной оператор цикла, тело цикла заключено в операторные скобки.
Оператор цикла REPEAT…UNTIL с постусловием
Структура оператора имеет вид:
REPEAT <тело_цикла> UNTIL <условие>;
Здесь REPEAT, UNTIL – зарезервированные слова (повторять до тех пор, пока не будет выполнено условие);
<тело_цикла> – произвольная последовательность операторов Турбо Паскаля; <условие> – выражение логического типа.
Операторы <тело_цикла> выполняются хотя бы один раз, после чего вычисляется выражение <условие>: если его значение есть FALSE, операторы <тело_цикла> повторяются, в противном случае оператор REPEAT…UNTIL завершает свою работу.
Пример 17.
Выполнить задание примера 16.
Фрагмент программы с оператором цикла запишется в виде:
s:=0; i:=1;
repeat
s:=s+i;
i:=i+1;
Untili>10;
Writeln(‘s=’,s); В примере 17 цикл выполняется пока переменнаяi10, приi>10 цикл закончится.
