Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > C/C++/С#


Ответ
 
Опции темы Опции просмотра
Старый 13.01.2015, 16:36   #1 (permalink)
АлександрТаран
Новичок
 
Регистрация: 12.01.2015
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Question C++ Builder 6

Надо было написать программу, которая считает сумму ряда
Пытался сам сделать, вроде неверно. При оюбом отрицательном щначении выдает 0. Посмотрите, пожалуйста, и помогите исправить. Есть ли другие ошибки? Артктангенс я позже рассмотрю
На форму добавил кнопку, лэйбл, ЛэйбледЭдит



Код:
#include <vcl.h>
#include <math.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
  double sum = 0, x, eps = 0.000001, temp;
  int i = 1, n = 1;
  double z = pow(-1, n), v = pow(x, 2 * n - 1)/(2 *n -1);
  String res = "fabs(x) > 1";
  x = StrToFloatDef(LabeledEdit1->Text, 0);
  if (fabs(x) <= 1)
  {
    temp = x;
    while (temp >= eps)
    {
      sum += temp;
      i++;
      if (i == 2)
      {
        n = 2;
        temp = x*x/2;
      }
      else
      {
        n += i;
        temp = z * v;
      }
    }
    res = sum;
  }
  Label1->Caption = res;
}
//---------------------------------------------------------------------------
Миниатюры
jjfc6seo6kk.jpg  
АлександрТаран вне форума   Ответить с цитированием

Старый 13.01.2015, 16:36
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Я думаю, что решение проблемы можно поискать в аналогичных топиках

Помогите решить пример в С++ Builder
C++ Builder графика
Не работает C++ Builder
Задача на массивы Builder C++
HEX в algorithm builder
Помогите-не идет программа в C++Builder 6.

Старый 13.01.2015, 17:12   #2 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

К сожалению, на СИ не программирую, но то, что написана ахинея - вижу. Откуда Вы взяли переменную i? Зачем она? Уберите! Всё, что Вам нужно - это сделать цикл, в котором n будет возрастать на 1, при каждом значении n сосчитать z и v, потом temp=z*v и, наконец, sum=sum+temp. Завершить при |temp|<eps. Всё! И зачем рассматривать отдельно случай n=2? Не понимаю. Тем более, что при n=2 temp=x*x*x/3, а вовсе не x*x/2.
Vladimir_S вне форума   Ответить с цитированием
Старый 13.01.2015, 17:21   #3 (permalink)
АлександрТаран
Новичок
 
Регистрация: 12.01.2015
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Спасибо, попробую
АлександрТаран вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 19:00.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.