Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.03.2011, 01:10   #1
Blondy
Участник клуба
 
Аватар для Blondy
 
Регистрация: 07.07.2009
Сообщений: 1,385
По умолчанию C++: почему программа считает последовательность неправильно

Здраствуйте, уважаемые программисты.
Вы не могли бы подсдсказать почему математическая последовательность считется неправильно программой. Это наверняка просто где-то маленькая ошибка, но я уже запуталась окончательно.

Само условие: Дано целое число N (> 1). Последовательность вещественных чисел Aк определяется следующим образом: A1= 1, A2= 2, AK= (AK–2+ 2*AK–1)/3, K = 3, 4, … .Вывести элементы A1, A2, …,AN

Я на всякий случай формулу для последовательности еще внизу представила.

А вот и сам код:
Код:
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <math.h> 

using namespace std;


int main ()



{	
int N=1, i=0, K=0;
double x=0, y=0, Element=0;

cout<<"Vvedite polozitelnoe chislo N"<<endl;
cin>>N;

cout<<endl;

//for (i=1;i<=N; i++)

//{


//Poka ostavljaem ontschet ot 2-go elementa, 1-y propishem prinuditelno
	for (K=N; K>=2; K--)
		{
			x=K;

			//cout<<x<<endl;
		
			for (int L=N; L>=1; L=L-1)
				
				{
					//cout<<L;
					y=2*L;
					//cout<<"  "<<y<<endl;

				}
				
	cout<<K;		
	Element=(x+y)/3;
	cout<<"   "<<Element<<endl;
	}
					cout<<Element<<"_"<<i<<"     "<<endl; //element na kazdom shage
//}

_getch ();
return 0;
}
Изображения
Тип файла: jpg pr6.JPG (7.7 Кб, 90 просмотров)
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
Blondy вне форума Ответить с цитированием
Старый 24.03.2011, 01:33   #2
val_nnm
Форумчанин
 
Регистрация: 18.10.2009
Сообщений: 185
По умолчанию

Чтото вы тут намудрили с переменными. Попробуйте примерно так

Код:
...
...
int main ()
{	
  int N=1;
  double Ak_2 = 0; // Ak-2 элемент
  double Ak_1 = 1; // Ak-1 элемент
  double Ak = 2; // Ak элемент
  cout<<"Vvedite polozitelnoe chislo N"<<endl;
  cin>>N;
  cout<<endl;
  cout<<"[A1]="<<Ak_1<<endl;
  cout<<"[A2]="<<Ak<<endl;
  for (int K=3;K<=N;K++)
  {
    Ak_2=Ak_1;
    Ak_1=Ak;
    Ak=(Ak_2+2.0*Ak_1)/3.0;
    cout<<"[A"<<K<<"]="<<Ak<<endl;
  }
...
...
Писал без проверки. Поэтому если где ошибся извените.
На С# пишу лучше чем на русском.
"У меня правильнописание хромает. Оно хорошее, но почему-то хромает."
val_nnm вне форума Ответить с цитированием
Старый 24.03.2011, 01:37   #3
Blondy
Участник клуба
 
Аватар для Blondy
 
Регистрация: 07.07.2009
Сообщений: 1,385
По умолчанию

Если я не ошибаюсь, последовательность на 5 элементов согласно этой формуле должна выглядеть так: 1; 2; 2.333333; 2.222222; 2.259259
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
Blondy вне форума Ответить с цитированием
Старый 24.03.2011, 01:38   #4
Blondy
Участник клуба
 
Аватар для Blondy
 
Регистрация: 07.07.2009
Сообщений: 1,385
По умолчанию

Спасибо, сейчас проверю)))
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
Blondy вне форума Ответить с цитированием
Старый 24.03.2011, 01:42   #5
val_nnm
Форумчанин
 
Регистрация: 18.10.2009
Сообщений: 185
По умолчанию

Вроде примерно так
A[1]=1
A[2]=2
A[3]=(A[1]+2*A[2])/3=(1+2*2)/3=1.66666
A[4]=(A[2]+2*A[3])/3=(2+2*1.6666)/3=1.77777
A[5]=(A[3]+2*A[4])/3=(1.66666+2*1.77777)/3=1,74074074074
и.т.д.
На С# пишу лучше чем на русском.
"У меня правильнописание хромает. Оно хорошее, но почему-то хромает."
val_nnm вне форума Ответить с цитированием
Старый 24.03.2011, 01:50   #6
Blondy
Участник клуба
 
Аватар для Blondy
 
Регистрация: 07.07.2009
Сообщений: 1,385
По умолчанию

Да, спасибо, все работает как часы)))
сейчас я буду все это оформлять как вариант для вывода в обычные дроби. Чтобы покрасивее было)) Если что, я опять к Вам)))
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
Blondy вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++ - а почему считает неправильно! Blondy Помощь студентам 2 25.02.2011 16:30
Неправильно считает Excel starsat1080 Помощь студентам 1 24.02.2011 08:37
почему эта программа не считает количество букв? WitaliG Помощь студентам 3 24.01.2011 17:32
почему на чужем ПК неправильно работает программа Coder01 Общие вопросы Delphi 10 24.08.2010 19:34
Неправильно считает, очень прошу помочь Yulya92 Общие вопросы C/C++ 4 12.11.2009 23:33