C++基礎編程DAY7(day)

輸入20個數,統計其中正數、負數和零的個數

我的代碼

//輸入20個數,統計其中正數、負數和零的個數

#include<iostream>
#include<stdlib.h>

using namespace std;

int count_xyz()
{
	int a[10] = {0};
	int x=0, y=0, z=0;
	for(int i=0; i<10; i++)
	{
		cin >> a[i];
		if(a[i] > 0) x++;
		else if(a[i] < 0) y++;
		else z++;
		//cout << a[i] << endl;
	}
	cout << "正數個數:" << x << endl;
	cout << "負數個數:" << y << endl;
	cout << "零的個數:" << z << endl;
	return 0;
}

int main()
{
	count_xyz();
	system("pause");
	return 0;
}

輸入若干個整數,計算其中的奇數之和與偶數之和,假設輸入0表示結束

我的代碼

//輸入若干個整數,計算其中的奇數之和與偶數之和,假設輸入0表示結束

#include<iostream>
#include<stdlib.h>

using namespace std;

int getSum_odd(int *arr, int count)
{
	int sum = 0;
	for(int i=0; i<count; i++)
	{
		//if(arr[i]/2 != 0) sum += arr[i];
		if(arr[i]%2 != 0) sum += arr[i];//注意區分求/(求整)和%(求餘)
	}
	return sum;
}

int getSum_even(int *arr, int count)
{
	int sum = 0;
	for(int i=0; i<count; i++)
	{
		if(arr[i]%2 == 0) sum += arr[i];
	}
	return sum;
}

int main()
{
	int t = 0, a[100] = {0};
	for(int j=0; j<100; j++)
	{
		cin >> a[j];
		//cout << a[j] << endl;
		t++;
		if(a[j] == 0) 
		{
			t--;
			break;
		}
		//cout << t << endl;
	}
	cout << getSum_odd(a, t) << endl;
	cout << getSum_even(a, t) << endl;
	system("pause");
	return 0;
}

題源鏈接14、15題

總結

1、注意區分 /(求整)和%(求餘),判斷奇數還是偶數使用 a%2 == 0;
2、odd(奇數),even(偶數);
3、輸入一個數表述結束可用 if(a[j] == 0) break;跳出循環賦值表示結束;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章