- •Содержание
- •4. 5. Контрольные вопросы....................................................................44
- •7. 1. Краткие теоретические сведения..................................................59
- •8. 1. Краткие теоретические сведения...................................................70
- •Введение
- •1. 1. Главное окно
- •2. Лабораторная работа №1 Тема: Ввод и вывод
- •2. 1. Экранная форма (Form)
- •2. 1. 1. Таблица свойств (Form)
- •2. 2. Кнопка (Button)
- •2. 2. 1. Таблица свойств для Button
- •2. 3. Однострочный редактор (Edit)
- •2. 3. 1. Таблица свойств для Edit
- •2. 4. Контрольные вопросы
- •2. 5. Задания к лабораторной работе
- •3. Лабораторная работа №2 Тема: Программирование алгоритмов линейной структуры
- •3. 1. Классификация типов данных
- •3. 2. Константы
- •“Это начало строки, ” “а это ее продолжение”
- •“Это начало строки, а это ее продолжение”
- •3. 3. Задания к лабораторной работе
- •4. Лабораторная работа №3 Тема: Программирование алгоритмов циклической структуры
- •4. 1. Условный оператор if... Else
- •4. 1. 1. Об условиях в операторе if
- •4. 2. Цикл while
- •4. 3. Цикл do while
- •4. 4. Цикл for
- •4. 5. Контрольные вопросы
- •5. Лабораторная работа №4 Тема: Работа с массивами
- •5. 1. Контрольные вопросы
- •5. 2. Задания к лабораторной работе
- •6. Лабораторная работа №5
- •Изучение утилит Database Desktop (dbd), bd Administrator Использование компонентов tDataModule, tTable, tDataSet
- •6. 1. Краткие теоретические сведения
- •6. 2. Модуль данных
- •6. 3. Доступ к содержимому поля
- •6. 4. Поиск записей
- •6. 5. Фильтры
- •6. 6. Задание
- •6. 7. Ход выполнения работы
- •6. 8. Контрольные вопросы
- •7. Лабораторная работа №6 Тема: Программирование объекта tQuery
- •7. 1. Краткие теоретические сведения
- •7. 2. Задание
- •7. 3. Ход выполнения работы
- •7. 4. Контрольные вопросы
- •8. Лабораторная работа №7 Тема: Создание связей между таблицами
- •8. 1. Краткие теоретические сведения
- •8. 2. Задание
- •8. 3. Ход выполнения работы
- •8. 4. Контрольные вопросы
- •9. Лабораторная работа №8 Тема: Работа с полями
- •9. 1. Краткие теоретические сведения
- •9. 2. Задание
- •9. 3. Ход выполнении работы
- •9. 4. Контрольные вопросы
- •10. Задания к базам данных
4. 5. Контрольные вопросы
1. Какие операторы цикла вы знаете?
2. Когда используется оператор цикла ДЛЯ?
3. Как изменяется управляющая переменная в цикле ДЛЯ?
4. Когда применяется составной оператор в цикле?
5. Когда выполняется тело оператора цикла ПОКА?
Вариант задания |
Уравнение |
Отрезок |
Шаг |
1 |
ex - e-x-2 = 0 |
[0;1] |
0.1 |
2 |
3sin +0.35x - 3.8 = 0 |
[2;3] |
0.1 |
3 |
x – 2 +sin(1/x) = 0 |
[1.2,2] |
0.1 |
4 |
1 – x + sinx - ln(l+x) = 0 |
[0;1.5] |
0.1 |
5 |
x2 – ln(1+x) – 3 = 0 |
[2;3] |
0.1 |
6 |
|
[0,0.85] |
0.1 |
7 |
Lnx – x + 1.8 = 0 |
[2;3] |
01 |
8 |
|
[1;2] |
0.1 |
9 |
x + cos(x0.52+2) = 0 |
[0.5;1] |
0.05 |
10 |
|
[0;1] |
0.01 |
11 |
|
[0;1] |
01 |
12 |
|
[2;4] |
0.15 |
13 |
|
[1:2] |
0.1 |
14 |
|
[0;1] |
0.1 |
15 |
2x-31nx-3=0 |
[0.5;0.6] |
0.01 |
Задание №2. Найти min и max значения данной функции в заданном интервале.
5. Лабораторная работа №4 Тема: Работа с массивами
Массив – это упорядоченный набор однотипных данных. Тип массива описывается в разделе описания типов данных, переменная типа описывается в разделе описания переменных со ссылкой на тип [1].
Пример.
int a[100];
b[100][100];
Описан массив а, состоящий из 100 чисел целого типа и двумерный массив b, состоящий из 100 строк и 100 столбцов.
В С++ для ввода и вывода массивов используется компонент StringGrid, поэтому работа с массивами в С++ сильно отличается от работы в Pascal и Basic [2].
1) В двумерных массивах первый индекс обозначает номер столбца, второй – номер строки.
2) В С++ принято, что нумерация элементов начинается с нуля. Например, А(0,1) – первый столбец, вторая строка.
В компоненте StringGrid все элементы хранятся в свойстве cells. Свойство cells имеет тип String, поэтому при вводе элементов массива необходимо использовать команды StrToInt, FloatToInt, а при выводе - IntToStr, FloatToStr, FloatToStrF.
В компоненте StringGrid есть свойства FixedCols и FixedRows – фиксированные столбцы и строки. По умолчанию значение этих свойств =1. При работе с массивами их необходимо обнулять.
Примечание.
1) Количество строк и столбцов в StringGrid задаются в свойствах RowCount и ColCount.
2) Использование фиксированных строк и столбцов при работе не рекомендуется, т.к. в них нельзя вводить данные во время работы программы.
3) По умолчанию в компоненте StringGrid данные вводить нельзя. Чтобы снять запрет, выбирается свойство Options -> GoEditing -> True.
Пример 1. Заполнить двумерный массив а (размерности n*n) случайным образом. Вывести его на экран. Получит сумму диагональных элементов.
1. Поместите на форму объекты: Edit1, Label1, Label2, Button1, Button2, StringGrid.
2. Присвойте объектам свойства согласно таблице:
Свойства |
Объект |
Значение |
Text |
Edit1 |
|
Caption |
Label1 |
N= |
Caption |
Label2 |
S= |
Option |
StringGrid1 |
GoEditing |
Caption |
Button1 |
Выполнить |
Caption |
Button2 |
Выход |
3. Дважды щёлкнув по кнопке “Выход”, впишите в место, где мигает курсор Close();
4. Дважды щёлкнув по кнопке “Выход”, впишите следующий код:
5. Сохраните проект в папке и выполните его при N=3.
Пример 2. Упорядочить по возрастанию массив целых чисел а1,…,аn, используя алгоритм сортировки выбором [3].
1. Поместите на форму объекты: Edit1, Edit2, Edit3 Label1, Label2, Label3, Button1, Button2.
2. Присвойте объектам свойства согласно таблице:
Объект |
Свойства |
Значение |
Edit1 |
Text |
|
Edit2 |
Text |
|
Edit3 |
Text |
|
Label1 |
Caption |
Введите количество элементов массива |
Label2 |
Caption |
Случайные целые числа |
Label3 |
Caption |
Сортировка по убыванию |
Button1 |
Caption |
Выполнить |
Button2 |
Caption |
Выход |
3. Дважды щёлкнув по кнопке “Выход”, впишите в место, где мигает курсор Close();
4. Дважды щёлкнув по кнопке “Выход”, впишите следующий код:
5. Сохраните проект в папке и выполните его.
Результат выполнения программы: