21772

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

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

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

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

Русский

2014-03-24

785.71 KB

15 чел.

Лабораторная работа № 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.


 

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

17802. МІЖНАРОДНА ЕКОНОМІЧНА СИСТЕМА 275.5 KB
  ТЕМА 1. МІЖНАРОДНА ЕКОНОМІЧНА СИСТЕМА Предмет курсу €œміжнародна економіка€. Міжнародна економічна система: сутність та структура. Міжнародні економічні відносини. Міжнародна економічна діяльність. Сукупність національних економік. Класифікація країн за рівнем со
17803. Міжнародна торгівля 1.42 MB
  Міжнародна торгівля Місце міжнародної торгівлі в МЕВ. Світовий ринок товарів і послуг та особливості його розвитку в сучасних умовах. Показники масштабів структури динаміки й результативності міжнародної торгівлі. Еволюція теорій міжнародної торгівлі. Вид
17804. МІЖНАРОДНІ ІНВЕСТИЦІЇ 565.5 KB
  Причини і суть міжнародного руху капіталу. Форми іноземних інвестицій. Транснаціональні корпорації та їх роль в сучасному розвитку міжнародних економічних відносин. Стан та проблеми іноземного інвестування в Україні.
17805. МІЖНАРОДНИЙ КРЕДИТ 170 KB
  Тема 4. МІЖНАРОДНИЙ КРЕДИТ Міжнародний кредит та його роль в міжнародних економічних відносинах. Форми та види міжнародного кредиту. Світовий фінансовий ринок. Міжнародні валютнофінансові організації. Проблема заборгованості та можливі шляхи її розв’язання. 1. М...
17806. МІЖНАРОДНА МІГРАЦІЯ РОБОЧОЇ СИЛИ 336 KB
  Тема 5. Міжнародна міграція робочої сили Міграція населення і міграція робочої сили. Суть і чинники міжнародної міграції робочої сили. Види міжнародної міграції робочої сили. Види міжнародної міграції: кінцева тимчасова сезонна маятникова добровільна примусова ро...
17807. СВІТОВА ВАЛЮТНА СИСТЕМА 381.5 KB
  ТЕМА 6. СВІТОВА ВАЛЮТНА СИСТЕМА Структура сучасної валютної системи. Національна міжнароднарегіональна та світова валютна система. Основні елементи національної валютної системи. Основні елементи світової валютної системи. Поняття валюти та її види. Конвертовані
17808. МІЖНАРОДНІ РОЗРАХУНКИ І ПЛАТІЖНИЙ БАЛАНС 232 KB
  TЕМА 7. Міжнародні розрахунки і платіжний баланс Поняття міжнародних розрахунків. Форми міжнародних розрахунків та їх порівняльна характеристика. Платіжний баланс його структура і методологія складання. Платіжний баланс України стан структура динаміка. Міжна
17809. МІЖНАРОДНА ЕКОНОМІЧНА ІНТЕГРАЦІЯ 666 KB
  Тема 8. міжнародна економічна інтеграція Поняття та основні риси міжнародної економічної інтеграції та глобалізації. Передумови й умови її становлення як якісно нового рівня МЕВ. Форми міжнародної інтеграції. Сучасні особливості процесів міжнародної економічної інте
17810. ГЛОБАЛІЗАЦІЯ ТА ЕКОНОМІЧНИЙ РОЗВИТОК 239 KB
  Тема 9. ГЛОБАЛІЗАЦІЯ ТА ЕКОНОМІЧНИЙ РОЗВИТОК Сутність глобалізації. Причини та основні ознаки глобалізації. Суперечливість глобалізаційного процесу. Фінансова глобалізація. Світові фінансові кризи. Глобальні проблеми та шляхи їх вирішення. Демографічний вибух та по...