简体   繁体   English

计算C ++程序中有多少个偶数或奇数

[英]Count how many even or odd numbers there in the program in C++

The program asks the users for numbers until the total of the numbers is greater than 30. Also, the user has to count how many numbers are even and how many are odd. 该程序向用户询问数字,直到数字总数大于30。而且,用户必须计算多少个偶数和多少个奇数。 I can get the first part of the problem but i am having trouble with the counting part. 我可以得到问题的第一部分,但计数部分遇到了麻烦。

ie

Total is 0 总数为0
Please enter an integer: 20 请输入一个整数:20
Total is 20 总数是20
You had 1 even numbers and 0 odd numbers. 您有1个偶数和0个奇数。

#include <iostream>
#include <string>
using namespace std;
int main (){
   int integer;
   int total = 20;
   int even_count = 0;
   int odd_count = 0;
   cout << "Total is 0" << endl;
   cout << "Please enter an integer: ";
   cin >> integer;
   cout << integer << endl;
   while ( total <= 30){
      cout << "Total is " << total << endl;
      cout << "Please enter an integer: ";
      cin >> integer;
      cout << integer << endl;
      total = integer + total;  
   }
   if (integer % 2 == 0) {
         even_count = even_count + 1;
      }
   if (integer % 2 != 0){
         odd_count = odd_count + 1;
      }
   cout << "You had " << even_count << " even numbers and "; 
   cout << odd_count << " odd numbers.";
   cout << endl;
   return 0;
}

This code should work: 此代码应工作:

#include <iostream>
#include <string>
using namespace std;
int main (){
   int integer=0;
   int total = 0;
   int even_count = 0;
   int odd_count = 0;
   cout << "Total is " << total << endl;
   while ( total <=30 && integer <=30){
      cout << "Please enter an integer: ";
      cin >> integer;
      total = integer + total;  
      if(total <=30){
        cout << "Total is " << total << endl;
      }
      if (integer % 2 == 0) {
        even_count = even_count + 1;
      }
      if (integer % 2 == 1){
        odd_count = odd_count + 1;
      }
   }   
   cout << "You had " << even_count << " even numbers and " << odd_count << 
" odd numbers." << endl;   
}

Here is a sample output: Total is 0 Please enter an integer: 25 Total is 25 Please enter an integer: 5 Total is 30 Please enter an integer: 1 You had 0 even numbers and 3 odd numbers. 这是一个示例输出: Total is 0 Please enter an integer: 25 Total is 25 Please enter an integer: 5 Total is 30 Please enter an integer: 1 You had 0 even numbers and 3 odd numbers.

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM