Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шкредов О.С._НП-I_ЗВIТ_01_04_2015_correct.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
341.5 Кб
Скачать

Програмна реалізація алгоритмів розгалужених структур

1. Обчислити значення логічного виразу при наступних значеннях логічних величин : А = Істина, В = Хибність, С = Хибність: не А і В;

Вхідні дані:

  • A, B, C. Цілі числа.

Вихідні дані:

  • ціле число.

Текст програми.

#include<iostream>

#include<windows.h>

#include<iomanip>

#include<math.h>

using namespace std;

void main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

int A=1,B=0;

cout<<(!A&&B)<<endl;

}

Результат:

0

Для продолжения нажмите любую клавишу . . .

2. Записати умову, яка є істинною, коли кожне з чисел А і В більше 100;

Вхідні дані:

  • A,B . Цілі числа.

Вихідні дані:

  • Текстове повідомлення.

Розробка алгоритму.

Вводимо A і B і отримуємо повідомлення чи кожне з цих чисел більше 100.

Текст програми.

#include<iostream>

#include<windows.h>

#include<iomanip>

#include<math.h>

using namespace std;

void main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

int A,B;

cin>>A>>B;

if(A>100&&B>100)cout<<"Істина"<<endl;

else cout<<"Хибність"<<endl;

}

Результат:

150

140

Істина

Для продолжения нажмите любую клавишу . . .

3. Записати умову, яка є істинною, коли точка з координатами (х, у) потрапляє в заштриховані ділянки.

Вхідні дані:

  • x,y . Дійсні числа.

Вихідні дані:

  • Текстове повідомлення.

Розробка алгоритму.

Вводимо x, y, програма аналізує задані значення і видає відповідне повідомлення.

Текст програми. (1)

#include <iostream>

#include <windows.h>

#include <iomanip>

using namespace std;

void main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

double x, y;

cin>>x>>y;

if(y<=1.5&&y>=-2)cout<<"Потрапляє"<<endl;

else cout<<"Не потрапляє"<<endl;

}

Результат:

1

2

Не потрапляє

Для продолжения нажмите любую клавишу . . .

Текст програми. (2)

#include <iostream>

#include <windows.h>

#include <iomanip>

using namespace std;

void main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

double x,y;

cin>>x>>y;

if(x>=-1&&x<=1&&y>=-1&&y<=1&&x<=y)cout<<"Потрапляє"<<endl;

else cout<<"Не потрапляє"<<endl;

}

Результат:

1

1

Потрапляє

Для продолжения нажмите любую клавишу . . .

  1. Відомі дві відстані:- одна в кілометрах, друга - у футах (1 фут = 0,45 м). Яка з відстаней менше?

Вхідні дані:

  • Відстані. Дійсні числа.

Вихідні дані:

  • Текстове повідомлення.

Розробка алгоритму.

Вводяться дві відстані, обидві відстані переводяться в метри, потім аналізується яка з відстаней менша і видається відповідне текстове повідомлення.

Текст програми

#include<iostream>

#include<windows.h>

#include<iomanip>

#include<math.h>

using namespace std;

void main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

double km,fut;

cout<<"Введіть першу відстань в кілометрах, а другу - в футах:"<<endl;

cin>>km>>fut;

km=km*1000;

fut=fut*0.45;

if(km>fut)cout<<"Відстань в футах менша"<<endl;

else cout<<"Відстань в кілометрах менша"<<endl;

}

Результат

Введіть першу відстань в кілометрах, а другу - в футах:

1

5

Відстань в футах менша

Для продолжения нажмите любую клавишу . . .

  1. Відомі рік і номер місяця народження людини, а також рік. і номер місяця сьогоднішнього дня (січень — 1 і т. д.). Визначити вік людини (число повних років). В разі збігу вказаних номерів місяців вважати, що пройшов повний рік.

Вхідні дані:

  • Роки і номери місяців. Цілі числа.

Вихідні дані:

  • Повні роки. Ціле число.

Розробка алгоритму.

Задаємо рік і номер місяця народження людини, програма аналізує ці дані і видає вік людини.

Текст програми

#include <iostream>

#include <windows.h>

#include <iomanip>

using namespace std;

void main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

int year_birth,month_birth,year_current=2015,month_current=3;

cout<<year_current<<endl<<month_current<<endl;

cout<<"Введіть рік: ";

cin>>year_birth;

cout<<"Введіть місяць: ";

cin>>month_birth;

if(month_birth<month_current) cout<<year_current-year_birth<<endl;

else cout<<year_current-year_birth-1<<endl;

}

Результат

2015

3

Введіть рік: 1998

Введіть місяць: 4

16

Для продолжения нажмите любую клавишу . . .

Switch

1. Скласти програму, яка залежно від порядкового номера дня місяця (1, 2. .., 12) виводить на екран його назву (січень, лютий, ...грудень).

Вхідні дані:

  • n . Ціле число.

Вихідні дані:

  • назва місяця.

Розробка алгоритму.

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

Текст програми.

#include <iostream>

#include <windows.h>

#include <iomanip>

using namespace std;

void main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

int n;

cout<<"Введіть номер місяця: ";

cin>>n;

switch(n)

{

case 1: cout<<"Січень"<<endl;break;

case 2: cout<<"Лютий"<<endl;break;

case 3: cout<<"Березень"<<endl;break;

case 4: cout<<"Квітень"<<endl;break;

case 5: cout<<"Травень"<<endl;break;

case 6: cout<<"Червень"<<endl;break;

case 7: cout<<"Липень"<<endl;break;

case 8: cout<<"Серпень"<<endl;break;

case 9: cout<<"Вересень"<<endl;break;

case 10: cout<<"Жовтень"<<endl;break;

case 11: cout<<"Листопад"<<endl;break;

case 12: cout<<"Грудень"<<endl;break;

default: cout<<"Введенно непрвильне значення"<<endl;break;

}

}

Результат:

Введіть номер місяця: 5

Травень

Для продолжения нажмите любую клавишу . . .

  1. Дата деякого дня характеризується двома натуральними числами: m (порядковий номер місяця) і n (число). По заданих m і n визначити дату попереднього дня (прийняти, що m і n не характеризують 1 січня). Рік не є високосним.

Вхідні дані:

  • n,m.Натуральні цілі числа.

Вихідні дані:

  • натуральні цілі числа.

Розробка алгоритму.

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

Текст програми.

#include <iostream>

#include <windows.h>

#include <iomanip>

using namespace std;

void main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

short int month, day;

cout<<"Введіть місяць та день: ";

cin>>month>>day;

switch(month)

{

case 1:if(day==1&&day>31){cout<<"error"<<endl;return;} else day=day-1;;break;

case 3:

case 5:

case 7:

case 8:

case 10:

case 12:if(day==1){month=month-1;day=30;}else if(day>31){cout<<"error"<<endl;return;}else day=day-1;;break;

case 4:

case 6:

case 9:

case 11:if(day==1){month=month-1;day=31;}else if(day>30){cout<<"error"<<endl;return;}else day=day-1;;break;

case 2:if(day==1){month=month-1;day=31;}else if(day>28){cout<<"error"<<endl;return;}else day=day-1;;break;

default:cout<<"error"<<endl;

}

cout<<" "<<day<<'.'<<month<<endl<<"(День-місяць)"<<endl;

}

Результат:

Введіть місяць та день: 5

7

6.5

(День-місяць)

Для продолжения нажмите любую клавишу . . .