zoukankan      html  css  js  c++  java
  • 简单的素数问题(C++)

    【问题描述】

        已知三个素数的和为 n ,正整数 n 由键盘输入,计算并输出这三个素数乘积的最大值。

    【代码展示】

    # include<iostream>
    using namespace std;
    int sushu(int x){
      for(int i=2;i<=x/2;i++){
        // 如果是合数,返回0;
        if(x%i==0){
          return 0;
        }
      }
      return x; // 返回素数;
    }
    int main(){
      int n,s,a[500],count=0,max=0;
      cin >> n;
      // 找到所有的素数,并保存在数组a里;
      for(int j=2;j<n;j++){
        if(sushu(j)){
          a[count] = sushu(j);
          cout << a[count] << " ";
          count++;
        }
      }
      // 遍历数组,找到和等于n-2的2个素数;
      for(int k=0;k<count-2;k++){
        for(int k2=k+1;k2<count-1;k2++){
          for(int k3=k2+1;k3<count;k3++){
            if(a[k]+a[k2]+a[k3]==n){
              s=a[k]*a[k2]*a[k3];
              if(s>max){
                max=s;
              }
            }
          }
        }
      }
      cout << max << endl;
      return 0;
    }

  • 相关阅读:
    Prometheus实现微信邮件钉钉报警
    产品需求文档和原型
    各类数据集
    redis与mysql数据同步
    hadoop hbase hive spark对应版本
    Redis集群的搭建
    mysql数据库数据与redis同步
    企业级Zabbix监控实战(一)
    mysql实现高可用架构之MHA
    04-爬取单个英雄联盟英雄的符文图片
  • 原文地址:https://www.cnblogs.com/dongks/p/10306345.html
Copyright © 2011-2022 走看看