21772

Условный оператор if и оператор выбора switch

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

Информатика, кибернетика и программирование

Задача лабораторной работы состоит в практическом освоении оператора условия и выбора, совмещения их с функциями ввода и вывода, математическими функциями в одном приложении, написание приложения по индивидуальному варианту.

Русский

2014-03-24

785.71 KB

16 чел.

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

по дисциплине “Языки программирования”

Лабораторная работа № 2. Условный оператор if и оператор выбора switch

Цель работы

Целью данной лабораторной работы является изучение на практике условного оператора и оператора выбора языка ANSI C.

Задача лабораторной работы

Задача лабораторной работы состоит в практическом освоении оператора условия и выбора, совмещения их с функциями ввода и вывода, математическими функциями в одном приложении, написание приложения по индивидуальному варианту.

Задание

Модифицировать программу из лабораторной работы №1 с учетом следующих требований:

а) Осуществить проверку входных значений на принадлежность области определения функции (e.g. функция y = log(x) определена для x ≥ 0). Вывести сообщение об ошибке, если входные значения не принадлежат области определения функции.

б) Добавить ввод значения для выбора функции (1 - вычислить функцию G, 2 - вычислить функцию F, 3 - вычислить функцию Y; при ином введенном значении вывести сообщение об ошибке).

Блок-схема основной программы и дополнительных функций

Составим схему программы

Листинг программы:

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#include <conio.h>

const double PI = 3.14159265;

void f_G(float a, float x)

{

 float G;

 float gg;

 gg = 25 * a * a + 30 * a * x + 9 * x * x;

 

 if (gg == 0 )

 {

   printf("G - Zero division\n");

 }

 else

 {

 G = 9 * (7 * a * a - 19 * a * x + 10 * x * x) / gg;

   printf("G = %f\n",G);

 }

 return;

}

void f_F(float a, float x)

{

 float F;

 float ff;

 ff = 9 * a * a - 13 * a * x - 10 * x * x;

 F = cos(ff);

 printf("F = %f\n",F);

 return;

}

void f_Y(float a, float x)

{

 float Y;

 float yy;

 yy = -80 * a * a - 46 * a * x + 21 * x * x + 1;

 if (yy<0)

 {

   printf("Y - Argument negativ\n");

 }

 else

 {

   Y = logf(yy)/logf(10.0);

   printf("Y = %f\n",Y);

 }

 return;

}

void menu(float a, float x)

{

 int ch;

 do 

 {

   system("cls");

printf("a = %f ,  x = %f\n",a,x);

   printf("******MENU*******\n");

   printf("F1. Function 1\n");

   printf("F2. Function 2\n");

   printf("F3. Function 3\n");

   printf("ESC. Exit...\n");

   ch = _getch();

   switch (ch)

   {

   case 0: { switch (_getch())

              {

               case 59:      //F1

                 f_G(a,x);

                 system("pause");

                 break;

               case 60:      //F2

                 f_F(a,x);

                 system("pause");  

                 break;                                

               case 61:     //F3

                 f_Y(a,x);

                 system("pause");

                 break;

              }

           break;   

           }

   }

 } while (ch !=27);

 return;                 

}

int main()

{

 printf("Hello world!\n");

 _flushall();

 float a,x;

 printf("Enter a:");

 scanf_s("%f",&a);

 _flushall();

 printf("Enter x:");

 scanf_s("%f",&x);

 

 menu(a,x);

 

 

 system("pause");

 return 0;

}


Тестирование программы


Выводы по работе

В ходе выполнения лабораторной работы я изучил особенности  написания  программы  на языке ANSI C, в основе которой лежит алгоритм структуры с условиями и выбора,  а также основы работы в интегрированной среде MS Visual Studio 2010.


 

А также другие работы, которые могут Вас заинтересовать

10055. Использование искусственных нейронных сетей в задачах распознавания атак на компьютерные системы 103 KB
  Использование искусственных нейронных сетей в задачах распознавания атак на компьютерные системы Статья посвящена вопросам применения искусственных нейронных сетей при разработке методов и средств защиты информации. Проведена оценка возможности использования изв...
10056. Безопасность программного обеспечения, созданного с использованием семейства технологий COM, DCOM, COM+ 132 KB
  Безопасность программного обеспечения созданного с использованием семейства технологий COM DCOM COM Введение Важнейшей предпосылкой использования технологии COM и базирующихся на ней технологий DCOM и COM является создание повторно используемых компонентов которые можн
10057. Концепція використання марківських процесів для контролю атак на програмне забезпечення комп’ютерних систем та мереж 112.5 KB
  Концепція використання марківських процесів для контролю атак на програмне забезпечення компютерних систем та мереж В теперішній час забезпечення безпеки інформації що циркулює в територіально розподілених компютерних системах стає одним із найбільш важливих фак...
10058. Понятие риска 34 KB
  Понятие риска. Существующая литература характеризуется неоднозначностью в трактовке черт свойств и элементов риска в понимании его содержания соотношения объективных и субъективных сторон. Разнообразие мнений о сущности риска объясняется в частности многоаспект...
10059. Характеристика экспертных процедур 42.5 KB
  Характеристика экспертных процедур Эвристические методы или методы экспертных оценок методы использующие результаты опыта и интуицию. Особенностью эвристических методов и моделей является отсутствие строгих математических доказательств оптимальности получаемы...
10060. Общая схема экспертизы 40.5 KB
  Общая схема экспертизы Общая схема экспертных вопросов включает следующие основные этапы: подбор экспертов и формирование экспертных групп, формирование опросов и составление анкет, работу с экспертами, формирование правил определения суммарных оценок н
10061. Риски в окружающем нас мире 30 KB
  Риски в окружающем нас мире. Риски и связанная с ними неопределенность постоянно окружают нас в реальной действительности. Поэтому мы интуитивно понимаем смысл этих понятий без дополнительных объяснений со стороны знающих людей толкового словаря или учебников. Доста...
10062. Риск и неопределенность 24.5 KB
  Риск и неопределенность. Деятельность субъекта хозяйствования постоянно сопряжена с неопределенностью ситуаций которые обусловливают принятие возможных альтернативных решений и действий в условиях риска. Возникают также ситуации связанные с риском когда любой ал...
10063. Покрытие убытка на основе поддержки государственных и/или муниципальных органов 25 KB
  Покрытие убытка на основе поддержки государственных и/или муниципальных органов Метод покрытия убытка на основе поддержки государственных и/или муниципальных органов Budget support означает снижение участия самой фирмы в возмещении ущерба за счет полной или частичной пер