Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

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

.docx
Скачиваний:
19
Добавлен:
14.12.2018
Размер:
85.4 Кб
Скачать

Одеський національний політехнічний університет

Інститут комп’ютерних систем

Кафедра інформаційних систем

Варіант №1

Лабораторна робота №4

По дисципліні “Алгоритмізація і програмування”

Тема:“ Програмування алгоритмів з використанням операторів умовної передачі управління «switch».”

Виконав:

Студент гр. АІ-171

Анищенко М.О.

Перевірили:

Шпиньковський О.А.

Одеса 2017

Завдання 4.1:

Дано номер місяця (1 – січень, 2 – лютий, ...). Вивести назву відповідної пори року («зима», «весна» і т.д.).

Блок схема:

Код програми:

#include <stdio.h>

#include <stdlib.h>

int main(){

int num;

printf("Enter month number\n");

scanf("%d", &num);

switch(num){

case 1: case 2: case 12:

printf("Winter\n");

break;

case 3: case 4: case 5:

printf("Spring\n");

break;

case 6: case 7: case 8:

printf("Summer\n");

break;

case 9: case 10: case 11:

printf("Autumn\n");

break;

default:

printf("Invalid input\n");

break; }

return 0; }

Приклад роботи:

Вхідні данні

4

Enter month number

4

Spring

Process returned 0 (0x0) execution time : 1.927 s

Press any key to continue.

Вхідні данні

12

Enter month number

12

Winter

Process returned 0 (0x0) execution time : 2.131 s

Press any key to continue.

Завдання 4.2:

Чоловік заповнює в військкоматі анкету, програма повинна в залежності від вказаного ним

віку виводити різні підказки, а саме:

– Якщо вказаний вік від 20 і до 28 років, то повідомляти, що заповнюючий підлягає

призову на строкову службу або може служити за контрактом.

– Якщо вказаний вік від 28 до 59 років, то повідомляти, що заповнюючий може служити

за контрактом.

– Якщо вказаний вік менше 20 або більше 59 років, то повідомляти про те, що

заповнюючий непризовного віку.

– Якщо вказано непозитивний вік або вік більше 100 років, то повідомити про помилку.

Код програми:

#include <stdio.h>

#include <stdlib.h>

int main(){

int age;

printf("Enter your age\n");

scanf("%d", &age);

switch(age){

case 20 ... 27:

printf("You can serve in the contract and urgent army\n");

break;

case 28 ... 59:

printf("You can serve in the contract army\n");

break;

case 0 ... 19:

case 60 ... 100:

printf("You are not subject to conscription\n");

break;

default:

printf("Error\n");

break; }

return 0;}

Приклад виконання:

Вхідні данні

26

Enter your age

26

You can serve in the contract and urgent army

Process returned 0 (0x0) execution time : 2.779 s

Press any key to continue.

Вхідні данні

80

Enter your age

80

You are not subject to conscription

Process returned 0 (0x0) execution time : 3.793 s

Press any key to continue.

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

  1. Розгалужений процес вміщує декілька шляхів. Вибір того чи іншого шляху залежить від виконання деяких умов. У багатьох випадках виникає потреба в зміні послідовного порядку операторів, що стає  можливим завдяки операторам управління. До них в першу чергу відносяться IF та CASE.Оператор IF реалізує операцію умовного переходу (операцію розгалуження на два напрямки). В умовному виразі задається умова розгалуження. При виконанні оператора IF цей вираз обчислюється з отриманням логічного результату. Якщо результат True, то виконується простий або складний оператор після слова Then. Якщо результат False, то виконується оператор після Else.

  2. Логічні вирази — це вирази, що складаються з висловлювань, які можуть бути з’єднані логічними зв’язками. Ці вирази набувають логічного значення («хибне» або «істинне»). Логічні вирази можуть бути простими та складеними

  3. Нижче наведені логічні операції в порядку зменшення їх пріоритету, причому операції, записані в одному пункті мають однаковий пріоритет: 1) Not; 2) And; 3) Or, Xor; 4) =, <>, <, >, <=, >=.. Якщо у виразі не використовують круглі дужки, то логічні операції виконуються в порядку зменшення їх пріоритетів. Операції однакового рангу виконуються зліва направо. Для зміни порядку виконання операцій в логічних виразах використовують круглі дужки.

  4. За допомогою операторів if та else

  5. За допомогою операторів switch та case