Определить количество слагаемых, необходимых для достижения заданной точности ε при исчислении числа - C (СИ)
Формулировка задачи:
Помогите написать через For
Определить количество слагаемых, необходимых для достижения заданной точности ε при исчислении числа π по следующему разложением в ряд (уравнение в вложении)
Нужен код в С (именно С, а не в С++)
#include <stdio.h>
#include <math.h>
int main () {
double e,pi=0;
int n=1;
printf ("\nVvedite tochnost "); scanf ("%lf",&e);
while (fabs(sqrt(6*pi)-M_PI)>e) {
pi+=1/pow(n,2);
n++;
};
printf ("\nPi=%1.5lf",sqrt(6*pi));
printf ("\nn=%d",n-1);
printf ("\nGmiEnter");
getchar(); getchar();
return 0;
}Решение задачи: «Определить количество слагаемых, необходимых для достижения заданной точности ε при исчислении числа»
textual
Листинг программы
#include <stdio.h>
#include <math.h>
int main ()
{
double e,pi=0;
int n=1;
printf ("\nVvedite tochnost ");
scanf ("%lf",&e);
for(n=1;;n++)
{
pi+=1/pow(n,2);
if(fabs(sqrt(6*pi)-M_PI)<=e)
break;
};
printf ("\nPi=%1.5lf",sqrt(6*pi));
printf ("\nn=%d",n-1);
printf ("\nGmiEnter");
getchar();getchar();
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек
- Объявление переменных: e (точность), pi (произвольное начальное значение для pi), n (счетчик итераций)
- Вывод сообщения с просьбой ввести точность и считывание значения с помощью функции scanf
- Запуск цикла, который будет выполняться до тех пор, пока разница между приближенным значением pi и истинным значением M_PI не станет меньше заданной точности e
- Внутри цикла значение pi увеличивается на 1/pow(n,2)
- Выполнение условия для цикла
- Вывод значения pi с точностью до 5 знаков после запятой
- Вывод значения n (количество итераций)
- Вывод сообщения для выхода из программы
- Возврат 0, чтобы указать, что программа успешно завершилась