
- •5В070300 «Информационные системы»
- •Введение
- •Содержание отчета
- •Лабораторная работа № 1
- •1 Порядок выполнения лабораторной работы:
- •Постановка задачи
- •Методические указания
- •2 . Пример
- •Лабораторная работа № 2
- •1 Содержание работы
- •1 Порядок выполнения лабораторной работы:
- •Задание
- •2. Пример
- •Лабораторная работа№ 3
- •1 Порядок выполнения лабораторной работы:
- •Задание
- •Часть вторая: Оператор выбора
- •1 Порядок выполнения лабораторной работы:
- •Задание
- •Группа а Таблица 7
- •Группа в
- •2. Примеры
- •Лабораторная работа№ 4
- •1 Порядок выполнения лабораторной работы:
- •Задание
- •2 Примеры
- •For (выражение1; выражение2;выражение3) {операторы; }
- •Лабораторная работа№ 5
- •1 Порядок выполнения лабораторной работы:
- •Задание
- •2. Примеры
- •3. Сортировка элементов массива
- •Сортировка выбором
- •3.2. Сортировка вставкой
- •3.3. Сортировка методом прямого выбора
- •3.4. Сортировка методом обмена
- •4. Указатели и одномерные массивы
- •Лаборатоная работа № 6
- •1 Порядок выполнения лабораторной работы:
- •2. Методические указания
- •3. Указатели и двумерные массивы
- •Лабораторная работа № 7
- •1 Порядок выполнения лабораторной работы:
- •Задание на строки
- •2.Краткие теоретические сведения
- •Лаборатоная работа № 8
- •1 Порядок выполнения лабораторной работы:
- •2. Теоретические сведения
- •Год рождения – 1978
- •Лабораторная работа № 9
- •1 Порядок выполнения лабораторной работы:
- •2. Примеры
- •Лабораторная работа № 10
- •1 Порядок выполнения лабораторной работы:
- •1.3. Задание для выполнения
- •2. Примеры
- •Лабораторная работа № 11
- •1 Порядок выполнения лабораторной работы:
- •1.3. Задание для выполнения
- •Лабораторная работа № 12
- •1 Порядок выполнения лабораторной работы:
- •2. Краткие теоретические сведения Объектно-ориентированный подход
- •Сущности и Объекты
- •Система типов
- •Инкапсуляция
- •Пример класса
- •Создание объектов. Конструкторы и деструктор
- •Наследование
- •Перегрузка функций
- •Полиморфизм
- •Функции-друзья
- •Абстрактные классы
- •Дополнительные возможности
- •Индивидуальные задания
- •2.1. Пример решения задания
- •Int windForce; // Сила ветра в баллах
- •Int startHeight; // Начальная высота
- •Int fuel; // Запас топлива
- •Результат выполнения программы:
- •Разновидности списков
- •Контрольные вопросы
- •Задание
- •Литература
- •Лабораторная работа № 9 Тема: Множества в Паскале.
- •Общие сведения
- •Лабораторная работа № 8 Тема: Применение записей в составлении программ.
- •Теоретические сведения
- •Задание
- •Контрольные вопросы.
- •Литература.
- •Список использованной литературы
2. Примеры
Пример 2.1. Вычислить стоимость междугородного телефонного разговора в зависимости от длительности разговора и дня недели. Как известно, стоимость междугородного разговора по телефону в выходные дни ниже, чем в обычные на 20% .
Решение задачи: 1. Необходимо составить алгоритм решения задачи и подготовить форму. На форме установить 4 компоненты Label, две - Edit, две -Button и ComboBox. В табл. 8 приведены значения свойств этих компонентов. Наибольший интерес представляют свойства Items и Itemindex компоненты ComboBox1. Свойство items содержит элементы списка. Свойство itemindex задает номер выбранного элемента списка. Если ни один из элементов не выбран, то значение свойства равно минус единице.
Список может быть сформирован во время создания формы или во время работы программы.
2.
Компонент
ComboBox-
позволяет выбрать из выпадающего списка.
Если обратить внимание на постановку
задачи, то в зависимости от дня недели
изменяется оплата разговора, поэтому
удобно выбирать день недели из списка.
Для
формирования списка во время создания
формы надо в окне Object
Inspector выбрать
свойство Items
и щелкнуть
на кнопке запуска редактора списка
строк
.
В открывшемся диалоговом окне String
List Editor (рис.
8) нужно ввести список, набирая каждый
элемент списка в отдельной строке. После
ввода очередного элемента списка для
перехода к новой строке необходимо
нажать клавишу <Enter>. После ввода
последнего элемента клавишу <Enter>
нажимать не надо. Завершив ввод списка,
следует щелкнуть на кнопке ОК.
Рисунок 8. Редактор списка
3. Стоимость разговора зависит от продолжительности разговора, расстояния и дня недели. Т.е. если день недели — суббота или воскресенье, то стоимость уменьшается на величину скидки. Для решения задачи используется условный оператор.
4
.
Щелкнув на компоненте Button1 дважды, в
функции описания событий объявляем
переменные y,s,t
вещественными.
Наряду с этим, для инициализации
значений s,t,
введенных
в поле Edit1
и Edit2, использовать
функцию преобразования типов.
float s,t,y;
s=StrToFloat(Edit1->Text);
t=StrToFloat(Edit2->Text);
5. Учитывая постановку задачи, условные операторы запишем в следующем виде:
if (ComboBox1->Text=="понедельник") y=s*t;
if (ComboBox1->Text=="вторник") y=s*t;
if (ComboBox1->Text=="среда") y=s*t;
if (ComboBox1->Text=="четверг") y=s*t;
if (ComboBox1->Text=="пятница") y=s*t;
if (ComboBox1->Text=="суббота") y=(s*t-(s*t)/5);
if (ComboBox1->Text=="воскресенье") y=(s*t-(s*t)/5);
6. Результаты вычислений выводим в компоненту Label4 (рис. 9):
Label4->Caption= ”Всего:”+ FloatToStrF(y,ffGeneral,7,4) + “ тенге”;
Таблица 8.
Компонент |
Назначение |
Свойство Caption |
Edit1 |
Для ввода стоимости 1 минуты разговора |
|
Edit2 |
Для ввода длительности разговора в минутах |
|
Label1, Label2, Label3 |
Для вывода пояснительного текста о назначении полей ввода |
Оплата за телефонный разговор s t |
Label4 |
Для вывода результата вычисления — стоимости разговора |
|
Button1 |
Для активизации процедуры вычисления стоимости разговора |
Вычислить |
Button2 |
Для активизации выхода |
Выход |
ComboBox1 |
Для вывода списка дней недели |
|
Пример 2.2 Условие задачи: составить программу вычисления функции z для значения х в диапазоне [0,5]
.
Решение задачи: I способ. Здесь используем условный оператор <іf (логическое_выражение) Операторлар 1; else Операторлар 2 >; и компоненты Form, Label, Edit, Memo, Button.
if (x<=1) z=sin(x) ; else
if ((x>1) && (x<2)) z=cos(x) ; else
if (x>=2) z=cos(x)/2;
Результаты вычислений приведены на рис. 10.
II-способ Здесь мывоспользуемся компонентом ListBox и оператором выбора
< switch (выражение_выбора)
{
сase значение_1 : {оператор1; break;}
сase значение_2: {оператор2; break;}
default: оператор }> .
О
тличие
от предыдущего способа присутствие на
форме компоненты ListBox1.
компонента ListBox1 отборажает
списки строк и позволяет
пользователю выбрать в них нужную
строку. В компоненте имеется свойство
MultiSelect,
разрешающее пользователю множественный
выбор в списке. Если MultiSelect =false, то
пользователь может выбрать только один
элемент списка. В этом случае можно
узнать индекс выбранной строки из
свойства ItemIndex,
доступного только во время выполнения.
В данном примере значение z
зависит от значения х
(отрывок программы):
switch (ListBox1->ItemIndex)
{
case 0: {z=sin(x); break;}
case 1: {z=cos(x); break;}
case 2:{ z=cos(x)/2; break;}
}
Начальное значение ItemIndex невозможно задать во время проектирования. По умлочанию ItemIndex=-1. Это означает, что ни один элемент списка не выбран. Номерация выбранного индекса начинается с 0. Результаты вычислений приведены на рис. 11.