Форум: Форум C++Разное
Новые темы: 00
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Задачка
 
 автор: Miha_drinking_bout   (12.02.2010 в 14:50)   письмо автору
 
 

возникла проблемка с задачей (с задачами):

2. Вычислить сумму ряда с точностью Е, общий член которого An= n! /n^n .
решил ее так:
Листинг 3_2
#include<stdio.h>
#include<math.h>
main()
{
int n,i;
double q,a;
scanf ("%d",&n);
i=n,q=1;
while (i>0)
{
q *= i;//находим факториал n
--i;
}
n=pow(n,n);//находтм n в степени n
a=q/n;
printf ("%e",a);
}

почемуто при большом значении вводимого числа выдает всегда (-1.#INF00e+000)
Подскажите пожалуйста что я сделал не так? по возможности правильное решение.
заранее спасибо.

  Ответить  
 
 автор: cheops   (13.02.2010 в 13:33)   письмо автору
 
   для: Miha_drinking_bout   (12.02.2010 в 14:50)
 

В int мало данных убирается, лучше n и q сделать double - потеряете в точности, зато все цифры будут умещаться

  Ответить  
 
 автор: Miha_drinking_bout   (13.02.2010 в 16:42)   письмо автору
 
   для: cheops   (13.02.2010 в 13:33)
 

Спасибо за помощь. Заработало как требовалось.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования