ЗАДАНИЕ. Заменить исходный шаблон программы следующим текстом, до строки с комментарием //конец шаблонаЛР1

Заменить исходный шаблон программы следующим текстом, до строки с комментарием //конец шаблонаЛР1

// шаблонЛР1.cpp //

#include "stdafx.h"

#include <conio.h>

#include <math.h>

int _tmain(int argc, _TCHAR* argv[])

{

float

x=0.1 // значение аргумента

,y=0 // значение функции

,y2 ,y3 //дополнительные переменные

,x1 ,x2 //корни уравнения

,a=3 ,b=-5 ,c=1 //коэффициенты уравнения

,p1=3 ,p2=4 ,p3=5//длины сторон треугольника

,pp //полупериметр треугольника

,s; //площадь треугольника

// 1. вычисление функуии y=f1(x)

y=sin(x);

printf("1.\tx=%f\ty=%f\n\n",x,y);

// 2.1 вычисление функуии y=f2(x)

printf("2.1\tx=%f\ty=%f\n\n",x,y);

// 2.2 вычисление функуии y=f2(x) по схеме Горнера

printf("2.2\tx=%f\ty=%f\n\n",x,y);

// 2.3 вычисление функуии y=f2(x) с использованием дополнительных переменных y2 и y3

printf("2.3\tx=%f\ty2=%f\ty3=%f\ty=%f\n\n",x,y2,y3,y);

// 3.1 вычисление корней квадратного уравнения x1 и x2

printf("3.1\tx1=%f\tx2=%f\n\n",x1,x2);

// 3.2 вычисление корней квадратного уравнения одним оператором printf

// 4. вычисление площади треугольника по формуле Герона

printf("4.\tp1=%f\tp2=%f\tp3=%f\ts=%f\n\n",p1,p2,p3,s);

//*/

getch();

return 0;

}//конец шаблонаЛР1

Поставьте пару символов «/*» в начале строки с номером 2.1 – все нижние строки до строки с оператором getch(); превратятся в комментарий. Создайте исполняемую программу и выполните. Для завершения работы программ нажмите любую клавишу.

ДАЛЕЕ ВЫПОЛНЯТЬ В ПРИВЕДЁННОМ ПОРЯДКЕ

1. Работа по пункту 1. шаблона

- в операторе y=sin(x); домножте синус на e-x/5, используя стандартную функцию exp.

- постройте в OpenOffice Calc график функции e-x/5sin x и протестируйте программу для характерных точек этой функции (значения функции в точках минимумов, максимумов и точках, где функция меняет знак), сравнивая результат работы программы с соответствующими значениями функции из построенной таблицы. Значения переменной x программы меняйте в её определении.

2. Работа по пункту 2.1 шаблона

- переместите пару символов «/*» к началу строки с номером 2.2.

- после строки шаблона с номером 2.1 поместите оператор, вычисляющий значение функции y=3x4-4x3+2x2-7x+1, используя для возведения в степень xn стандартную функцию pow(x,n),

- придумайте несколько значений x для тестирования и проверьте правильность вычисленных программой значений, меняя значение переменной x в её определении.

3. Работа по пункту 2.2 шаблона

- переместите пару символов «/*» к началу строки с номером 2.3.

- после строки шаблона с номером 2.2 поместите оператор, вычисляющий значение функции y=3x4-4x3+2x2-7x+1, преобразовав её выражение к скобочному виду вынесением x за скобки.

- проверьте правильность вычисленных программой значений функции сравнением результатов, выводимых в окно программы по пунктам 2.1 и 2.2.

4. Работа по пункту 2.3 шаблона

- переместите пару символов «/*» к началу строки с номером 3.1.

- после строки шаблона с номером 2.3 поместите оператор, вычисляющий значение функции y=3x4-4x3+2x2-7x+1 с привлечением двух вспомогательных переменных y2 и y3, исключив использование стандартных функций.

- проверьте правильность вычисленных программой значений функции сравнением результатов, выводимых в окно программы по пунктам 2.1 и 2.3.

5. Работа по пункту 3.1 шаблона

- переместите пару символов «/*» к началу строки с номером 3.2.

- после строки шаблона с номером 3.1 поместите оператор, вычисляющий корни x1 и x2 квадратного уравнения ax2+bx+c=0.

- придумайте несколько значений переменных a, b и c для тестирования и проверьте правильность вычисленных программой значений, меняя значения переменных a, b и c в их определениях.

6. Работа по пункту 3.2 шаблона

- переместите пару символов «/*» к началу строки с номером 4.

- после строки шаблона с номером 4. поместите оператор printf, вычисляющий выражения для корней и выводящий вычисленные значения. Протестируйте работу программы.

. Работа по пункту 4 шаблона

- переместите пару символов «/*» к началу строки с пару символов «*/».

- после строки шаблона с номером 4. поместите операторы, вычисляющие по значениям длин сторон треугольника p1, p2 и p3 его полупериметр pp и площадь s по формуле Герона.

- придумайте несколько значений переменных p1, p2 и p3 для тестирования и проверьте правильность вычисленных программой значений, меняя значения переменных p1, p2 и p3 в их определениях.

СПРАВКА

При выполнении следующих заданий следует учитывать следующее:

- компилятор Си различает прописные и строчные буквы в именах переменных

- бинарные арифметические операции одного приоритета выполняются в порядке слева направо

- функции и выражения в круглых скобках вычисляются в первую очередь, начиная с самых внутренних

- вещественные константы можно задавать в естественной форме
<целая часть числа><точка><дробная часть числа>, например, 25.736, и в экспоненциальной форме <мантисса (целое число или вещественное в естественной форме)> <буква латинская E или e><порядок (целое число)>, что эквивалентно <мантисса>,умноженная на 10 в степени <порядок>, например, 25.736 можно записать и так 25736e-3, или так 25.736e0, или так
0.25736e2. или .....

- вещественные константы имеют тип double.

- для приведения переменной (или константы, или результата вычислений) к другому типу перед ней следует записать в круглых скобках имя этого типа, например, (float)2.4

- чтобы узнать допустимые сочетания типов функции и её аргументов (параметров) следует набрать имя функции и открывающую скобку. При этом появится всплывающая подсказка с набором допустимых сочетаний типов параметров

- аргументы тригонометрических функций задавать в радианах; число π приложении Excel - ПИ(), а в C++ M_PI, но перед директивой #include "math.h" следует записать
#define _USE_MATH_DEFINES M_PI

Наши рекомендации