Проверьте программу табулирования функции - C (СИ)
Формулировка задачи:
Табулирование функции (sin(sqrt(3.2+x)))/(a+cos(x+pi/7)) при а=2,4 10<=x<=50, dx=10. значения вводить с клавиатуры
#include <stdio.h>
#include <math.h>
main()
{
float x,a,dx,pi=3.1415,xmin,xmax,y;
printf ("enter a");
scanf ("%f",&a);
printf ("enter xmin");
scanf ("%f",&xmin);
printf ("enter xmax");
scanf ("%f",&xmax);
printf ("enter dx");
scanf ("%f",&dx);
x=xmin;
while (x<=xmax)
{
x=x*pi/180.0;
y=f(x);
print ("x=%4.1f f(x)=%6.3f",x,y);
x+=dx;
}
return 0;
}Решение задачи: «Проверьте программу табулирования функции»
textual
Листинг программы
#include <stdio.h>
#include <math.h>
#define PI 3.1415 // ГЏГ€ îïðåäåëÿòü ëó÷øå ГІГ*ГЄ
float f(float x, float a) // ëó÷øå Г*ГҐ ïåðåäîâГ*ГІГј Г±Г*ìè ïåðåìåГ*Г*ûå
// Г* ïåðåäîâГ*ГІГј ГіГЄГ*Г§Г*òåëè Г*Г* Г*ГЁГµ èëè ññûëêè
// îäГ*Г*ГЄГ® Гў òâî¸ì ñëó÷Г*ГҐ ГЅГІГ® Г*ГҐ ïðèГ*Г¶ГЁГЇГЁГ*ëüГ*Г®
{
return (float)(sin(sqrt(3.2+x)))/(a+cos(x+PI/7));
}
int main() // int îòñóòñòâîâГ*Г«
{
float x,a,dx,xmin,xmax,y, temp;
// Г*ГҐГІ ïðîâåðêè Г*Г* ââîä ëåâûõ Г§Г*Г*Г·ГҐГ*ГЁГ©, Г*Г® ìîæåò Г®Г* ГЁ Г*ГҐ Г*óæåГ*
printf ("enter a");
scanf ("%f",&a);
printf ("enter xmin");
scanf ("%f",&xmin);
printf ("enter xmax");
scanf ("%f",&xmax);
printf ("enter dx");
scanf ("%f",&dx);
x=xmin;
while (x<=xmax)
{
temp=x*PI/180.0; // Г§Г*Г*Г·ГҐГ*ГЁГҐ ïðèñâГ*ГЁГўГ*Г© ñòîðîГ*Г*ГҐГ© ïåðìåГ*Г*îé
y=f(temp,a); // ÌåäâåäÚ ГЇГ°Г*Гў. ãäå ГґГіГ*ГЄГ¶ГЁГї? ГЁ Г*ГҐГІ ГІГ*êîãî print, Г*Г*äî printf
// åñëè ГґГіГ*ГЄГ¶ГЁГї âû÷èñëÿåò (sin(sqrt(3.2+x)))/(a+cos(x+pi/7))
// ГІГ® Г*ГҐ õâГ*ГІГ*ГҐГІ ГЇГ*Г°Г*ìåòðГ* Г*
printf("\nx=%4.1f f(x)=%6.3f",x,y);
x+=dx;
}
return 0;
}
Объяснение кода листинга программы
- Объединение тегов #include
и #include позволяет использовать функции ввода-вывода и математические функции в программе. - Определение PI равно 3.1415, что является приближенным значением числа Пи.
- Функция f(x,a) принимает два аргумента: x и a.
- В функции main() используются переменные: a, xmin, xmax, dx, x, y, temp.
- Ввод значений переменных a, xmin, xmax, dx осуществляется с помощью функции scanf().
- Значение x установлено равным xmin перед началом цикла.
- Цикл while выполняется до тех пор, пока значение x не станет больше xmax.
- Внутри цикла вычисляется значение переменной temp как x*PI/180.0.
- Значение y вычисляется как результат вызова функции f(temp,a).
- Значения x и y выводятся на экран с помощью функции printf().
- Значение dx добавляется к значению x после каждой итерации цикла.
- Программа завершается возвратом значения 0 из функции main().