完美的偶数?

问题描述

完美偶数指的是,如果一个数本身是偶数,且这个数是偶数位的数,且这个数的各个位也是偶数,那么这个数就可以称为完美偶数;比如: 28 就是完美偶数,而 246就不是,因为 246 是一个 3 位数。

请你编程求出,从键盘读入的 𝑛 个数中,哪些数是完美的偶数,输出他们。

输入

第一行是一个整数 𝑛( 𝑛≤100 );

第二行是 𝑛 个整数(这些整数都是 1∼9999范围内的整数)。

输出

按顺序输出这 𝑛 个数中的完美偶数,每个数一行。

附代码:

#include<iostream> 
using namespace std;
int main()
{
    int n,digits,b,c=0;
    cin>>n;
    if(n<=100)
    {
        int arr[n]; 
        for(int i=0;i<n;i++)
        {
            cin>>arr[i];
        }
        for(int j=0;j<n;j++)
        {
            b=arr[j];//这里将数组里的数据存放给b,是因为后面直接用数组里的数据操作会被清零 
            c=digits=0;//一个统计数组各个位是否位奇数;一个统计该数据的位数有多少位 
            while(b!=0) //重复执行下面的内容直到位数被除尽; 
            {
                if(b%10%2!=0)//计算这个数的各个位是否能被2整除,如果余数不为0则说明这个数为奇数; 
                {
                    c++;
                    break; //只要发现有一个数字不能被2整除则可以跳出判断了 
                }
                b/=10;
                digits++;//每次这个数都整除10,除到位数被除完为0时,每除1位,统计数就+1    
            }
        if(digits%2==0&&c==0)//如果位数为偶数且这个数的各个位数不存在奇数,则输出这个数据;
        cout<<arr[j]<<endl;
        }
    }
    return 0;
}

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,这是一个比较有趣的问题,我来帮你解决。 首先,我需要说明的是,哥德巴赫猜想虽然已经被证明,但是仍然没有一个完美的解决方案。也就是说,我们只能通过计算机程序来验证这个猜想,但是无法完全证明它的正确性。 不过,我们可以通过编写一个程序来验证这个猜想。以下是一个简单的 Python 程序,用于验证哥德巴赫猜想: ```python import time import random # 判断一个数是否是素数 def is_prime(n): if n < 2: return False for i in range(2, int(n ** 0.5) + 1): if n % i == 0: return False return True # 验证哥德巴赫猜想 def goldbach_conjecture(n): for i in range(2, n): if is_prime(i) and is_prime(n - i): return i, n - i return None # 随机生成一个大于6的偶数 n = random.randint(7, 1000000) if n % 2 != 0: n += 1 # 计算程序的执行时间 start_time = time.time() # 验证哥德巴赫猜想 result = goldbach_conjecture(n) # 输出结果 if result: print("{} = {} + {}".format(n, result[0], result[1])) else: print("Failed to verify the Goldbach conjecture for {}.".format(n)) # 输出程序的执行时间 end_time = time.time() print("Execution time: {:.6f} seconds.".format(end_time - start_time)) ``` 这个程序首先定义了一个函数 `is_prime`,用于判断一个数是否是素数。这个函数的实现方式比较简单,就是遍历 2 到这个数的平方根之间的所有数,看是否能整除该数。 然后,程序定义了一个函数 `goldbach_conjecture`,用于验证哥德巴赫猜想。这个函数遍历 2 到这个数之间的所有素数,看是否存在两个素数之和等于该数,如果存在就返回这两个素数,否则返回 None。 接下来,程序随机生成一个大于 6 的偶数,并且统计程序的执行时间。最后输出分解得到的两个素数和程序的执行时间。 你可以运行这个程序,检查它是否能够正确地验证哥德巴赫猜想。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值