Пример программы. Формулировка задания:

Формулировка задания:

Выполнить поразрядные логические операции над целыми числами

#include<stdio.h>

#include<conio.h>

void main()

{unsigned char a, b, c;

clrscr();

a = 41 & -21;

printf("41 AND -21 = (41) = %i\n", a);

a = -41 & -21;

printf("-41 AND -21 = (195) = %i\n", a);

b = 41 | 21;

printf("41 OR 21 = (61) = %i\n", b);

b = 41 ^ 21;

printf("41 XOR 21 = (60) = %i\n", b);

b = 41 << 2;

printf("41 << 2 = (164) = %i\n", b);

c = ~43 | -9 & (~-7 ^ 4);

printf("NOT 43 OR -9 AND (NOT-7 XOR 4) = (214) = %i\n", c);

getchar();

a = 141 & -121;

printf("141 AND -121 = (133) = %i\n", a);

a = -141 & -121;

printf("-141 AND -121 = (3) = %i\n", a);

b = 141 | 121;

printf("141 OR 121 = (253) = %i\n", b);

b = 141 ^ 121;

printf("141 XOR 121 = (244) = %i\n", b);

b = -1 >> 2;

printf("-1 >> 2 = (255) = %i\n", b);

getchar();

a = 111 & -12;

printf("111 AND -12 = (100) = %i\n", a);

a = -111 & -12;

printf("-111 AND -12 = (144) = %i\n", a);

b = 111 | 12;

printf("111 OR 12 = (111) = %i\n", b);

b = 111 ^ 12;

printf("111 XOR 12 = (99) = %i\n", b);

b = 111 >> 2;

printf("111 >> 2 = (27) = %i\n", b);

getchar();

}

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

Операторы ветвления

Цель лабораторной работы: приобретение навыков структурного программирования на языке C/С++ при решении задач с использованием операторов ветвления if и switch.

Задание на программирование: используя технологию структурного программирования разработать программу для решения индивидуальной задачи определения места нахождения точки с произвольно заданными координатами на координатной плоскости. В случае если точка попадает в одну их выделенных областей, программа должна определять площадь этой области.

При решении должны быть использованы условный оператор if и оператор-переключатель switch.

Порядок выполнения работы:

1) Получить у преподавателя индивидуальное задание и выполнить постановку задачи: сформулировать условие, определить входные и выходные данные.

2) Разработать математическую модель:

- привести уравнения линий, ограничивающих выделенные штриховкой области;

- описать условия попадания точки в каждую выделенную область;

- составить уравнения определения площади каждой выделенной области.

3) Построить схему алгоритма решения задачи.

4) Составить программу на языке C/С++.

5) Входные данные должны вводиться с клавиатуры по запросу.

Выходные данные (сообщения) должны выводиться на экран в развернутой форме.

6) Использовать стандартные потоковые объекты ввода/вывода cin и cout.

7) Проверить и продемонстрировать преподавателю работу программы на полном наборе тестов.

8) Оформить отчет о лабораторной работе в составе: постановка задачи, математическая модель, схема алгоритма решения задачи, текст программы, контрольные примеры.

Варианты индивидуальных заданий

1. 2.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

3. 4.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

5. 6.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

7. 8.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

9. 10.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

11. 12.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

13. 14.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

15. 16.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

17. 18.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

19. 20.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

21. 22.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

23. 24.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

25. 26.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

27. 28.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

29. 30.

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru

Пример разработки математической модели и схемы алгоритма решения задачи для варианта задания вида:

Пример программы. Формулировка задания: - student2.ru

Математическая модель (условия принадлежности точек выделенным областям)

- условие 1 (принадлежность области М1):

x2 + (y-1)2 > 1 {вне правой окружности}

x < 2 {левее линии x = 2}

x > 1 {правее линии x = 1}

y > 0 {выше линии y = 0}

y < 2 {ниже линии y = 2}

Площадь области М1:

площадь прямоугольника (2 * 1) – площадь четверти круга (πr2 / 4) = 2 – π / 4≈1.2146

- условие 2 (принадлежность области М2):

(x + 1)2 + y2 > 1 {вне левой окружности}

x > -2 {правее линии x = -2}

y < 1 {ниже линии y = 1}

x < -1 {левее линии x = -1}

y > 0 {выше оси x }

Площадь области М2:

площадь квадрата (1 * 1) – площадь четверти круга (πr2 / 4) = 1 – π / 4 ≈0.2146

- условие 3 (принадлежность области М3):

(x + 1)2 + y2 < 1 {внутри левой окружности}

x2 + y2 < 1 {внутри центральной окружности}

y > 0 {выше оси x }

Площадь области М3:

площадь сектора 1200 (πr2 / 3) – площадь треугольника ( Пример программы. Формулировка задания: - student2.ru / 2 * 0.5) =

π / 3 – Пример программы. Формулировка задания: - student2.ru / 2 *0.5 = π / 3 – Пример программы. Формулировка задания: - student2.ru / 4 =0.6142

- условие 4 (принадлежность области М4):

x2 + y2 > 1 {вне центральной окружности}

(x – 1)2 + y2 < 1 {внутри правой окружности}

x2 + (y + 1)2 > 1 {вне нижней окружности}

Площадь области М4:

площадь квадрата (1 * 1) - четверть площади круга (πr2 / 4) – 2*(площадь прямоугольника (1 * (1 - Пример программы. Формулировка задания: - student2.ru /2)) – площадь сектора 600 (πr2 / 6) + площадь треугольника ( Пример программы. Формулировка задания: - student2.ru / 2 * 0.5)) = 1 - π / 4 – 2 * (1 - Пример программы. Формулировка задания: - student2.ru / 4 - π / 6) = Пример программы. Формулировка задания: - student2.ru / 2 + π / 3 - π / 4 – 1 ≈ 0.1278

- условие 5 (принадлежность области М5):

x2 + (y+1)2 > 1 {вне нижней окружности}

y > -2 {выше линии y = -2}

y < -1 {ниже линии y = -1}

x > -1 {левее линии x = -1}

x < 0 {левее оси y}

Площадь области М5:

площадь квадрата (1 * 1) – площадь четверти круга (πr2 / 4) = 1 – π / 4 ≈ 0.2146

Пример программы. Формулировка задания: - student2.ru

Схема алгоритма решения

 
  Пример программы. Формулировка задания: - student2.ru

да нет

       
  Пример программы. Формулировка задания: - student2.ru
    Пример программы. Формулировка задания: - student2.ru
 

да нет

           
    Пример программы. Формулировка задания: - student2.ru
      Пример программы. Формулировка задания: - student2.ru
  Пример программы. Формулировка задания: - student2.ru
 
 

да нет

               
    Пример программы. Формулировка задания: - student2.ru
      Пример программы. Формулировка задания: - student2.ru
    Пример программы. Формулировка задания: - student2.ru
 
i=1
 
 
 

Пример программы. Формулировка задания: - student2.ru да нет

               
    Пример программы. Формулировка задания: - student2.ru
      Пример программы. Формулировка задания: - student2.ru
    Пример программы. Формулировка задания: - student2.ru
  Пример программы. Формулировка задания: - student2.ru
 
 
 

да нет

Пример программы. Формулировка задания: - student2.ru

Пример программы. Формулировка задания: - student2.ru

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru 1

 
  Пример программы. Формулировка задания: - student2.ru

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru 2

 
  Пример программы. Формулировка задания: - student2.ru

Пример программы. Формулировка задания: - student2.ru 3

 
  Пример программы. Формулировка задания: - student2.ru

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru 4

Пример программы. Формулировка задания: - student2.ru

Пример программы. Формулировка задания: - student2.ru Пример программы. Формулировка задания: - student2.ru 5

       
    Пример программы. Формулировка задания: - student2.ru
 
  Пример программы. Формулировка задания: - student2.ru

Наши рекомендации