- •Объектно-ориентированное программирование
- •/ И. М. Виноградова. — Барановичи: рио БарГу, 2011 — с. Экз.
- •Структура программы. Операторы и выражения
- •Краткие теоретические сведения
- •Классификация данных
- •Декларирование объектов
- •Стандартные математические функции
- •Структура программы
- •Ввод с помощью потока cin
- •Вывод с помощью потока cout
- •Пример программы работы
- •Задания:
- •Контрольные вопросы
- •Операторы ветвления. Битовые операции
- •Краткие теоретические сведения
- •If (условие) оператор1; [else оператор2;]
- •Замечания
- •Цикл с предусловием (while)
- •Битовые операции
- •Примеры
- •Задания
- •Варианты задания
- •Контрольные вопросы
- •Циклические и вычислительные процессы
- •Краткие теоретические сведения Цикл с постусловием (do while)
- •Оператор break
- •Оператор break
- •Задания
- •Контрольные вопросы
- •Обработка статических массивов
- •Краткие теоретические сведения Объявление массива
- •Пример решения задачи по массивам
- •Полный текст программы
- •Варианты задания
- •Контрольные вопросы
- •Массивы и указатели
- •Краткие теоретические сведения
- •Указатели
- •Указатели и массивы
- •Формирование динамических массивов с использованием операций new и delete
- •Постановка задачи
- •Порядок выполнения работы
- •Варианты задания
- •Контрольные вопросы
- •Обработка символов, строк, текста
- •Краткие теоретические сведения
- •"Строковый ввод-вывод"
- •Примеры решения задач
- •Код программы
- •Код программы 2
- •Варианты задания:
- •Контрольные вопросы
- •Модульное программирование
- •Цель работы:
- •Краткие теоретические сведения.
- •Параметры функции
- •Локальные и глобальные переменные
- •Передача одномерных массивов как параметров функции
- •Передача строк в качестве параметров функций
- •Передача многомерных массивов в функцию
- •Постановка задачи
- •Порядок выполнения работы
- •Варианты заданий
- •Контрольные вопросы
- •Цель работы:
- •Краткие теоретические сведения
- •Id_класса id_объекта;
- •Id_объекта. Id_метода;
- •Задание к лабораторной работе № 8
- •Постановка задачи
- •Контрольные вопросы
- •Объектно-ориентированное программирование Методические указания
- •225404 Г. Барановичи, ул. Войкова, 21
Контрольные вопросы
Способ описания динамического массива. В каких случаях целесообразно использовать динамический массив.
Что хранится в переменной-указателе.
Указателем на какой элемент массива является имя массива.
Обнуляется ли динамическая память при выделении.
С помощью какой операции производится освобождение памяти, выделенной посредствам new().
Описать что происходит в результате следующих объявлений.
int * n=new int;
int* m=new int(10);
int* q=new int[10];
К какому элементу массива переместиться указатель в результате следующих операций:
int *p = new int[10];
p++;
Опишите какие действия производятся в результате следующего выражения
*p++=10;
10.Как хранится двумерный массив в памяти.
Объявите двумерный массив типа double с именем mas размерностью 3×3. Присвойте элементам начальные значения: 1.1, 2.2, …., 9.9
Укажите способы объявления двумерного массива.
Сошлитесь на элемент массива mas[5][5], расположенный на пересечении второй строки и третьего столбца, используя:
Запись индекса массива.
Запись указатель-смещение с именем массива как указателем.
Запись индекса строки и указателя-смещения столбца.
Организуйте вывод двумерного массива mas[n][m] в общепринятом виде:
Используя запись индекса массива.
Используя запись указатель смещение с именем массива как указателем.
ЛАБОРАТОРНАЯ РАБОТА 6
Обработка символов, строк, текста
Цель:
-изучение символьных и строковых переменных и способов их обработки в языке С.
Работа с текстовыми файлами, ввод-вывод текстовой информации и ее хранение на внешних носителях.
Краткие теоретические сведения
Строка в C++ – это массив символов, заканчивающийся нуль-символом – ’\0’ (нуль-терминатором). По положению нуль-терминатора определяется фактическая длина строки. Количество элементов в таком массиве на 1 больше, чем изображение строки.
A |
\0 |
|
A |
”A” строка (2 байта) |
|
’A’ символ (1 байт) |
Рис. 1. Представление строки и символа
Присвоить значение строке с помощью оператора присваивания нельзя. Поместить строку в массив можно либо при вводе, либо с помощью инициализации.
char s1[10]="string1";//инициализация
char s2[]="string2";//инициализация
char s3[10];
cin>>s3;//ввод
//выделение памяти под динамическую строку
char *s4=new char[strlen(s3)+1];
strcpy(s4,s3);//копирование строки s3 в строку s4
Для работы со строками существуют специальные библиотечные функции, которые содержатся в заголовочном файле string.h.
Строки, при передаче в функцию, в качестве фактических параметров могут быть определены либо как одномерные массивы типа char[], либо как указатели типа char*. В отличие от обычных массивов в этом случае нет необходимости явно указывать длину строки.