Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вычисление суммы сумм 
V
    Опции темы
pulsonq
Дата 19.11.2009, 16:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 18.10.2009

Репутация: нет
Всего: нет



Привет всем. Наколдовал я тут вот эту задачку

user posted image

но меня мучают сомнения, что сделал я что-то не правильно. Подскажите пожалуйста, что не так? или всё верно ?

Код

// 43.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
 double n,k,a,x,ai,xj,axi,y,yki,yk,yn;
 char cont;
 do
 {
 cout<<"x=";
 cin>>x;
 cin.get();

 cout<<"a=";
 cin>>a;
 cin.get();

 cout<<"n=";
 cin>>n;
 cin.get();

 cout<<"k=";
 cin>>k;
 cin.get();

 yk=0;
 y=0;

 cout<<setw(3)<<"n"<<setw(3)<<"k"<<setw(7)<<"ai"<<setw(7)<<"xj"<<setw(7)<<"axi"<<setw(15)<<"yk"<<setw(15)<<"y\n\n";

  for(int i=1;i<=n;)
  for(int j=1;j<=k;)
  {
   {
    xj=pow(x,j);
    ai=pow(a,i);
    axi=ai+xj;
    yk+=axi;
    y+=yk;

    i++;
    j++;
     
    cout<<setw(3)<<n<<setw(3)<<k<<setw(7)<<ai<<setw(7)<<xj<<setw(7)<<axi<<setw(15)<<yk<<setw(15)<<y<<endl;
   }
  }
    
 cout<<"For continue--<Enter>, for exit-- any symbol and <Enter> \n";

 cont=cin.get();
 
 } while (cont=='\n');

 return 0;
}

PM MAIL   Вверх
mes
Дата 19.11.2009, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(pulsonq @  19.11.2009,  15:56 Найти цитируемый пост)
  for(int i=1;i<=n;)
  for(int j=1;j<=k;)
  {
   {

две скобки это потому что два for ? тогда Вы ее поставили не в том месте.. хотя в данном случае на результат это не скажется..




--------------------
PM MAIL WWW   Вверх
pulsonq
Дата 19.11.2009, 17:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 18.10.2009

Репутация: нет
Всего: нет



Спасибо за ответ.
 тоесть будет так :
Цитата

for(int i=1;i<=n;)
{
  for(int j=1;j<=k;)
     {

А так всё остальное нормально ?

Это сообщение отредактировал(а) pulsonq - 19.11.2009, 17:51
PM MAIL   Вверх
mes
Дата 19.11.2009, 18:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(pulsonq @  19.11.2009,  16:50 Найти цитируемый пост)
А так всё остальное нормально ?

вот что еще бросилось в глаза:

инкрементацию цикла лучше делать в описании цикла, а не в теле, т.е так : 
Код

for(int i=1; i<=n; ++i)


Цитата(pulsonq @  19.11.2009,  15:56 Найти цитируемый пост)
double n,k,a,x,ai,xj,axi,y,yki,yk,yn;

переменные желательно объявлять локально по мере нужды, а не скопом.

Это сообщение отредактировал(а) mes - 19.11.2009, 18:21


--------------------
PM MAIL WWW   Вверх
Nadezda
Дата 20.11.2009, 11:23 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 31.5.2004

Репутация: нет
Всего: нет



Ошибка совершенно идиотская, поэтому не заметна

Код

i++;
j++;


У вас одновременно инкрементируются обе переменные, хотя они для разных циклов. Не удивительно, что не работает так как надо.
PM MAIL   Вверх
pulsonq
Дата 20.11.2009, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 18.10.2009

Репутация: нет
Всего: нет



решил  smile 

Код

#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
    double n,k,a,x,ai,xj,yj,y,yn,yk;
    char cont;
    do
    {
    cout<<"x=";
    cin>>x;
    cin.get();

    cout<<"a=";
    cin>>a;
    cin.get();

    cout<<"n=";
    cin>>n;
    cin.get();

    cout<<"k=";
    cin>>k;
    cin.get();

    cout<<"\n\n";

    yk=0;
    yj=0;
    y=0;
    
    int i=1;
    
    for(i;i<=n;i++)
    {    
        cout<<"i="<<i<<endl;
        cout<<setw(3)<<"j"<<setw(5)<<"xj"<<setw(7)<<"yj"<<setw(9)<<"yk\n\n";
        for(int j=1;j<=k;j++)
            {
                
                xj=pow(x,j);
                ai=pow(a,i);
                yj=xj+ai;
                yk+=yj;
                
                                
                cout<<setw(3)<<j<<setw(5)<<xj<<setw(7)<<yj<<setw(7)<<yk<<endl<<endl;
                
            }
            yk=yk*i;
            cout<<"yn="<<yk<<endl<<endl;
            
            yn=yk*n;    
            yk=0;
    }
    
                
                            
    cout<<"For continue--<Enter>, for exit-- any symbol and <Enter> \n";

    cont=cin.get();
    
    } while (cont=='\n');

    return 0;
}

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0619 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.