Страница 1 из 7

Решить задачу на C++

Добавлено: 05 янв 2009, 10:55
uli9
Пожалуйста! Очень срочно! Помогите. Нужно решить задачу на C++. Необходимо решить только под номером 24 в прикрепленном изображении. Спасибо!

К сожалению размер изображения превышает необходимого во вложениях. Поэтому даю ссылку. http://slil.ru/26508056

Re: Решить задачу на C++

Добавлено: 06 янв 2009, 00:55
Esgal
это дурной тон, оставлять ссылку на 1мб картинку с задачей (не у всех нас интернет бесплатный, и скорость соединения у многих малавата).... вам же нужна помощь... в следующий раз утрудите себя перепечатать текст задачи

Re: Решить задачу на C++

Добавлено: 06 янв 2009, 11:44
uli9
Необходимо написать программу на C++
Вычислить бесконечную сумму с заданной точностью

∑ = (3i-1)/(3i-2)!∙i!
i=1

Re: Решить задачу на C++

Добавлено: 07 янв 2009, 00:19
Хыиуду
Смотрим раздел Алгоритмы, там такое есть. Нахождение суммы ряда.

Re: Решить задачу на C++

Добавлено: 07 янв 2009, 00:53
StarWorm
На вот код, коли тут зарабатывать не дают! :(

Код: Выделить всё

#include <iostream>
#include <conio.h>
#include <math.h>

using namespace std;

int fact(int);

int main()
{
	double sum=0,element=1,eps=0.1;
	int pos=0;
	while(element>eps)
	{
		pos++;
		element=(double)(3*pos-1)/((double)fact(3*pos-2)*(double)fact(pos));
		sum+=element;
	}
	cout.precision(16);
	cout<<fixed<<sum;

	
	getch();
}

int fact(int n)
{
	if(n==1)return 1;
	else return n*fact(n-1);
}
-----------------------------------------------------------
P.S. thanx moderators, you are best!!!

Re: Решить задачу на C++

Добавлено: 09 янв 2009, 17:55
Airhand
StarWorm Во-первых, может не хватить стека для выполнения функции fact. Во-вторых, существует целый раздел для приближенных вычислений в математике. И pos++ - это преждевременная пессимизация.

Re: Решить задачу на C++

Добавлено: 10 янв 2009, 02:26
xayrus
Пожалуйста помоги с алгоритмом.. Надо составить алгоритм к следующему коду:

#include "stdafx.h"

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

#include <conio.h>

#define M 10

int main(int argc, char* argv[])

{

int C[M], A[M] = {0}, B[M] = {0};

int i, r, j;

srand(time(NULL));

for(i = 0; i < M; i++)

{

r = rand()%100;

C = r;

}

for(i = 0, j = 0; i < M; i++, j++)

{

if((i % 2))

A[--j] = C;

else

B[j] = C;

}

printf("Massiv C: ");

for(i = 0; i < M; i++)

printf("%d ", C);

printf(" Massiv A: ");

for(i = 0; i < M; i++)

printf("%d ", A);

printf(" Massiv B: ");

for(i = 0; i < M; i++)

printf("%d ", B);

printf(" ");

getch();

}

Re: Решить задачу на C++

Добавлено: 10 янв 2009, 16:44
Хыиуду
"Составить алгоритм к коду" - это все равно что "Дан "Евгений Онегин", написать, о чем он". В данном случае программа заполняет два массива нулями, а потом генерирует еще десяток нулей и распихивает их по массивам.

Re: Решить задачу на C++

Добавлено: 10 янв 2009, 17:13
Airhand
xayrus Надо постить в отдельную тему.
Алгоритм надо рисовать. Вот он, примерно:
1. Ввод данных в С.
2. Если i - нечётное, то А[--j] присваиваем значение С (Тут наверное ошибка: не нужно уменьшать j, иначе в этом алгоритме чёрт ногу сломит), иначе B[j] присвоить C.
3. Вывод С.
4. Вывод A.
5. Вывод B.
6. Ждём ввода любого символа.

Re: Решить задачу на C++

Добавлено: 10 янв 2009, 23:58
xayrus
окейй! спасибо