Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод_ДЗ1.doc
Скачиваний:
6
Добавлен:
26.08.2019
Размер:
162.82 Кб
Скачать

Пример 2.2. Вычислить значение функции 2

F(x)=

Постановка задачи

Исходными данными для этой задачи являются значения переменной x; x- действительное число. Значение х вводится с клавиатуры.

Выходные данные - значение функции F. F – действительное число. Значение функции выводится на экран монитора.

Метод решения

Как и в предыдущей задаче, вначале программы проверяем значение х. Если х - отрицательное число, вычислим его модуль, а затем извлечем корень. Если же х – положительное число, то сразу вычисляем значение функции, т.е. извлекаем корень из х.

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

Текст программы

/*----------------------------------------------

Условный оператор (сокращенная форма).

----------------------------------------------*/

#include <stdio.h>

#include <math.h>

main()

{ float x, F;

printf("\nВычисление значения функции");

//ввод исходных данных

printf("\nВведите значение аргумента x=");

scanf("%f",&x);

//вычисления

if (x<0) x=fabs(x);

F=sqrt(x);

//вывод результата

printf("\nЗначение функции F=%f", F);

}

2.3. Составной оператор

Часто при программировании разветвляющихся (а также циклических) алгоритмов требуется выполнить в какой-либо из ветвей не одно действие, а несколько. В этом случае эти действия следует объединить в так называемый составной оператор. Рассмотрим пример использования составного оператора.

Пример 2.3. Вычислить значение функции 3

F(x)=

Постановка задачи

Исходными данными для этой задачи являются значения переменной x; x - не отрицательное действительное число. Значение х вводится с клавиатуры.

Выходные данные - значение функции F (действительное число). Значение функции выводится на экран монитора.

Метод решения

Прежде чем вычислять значение квадратного корня, необходимо проверить число х. Если х – неотрицательное число, то можно извлечь квадратный корень из х, полученное значение присвоить переменной F и вывести результат на экран. Если х – отрицательное число, то следует вывести сообщение о том, что из отрицательного числа нельзя извлечь квадратный корень. Таким образом, в ветви «да» условного оператора нужно выполнить два действия, следовательно, их надо объединить в составной оператор.

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

Текст программы

/*---------------------------------------------------------------------------------------

Вычисление значения функции. Условия. Составной оператор .

---------------------------------------------------------------------------------------*/

#include <stdio.h>

#include <math.h>

main()

{ float x, f;F

printf("\nВычисление значения функции");

//ввод исходных данных

printf("\nВведите значение аргумента x=");

scanf("%f",&x);

if (x>=0) { F=sqrt(x);

//вывод результата

printf("\nЗначение функции F=%f", F);

}

else

printf ("\nНельзя извлечь корень из х<0");

}

2.4. Вложенные составные операторы

При программировании сложных и объемных вычислений часто используются вложенные операторы, например, один составной оператор может выполняться внутри другого.

Пример 2.4. Решение квадратного уравнения

Найти действительные корни квадратного уравнения вида: ax2+bx+c=0.

Постановка задачи

Исходными данными для этой задачи являются действительные коэффициенты a, b и с. Значения их вводятся с клавиатуры.

Выходные данные – действительные корни уравнения x1 и x2, если они есть. Значения корней выводятся на экран монитора. Если корней нет, то выводится соответствующее сообщение.

Метод решения

Нахождение корней квадратного уравнения производится по известным из школьного курса математики формулам:

где D=b2-4ac – дискриминант уравнения.

Если D<0, уравнение не имеет действительных корней.

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