Fortune Telling

2023-12-17 21:31:23

题目名字

Fortune Telling

题意

给出一组数并计算这组数的最大奇数和

思路

  1. 冒泡排序:使用两个嵌套循环进行冒泡排序,将数组中的元素从大到小排序。
  2. 找出奇数:遍历排序后的数组,找出第一个奇数,并将其存储在变量 jishu 中。
  3. 检查条件:检查数组元素的和是否为偶数。如果和是偶数,并且存在奇数,那么减去这个奇数;如果和是奇数,直接输出这个奇数。
  4. 输出结果:输出排序后的数组的元素之和。
实现步骤
  1. 冒泡排序:使用两个嵌套循环进行冒泡排序,将数组中的元素从大到小排序。
  2. 找出奇数:遍历排序后的数组,找出第一个奇数,并将其存储在变量 jishu 中。
  3. 检查条件:检查数组元素的和是否为偶数。如果和是偶数,并且存在奇数,那么减去这个奇数;如果和是奇数,直接输出这个奇数。
  4. 输出结果:输出排序后的数组的元素之和。
代码
 #include <iostream>
using namespace std;

int main() {
	int n,jishu=0; 
	int sum=0;
	cin>>n;
	int a[n+5];
	for(int i=0;i<n;i++){
		scanf("%d",&a[i]);
		sum+=a[i];
	}
	for(int i=0;i<n;i++){
		for(int j=n-1;j>=i;j--){
			if(a[i]>=a[j]){
				int temp=a[j];
				a[j]=a[i];
				a[i]=temp;
			}
		}
	}
	for(int i=0;i<n;i++){
		if(a[i]%2!=0){
			jishu=a[i];
			break;
		}
	}
	if(sum%2==0) {
		if(jishu!=0){
			sum-=jishu;	
		}
		else{
			cout<<jishu;
			return 0;
		}
	}
	cout<<sum;
    return 0;
}

 

 

文章来源:https://blog.csdn.net/2301_81135929/article/details/135049693
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。