Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МВ до ЛР КТтаП (ч.2) 1-1 ДрукУМК.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
681.98 Кб
Скачать
  1. Номер, тема і мета лабораторної роботи.

  2. Стислі теоретичні відомості.

  3. Постановка задачі.

  4. Текст програми відповідно до завдання з коментарями та результатами.

  5. Висновки.

4. Контрольні запитання

  1. Принципи об’єктно-орієнтованого програмування.

  2. Клас.

  3. Структура класу.

  4. Структурний тип даних.

  5. Перевизначення операцій.

Лабораторна робота № 7 Перелічувальний тип даних

Мета роботи: одержати практичні навички програмування задач із застосуванням перелічувального типу.

1. Постановка задачі

Створити перелік, елементами якого є назви днів тижня. Створити програму, яка виводить на екран індекс та назву елементу переліку.

2. Поради до написання програми

Для роботи з переліком констант можна написати коротку програму, вікно якої приведене на рис. 4.2.

Рис. 4. 2. Вікно програми для демонстрації роботи з переліком констант

Нижче приведений основний текст програми, в якому застосовані методи типу enum:

public partial class Form1 : Form

{

public enum Days

{

понеділок, вівторок = 2, середа = 4, четвер,

пятниця = 7, субота, неділя

}

public Form1()

{

InitializeComponent();

comboBox1.SelectedIndex = 0;

comboBox2.SelectedIndex = 0;

}

private void ShowNomer()

{

Type weekdays = typeof(Days);

switch (comboBox1.SelectedIndex)

{

case 0: textBox1.AppendText(Enum.Format

(weekdays, Days.понеділок, "D") + "\n"); break;

case 1: textBox1.AppendText(Enum.Format

(weekdays, Days.вівторок, "D") + "\n"); break;

case 2: Days wd1 = Days.середа;

textBox1.AppendText(Enum.Format

(weekdays, wd1, "D") + "\n"); break;

case 3: textBox1.AppendText(Enum.Format

(weekdays, 5, "D") + "\n"); break;

case 4: textBox1.AppendText(Enum.Format

(weekdays, 7, "D") + "\n"); break;

case 5: Days wd2 = (Days)8;

textBox1.AppendText(Enum.Format

(weekdays, wd2, "D") + "\n"); break;

case 6: textBox1.AppendText(Enum.Format

(weekdays, (Days)9, "D") + "\n"); break;

}

}

private void buttonNomer_Click(object sender, EventArgs e)

{

ShowNomer();

}

private void ShowName()

{

Type weekdays = typeof(Days);

string st;

switch (comboBox2.SelectedIndex)

{

case 0: textBox1.AppendText(Enum.GetName(weekdays, 0)

+ "\n"); break;

case 1: textBox1.AppendText(Enum.GetName(weekdays, 2)

+ "\n"); break;

case 2: Days wd1 = (Days)4; st = wd1.ToString();

textBox1.AppendText(st + "\n"); break;

case 3: Days wd2 = (Days)5;

textBox1.AppendText(Enum.Format

(weekdays, wd2, "G") + "\n"); break;

case 4: textBox1.AppendText(Enum.Format

(weekdays, 7, "G") + "\n"); break;

case 5: textBox1.AppendText(Enum.Format

(weekdays, 8, "G") + "\n"); break;

case 6: textBox1.AppendText(Enum.Format

(weekdays, 9, "G") + "\n"); break;

}

}

private void buttonName_Click(object sender, EventArgs e)

{

ShowName();

}

private void AllName()

{

Type weekdays = typeof(Days);

foreach (string stName in Enum.GetNames(weekdays))

textBox1.AppendText(" " + stName + " \n"); //імена днів

}

private void buttonAllName_Click(object sender, EventArgs e)

{

AllName();

}

private void AllNomer()

{

Type weekdays = typeof(Days);

string stNomer = "";

foreach (int d in Enum.GetValues(weekdays))

stNomer = stNomer + d.ToString() + " ";

textBox1.AppendText(" " + stNomer + " \n"); //числа днів

}

private void buttonAllNomer_Click(object sender, EventArgs e)

{

AllNomer();

}

private void buttonExit_Click(object sender, EventArgs e)

{

Close();

}

}

Результати роботи обробників події натиснення на кнопки з різними надписами видні у вікні програми на рис. 4.2.

3. Зміст звіту