Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 40030.doc
Скачиваний:
8
Добавлен:
30.04.2022
Размер:
178.18 Кб
Скачать

Перечисляемые типы

Перечислимый тип вводится ключевым словом enum и задает набор значений, определяемый пользователем. Набор значений заключается в фигурные скобки и является набором целых именованных констант, представленных своими идентификаторами. Эти константы называются перечислимыми константами. Рассмотрим объявление:

enum Suit {CLUBS, DIAMONDS, HEARTS, SPADES};

С его помощью создается целочисленный тип набором из четырех названий мастей, именующих целочисленные константы. Перечислимые константы - это идентификаторы CLUBS, DIAMONDS, HEARTS и SPADES, имеющие значения - 0, 1, 2 и 3, соответственно. Эти значения присвоены по умолчанию. Первой перечислимой константе присваивают постоянное целое численное значение 0. Каждый последующий член списка на единицу больше, чем его сосед слева. Переменным типа Suit, определенного пользователем, может быть присвоено только одно из четырех значений, объявленных в перечислении.Б.зЮ

Другой популярный пример перечислимого типа:

enum Months {JAN = 1, FEB, MAR, APR, MAY, YUN, YUL AUG, SEP, OCT, NOV, DEC};

Это объявление создает определенный пользователем тип Months с константами перечисления, представляющими месяцы года. Поскольку первое значение приведенного перечисления установлено равным 1, оставшиеся значения увеличиваются на 1 от 1 до 12.

В объявлении перечислимого типа любой константе перечисления можно присвоить целое значение.

2.2. Выполнить практические задания:

1.Даны натуральные числа n и k. Найти k-ю справа цифру числа n.

2.Дано натуральное число N. Вычислить произведение первых N сомножителей: ½*3/4*5/6*…

3.Найти и распечатать все натуральные трехзначные числа, равные сумме кубов своих цифр.

4.Реализовать программу, позволяющую вводить пользователю значения из определенного множества (например, месяцы года) и присваивать их переменной типа enum, а затем выводить на экран это значение в численном виде.

5.Во введенной строке подсчитать количество символов в слове минимальной длины.

Лабораторная работа № 2

МАССИВЫ В ЯЗЫКЕ С++

1. Общие указания по работе

Цель работы: Приобрести работы с массивами в среде C++.

2. Методические указания по их выполнению

2.1. Изучить теоретический материал по теме практической работы.

Теоретическое введение Массивы

Массивы предназначены для хранения множества значений одного типа. Прежде чем использовать массив, его нужно определить. Для создания массива надо написать тип (аналогичен типам переменных) затем имя массива и в квадратных скобках количество элементов:

int numbers[1000]; // массив на 1000 числовых элементов.

float test[10] // массив на 10 вещественных чисел

Для доступа к n-ому элементу необходимо написать имя массива[номер элемента] и работать с ним как с обычной переменной.

Пример:

numbers[200]=201; //записать в 200 элемент число 201

test[1]=0,5; // в 1 элемент записать 0,5

test[9]=10; // в 9 элемент записать число 10

int a=5;

numbers[test[9]]=111; /*записать в элемент массива numbers с номером, равным содержимому test[9], число 111*/

test[a]=2; // записать в элемент массива с номером, равным a, число 2

Нумерация элементов начинается с 0, а не с 1. То есть, массив:

int test[3]

состоит из

test[0];

test[1];

test[2].

Чтобы присвоить элементам массива значение, можно воспользоваться циклами. Самым подходящим для этого будет цикл for.

int array[10]; //определение массива

for (int i = 0; i < 10; i++)

{

array[i] = i;

}

Двумерный массив – это одномерный массив из одномерных массивов.

Для примера определим двумерный массив m размером 3 x 4:

int m [3] [4] ;

2.2. Выполнить практические задания:

1. Написать программу, распечатывающую на экране таблицу по вводимому пользователем целочисленному массиву (10 элементов), в которой в первой строке выводится номер каждого элемента, во второй – значение элемента, в третьей – адрес памяти, по которому находится элемент. Сравнить результаты для различных типов элементов массива (char, int, long).

2. В массиве найти отрезок максимальной длины, в котором первое число равно последнему, второе предпоследнему и т.д. Вывести характеристики этого отрезка: длину и номер элемента.

3. Дана прямоугольная матрица. Написать функцию, возвращающую указатель на верхний левый угол подматрицы размером 2*2, имеющей наибольшее значение определителя.

4. Для произвольного массива строк, вводимых пользователем с клавиатуры определить строку наибольшей длины.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]