2017-06-20 152 views
-5

编程中的新增功能和Im在C++中编写函数时遇到问题,它将整数“n”作为参数并从键盘读取“n”个整数,返回一个以下值:返回0,1或-1的C++函数

  • 0,如果所有整数都是偶数;
  • 1,如果所有整数都是不均匀的数字;
  • -1,如果在所有整数中存在偶数和不均匀的数字;

如何在不使用数组的情况下为“n”值做到这一点?

+0

您是否已经知道如何命名该函数?:) –

+0

如何使用数组来完成它? – melpomene

+0

'n = 0'应该发生什么? – melpomene

回答

0

检查号码n次,不管它是偶数还是奇数。相应地为偶数和增量计数器创建两个计数器。最后,偶数/奇数返回-1,偶数返回0,奇数返回1

注 - 在C,C++中,非零值为true,而零取为false

int check(int n){ 
    int even=0, odd=0, num; 

    for(int i=0;i<n;i++){ 
     cin>>num; 
     if(num % 2 == 0) 
      even++; 
     else 
      odd++; 
     } 

    if(even && odd){ 
     return -1; 
    }else if(even){ 
     return 0; 
    }else 
     return 1; 
} 
0

保留两个计数器,一个用于偶数的数目和一个用于奇数的数目。对于每个数字,您都会增加相应的计数器。然后读完所有的数字后,你看看柜台。如果偶数计数器为0,则返回1,如果奇数计数器为0,则返回0,否则返回-1。