一个Vector C ++中的操作

时间:2015-12-09 18:08:07

标签: c++ vector

好的,我有这段代码:

 for(i=0; i<listSize; i++)
 {
      for(j=0; j<listSize; j++)
      {

              if(i != j)
              {
                 remainder = numList[i] % numList[j];
              }
              if( numList[i] % numList[j] == 0)
              {
                  cout<< numList[i] << " " << numList[j]<<endl;
              }
      }
}

如何在不将元素与自身进行比较的情况下执行模数比较?第一个if语句没有达到这个目的。

2 个答案:

答案 0 :(得分:2)

     for(i=0; i<listSize; i++)
      {
          for(j=0; j<listSize; j++)
          {

              if(i != j)
              {
                 remainder = numList[i] % numList[j];

                  if( numList[i] % numList[j] == 0)
                  {
                      cout<< numList[i] << " " << numList[j]<<endl;
                  }
              }
          }

答案 1 :(得分:0)

如果numList中的数字不唯一,则需要检查具有不同索引的列表中的两个元素是否具有相同的值。否则,你会得到除以零的分数。

for(i=0; i<listSize; i++)
{
    for(j=0; j<listSize; j++)
    {
        if(numList[i] != numList[j])
        {
            remainder = numList[i] % numList[j];
            if(remainder == 0)
            {
                cout<< numList[i] << " " << numList[j]<<endl;
            }
        }
    }
}