У нас: 141825 рефератів
Щойно додані Реферати Тор 100
Скористайтеся пошуком, наприклад Реферат        Грубий пошук Точний пошук
Вхід в абонемент


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

Оволодiння прийомами складання розгалужених алго-

ритмiв i програм, освоїння операторiв: переходу, умовного, перемикача.

Мета роботи: оволодiння прийомами складання розгалужених алго-

ритмiв i програм, освоїння операторiв: переходу, умовного, перемикача.

Завдання: знайти при у1 = 0.375 та у2 = 0.506 якщо відомо що ; а = 0.265; b = -0.883.

Короткі теоретичні відомості:

Розгалуженою називаїться програма, яка маї переходи. Порядок

виконання єє операторiв визначаїться поставленими умовами.

Для органiзацiє розгалужень в програмах мовою Сi використовую-

ться такi оператори:

- умовний оператор: IF (вираз) оператор1; ELSE оператор2;

Вiн працюї так: якщо значення виразу не дорiвнюї нулю, то далi

виконуїться оператор1, iнакше - оператор2, якщо ж оператора2 не-

маї, то - наступний оператор програми;

- оператор переходу: GOTO мiтка;

При його виконаннi вiдбуваїться безумовний перехiд на оператор

з вiдповiдною мiткою. Мiтка представляї собою iдентифiкатор;

- оператор-перемикач: SWITCH(вираз)

{оголошення;

CASE константа: оператори1;

CASE константа: оператори2;

... ...

DEFAULT: операториХ;}

Тiло перемикача представляї собою блок, в ньому можуть мiсти-

тися власнi оголошення даних. Його виконання починаїться з обчис-

лення виразу, який може бути тiльки типу int. (Нагадаїмо, що лi-

тернi константи типу char можуть сприйматися як коди лiтер i мати

тип int). Подальше виконання операторiв починаїться вiд того мiс-

ця, де константа спiвпадаї зi значенням виразу, до слова default

або, якщо його немаї, - до кiнця блока, незважаючи на те, що ниж-

че трапляться оператори з iншими константами - мiтками. Операто-

риХ виконуються, якщо значення виразу не спiвпадаї нi з однiїю

константою;

- оператор припинення BREAK;

Дiя цього оператора приводить до виходу за межi блока.

Блок-схема матиме такий вигляд

Початок

а = 0.265; b = -0.883.

ввід у

так

ні

так

ні

друк друк

“не існує” l

Кінець

Ідентифікація змінних:

Змінна | Ідентифікатор

a | a

b | b

y | y

l | l

Програма:

Варіант №1

if |

Варіант №2

switch

#include <math.h>

main()

{

float a=0.265,b=-0.883,y,l;

clrscr();

printf("Введіть аргумен y=");

scanf("%f",&y);

if((y<abs(b)/2)&&(y>a))

{

l=a*y+y*(pow(sin(y+b),2));

}

else

if(y>=abs(b))

{

l=pow(y,2)*a/(2.5+y)+b*y/a;

}

else

{

printf("Не існує");

}

printf("При y=%.3f: l=%f\n",y,l);

getch();

} | include <math.h>

main()

{

float a=0.265,b=-0.883,y,l;

int c;

clrscr();

printf("Введіть аргумент y=");

scanf("%f",&y);

c=y;

if((y<abs(b)/2)&&(y>a)) c=1;

if(y>abs(b)) c=2;

switch(c)

{

case 1: l=a*y+y*(pow(sin(y+b),2)); break;

case 2: l=pow(y,2)*a/(2.5+y)+b*y/a; break;

default: printf("Не існує");

exit();

}

printf("При y=%.3f: l=%f\n",y,l);

getch();

}

Результати:

Pru y = 0.375 l = -1.236566

Pru y = 0.506 l = -1.663459

Висновок: Я оволодiв прийомами складання розгалужених алгоритмiв i програм, освоїв оператори: переходу, умовного перемикача.