Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК-1_АЯП_рус.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.19 Mб
Скачать

Void main(void)

{

double rezult,dop,a,b,c;

clrscr( ); /* очистка экрана */

puts("Программирование линейных алгоритмов.");

puts("==================================");

dop=fabs(y-x);

a=pow(x,y+1)+exp(y-1);

b=1+x*fabs(y-tan(z));

c=0.5*pow(dop,2)-pow(dop,3)/3;

rezult=a/b*(1+dop)+c;

printf("\a\n Ответ: rezult=%lf, Press any key...", rezult);

getch( ); /* задержка до нажатия любой клавиши */

}

Основная литература: 1[53-68], 2[54-75]

Дополнительная литература:1,2,3,5

Контрольные вопросы:

1. Чем отличаются унарные от бинарных операции?

2. Привести пример префиксных и постфиксных операций.

3. Привести пример инкрементных и декрементных операций.

4. Поразрядные операции

5. Прочие операции и дополнительные операции присваивания.

Лекция 4. Программирование разветвляющихся алгоритмов Условный оператор. Составной оператор. Оператор варианта (выбора)

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

Условный оператор

Условный оператор реализует средствами языка схемный блок «решение» и позволяет разделить выполнение программы на две взаимоисключающие ветви. Существует два варианта записи условного оператора: полная и краткая форма.

Синтаксис полной формы записи условного оператора:

if (логическое выражение) оператор 1;

else оператор 2 ;

оператор 3;

где - if, else –зарезервированные слова;

- логическое выражение - выражение, возвращающее логическое значение и записанное по правилам языка С;

- <оператор 1> , <оператор 2> , <оператор 3> - любые операторы языка С.

Данный оператор выполняется следующим образом. Сначала вычисляется выражение, стоящее после служебного слова if. Результат выражения интерпретируется как логическое значение. Если значение выражения есть true (истина, ветвь «да» на схеме), то выполняется <оператор 1>, а <оператор 2> пропускается и затем выполняется следующий за условным оператором <оператор 3>.

Если значение логического выражения равно false, наоборот, <оператор 1 > пропускается, а выполняется <оператор 2>. Затем управление передается на <оператор 3> - следующий за условным оператором оператор программы.

Например:

float x, y, pmax ;

// инициализация переменных x,y

………….

if (x >=y) pmax = x;

else

pmax= y;

При выполнении этого фрагмента переменная pmax получит значение большего из двух чисел x и y.

Теперь рассмотрим сокращенную схему условного оператора.

Синтаксис краткой формы записи условного оператора:

If (логическое выражение) оператор 1;

оператор 2 ;

Если оператор if записан в сокращенной форме, то при значении true логического выражения выполняется <оператор 1>, в противном случае этот оператор пропускается и выполняется следующий за оператором if <оператор 2>. Например:

float x, y, pmax ;

// инициализация переменных x,y

…………..

if (x >=y) pmax = x;

pmax = y ;

В этом примере pmax всегда будет иметь значение переменной y.

Рассмотрим еще один пример использования краткой формы условного оператора.

#include <stdio.h>