C ++ ... квадратные серии (одинаковый вывод каждый раз)? - PullRequest
0 голосов
/ 15 февраля 2012

Всякий раз, когда я изменяю значения в s1.sqseries, выход никогда не меняется.Это всегда остается 687194768. Почему это так?

 #include<iostream>
 #include<cmath>
 #include<string>
 #include<iomanip>
 using namespace std;
 class square
 {
int a,b;
 public:
void sqseries(int x,int y)
{
    x=a;
    y=b;

    int c;
   for(c=a;c<=b;c++)
  {

   cout<<c*c<<endl;
  }
}
};
 int main ()
 {
  square s1;
  s1.sqseries(5,8);            /////////right here///////
  return 0;
  }

1 Ответ

5 голосов
/ 15 февраля 2012

Вам нужно:

void sqseries(int x,int y)
{
    a=x;
    b=y;
    ...
}

Обратите внимание, что в текущем коде вы просто переназначаете x и y с a и b внутри вашей функции, таким образом, значения, передаваемые в качестве аргумента функции, никогда не используются, а просто перезаписываются значениями. a и b.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...