ТОП 10:

Теоретичні відомості.(PASCAL)



Алгоритмічна мова ПАСКАЛЬ є мовою структурного програмування. Одна з базових структур для опису алгоритмів – це структура типу розгалуження. В мові ПАСКАЛЬ для опису цієї структури є оператор:

IF логічний вираз THEN оператор1 ELSE оператор 2;

Якщо оператори є складними, тоді використовуються операторні дужки BEGIN……END.

IF логічний вираз THEN

BEGIN оператор 1; оператор 2

END

ELSE

BEGIN оператор3; оператор4

END

Структури розгалужень можуть вкладатися одна в одну. Мовою ПАСКАЛЬ ця структура описується так:

IF умова1 THEN IF умова2 THEN оператор1

ELSE оператор 2

ELSE IF умова3 THENоператор3

ELSE оператор4;

Символ”;” ставиться один раз в кінці оператора. Кожне ELSE бажано писати під тим THEN, до якого воно відноситься.

 

Теоретичні відомості.(C)

Операції відношення і логічні операції.

Операції відношення використовуються для порівняння. Це такі операції:

< менше

<= менше або рівне

> більше

>= більше бо рівне

== рівне

!= не рівне

Логічні операції:

&& i (AND)

|| або (OR)

! не (NOT)

Ці операції використовуються в умовних виразах (умовах).

Приклади умовних виразів:

 

а < 0, 101 >= 105, ‘a’==’A’, ‘a’!=’A’

Кожна умова перевіряється: істинна вона чи хибна (true або false). У мові С немає логічного (Boolean) типу. Тому результат –цілочисельний. True відповідає ненульовій величині, а false – нульовій величині.

Операції відношення і логічні операції мають пріоритет нижчий, ніж арифметичні операції. Це значить, що вираз 12 > 10 + 1 розглядається як вираз 12 > (10+1).

Пріоритет логічних операцій і операцій відношення такий:

вищий !
>, <, >=, <=
  ==, !=
  &&
нижчий ||

Тут дужки теж мають найвищий пріоритет

 

Умовний оператор if.

Повна форма цього оператора така:

if (умова) оператор;

else оператор;

Якщо значення умови “істинне”, то виконується оператор (блок), що іде за умовою. Якщо умова – “хибна”, то виконується оператор за ключовим словом else.Друга частина (else) може бути відсутня.

В якості умови може бути будь-який вираз. Перевіряється тільки, чи значення його є ненульовим, чи нульовим.

Часто зустрічається необхідність використовувати конструкцію if-else-if:

if (умова) оператор;

else if (умова) оператор;

else if(умова) оператор;

. . .

else оператор;

Умови перевіряються згори донизу. Як тільки якась умова = “істинна”, виконається “оператор”, а вся інша частина буде проігнорована.

 

Щоб перевірити, чи рівне нулю число, треба записати

if (x==0) printf(“Число рівне нулю”);

else printf(“Число не рівне нулю”);

Той самий результат можна отримати так:

if (!x) printf(“Число рівне нулю”);

else printf(“Число не рівне нулю”);

 

 

Приклад програми

 

Обчислити

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

program lab3;

Var

y,b,c,x:real;

Begin

write ('Введіть значення b,c,x;');

readln (b,c,x);

if x<=4 then y:=b*x+c

else if (x<4) and (x>-4) then y:=2*b*x

else if (c<>0) and (x>=4) then y:=b*x/c

else y:=1;

writeln (‘b=’,b:4:2,'c=',c:4:2, ‘x=’,x:4:2);

writeln ('результат:y=',y:4:2);

End.

 

 

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

 

#include <stdio.h>

/*розгалуження*/

Main()

{

float y,b,c,x;

printf(“Введіть значення b,c,x:”);

scanf(“%f%f%f”,&b,&c,&x);

if (x<=4) y=b*x+c;

else if (x<4 && x>-4) y=2*b*x;

else if (c!=0 && x>=4) y=b*x/c;

else y=1;

printf(“b=%7.3f c=%7.3f x=%7.3f\n”,b,c,x);

printf(“результат: y=%7.3f\n”,y);

}


Блок-схема алгоритму

 
 


Так

ні

Так

ні

Так

ні


Варіанти завдань

1.

 

2.

 

 

3.

4.

 

 

5.

 

6.

 

 

7.

 

 

8.

 

 

9.

 

 

10.

 

 

11.

 

 

12.

 

13.

14.

 

 

15.

 

 

16.

 

 

17.

 

18. За віком клієнта дозволити чи відмовити йому придбати горілчані вироби з відповідними поясненнями (>=21- дозволити, <21-відмовити).

19. Визначити, чи належить число інтервалу (0,7].

20. Дані два дійсних числа. Вивести на екран перше число, якщо воно більше другого, та обидва числа, якщо це не так.

21. Знайти максимальне з двох чисел.

22. Знайти мінімальне з двох чисел.

23. Знайти мінімальне та максимальне з трьох чисел.

24. Дані дійсні числа a, b, c. Перевірити , чи виконуються нерівності a<b<c.

25. З’ясувати, чи дане число ділиться на 2 (двома способами).

26. З’ясувати, чи ділиться дане число на 6.

27. З’ясувати, чи ділиться дане число чи на 4 чи на 3, і на 4 і на одночасно.

28. Дані дійсні числа x, y. З’ясувати, чи належить точка з координатами x,y зашрихованій частині площини (малюнок викладача) .

29. СП для розв’язання рівняння ax=b.

30. З’ясувати скільки коренів має квадратне рівняння.

31. Дані дійсні числа а, в, с ( довжина у см). З’ясувати, чи можливо побудувати трикутник з такими сторонами.

32. Дані дійсні числа а, в, с ( градуси ). З’ясувати чи можливо побудувати трикутник з такими кутами.

33. За номером місяця з’ясувати кількість днів у ньому.

34. За номером місяця з’ясувати його назву.

35. За назвою дня тижня визначити кількість уроків у цей день.

36. За віком людини визначити назву періоду життя ( раннє дитинство, дитинство, отроцтво, юність, молодість, зрілість, похилий вік, старість).

37. Дане ціле число. Вважати його віком та дати йому відповідне найменування російською мовою (год,года, лет).

38. Визначити за балом оцінки її словесне найменування.

 

 

Контрольні запитання:

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

2. Які дії виконуються оператором переходу?

3. Що таке обчислювальний процес розгалуженої структури? Як організувати розгалуження: а) на дві вітки;

б) на три вітки?

4. Чому необхідно при відлагодженні програми тестувати всі вітки програми?

 


Лабораторна робота № 4.







Последнее изменение этой страницы: 2016-09-05; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.235.74.184 (0.009 с.)