java a,b,c三个质数,求解abc值的数学问题

编程入门 行业动态 更新时间:2024-10-26 13:31:51

java    a,b,c三个<a href=https://www.elefans.com/category/jswz/34/1764968.html style=质数,求解abc值的数学问题"/>

java a,b,c三个质数,求解abc值的数学问题

问题如下:

思路:1、a、b、c是三个94以内的质数;

2、三个质数要满足图中条件;

3、只需计算出94以内的素数,依次遍历满足两个等式的则输出即可。

代码如下:

import java.util.ArrayList;
import java.util.Scanner;
//输入一个数n输出n以内的素数public class Test {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);while (scanner.hasNext()) {int n = scanner.nextInt();Test.sushu(n);}scanner.close();}public static void sushu(int n){ArrayList<Integer> a=new ArrayList<Integer>();// int count=0;for (int i = 1; i <n ; i++) {boolean flag=true;//是否是素数的标志for (int j = 2; j <=Math.sqrt(i) ; j++) {//除了1和本身外如果还能被除就说明不是素数if (i%j==0){flag=false;//不是素数}}if(flag){//count++;//统计素数个数// System.out.println("第"+count+"个素数"+i);a.add(i);//将n以内的素数存储到数组a中}}for (int i = 0; i < a.size(); i++) {//遍历a数组选出三个符合条件的数,为避免重复选择j = i+1,b=j+1for (int j = i+1; j< a.size(); j++) {for(int b=j+1;b<a.size();b++) {int x=a.get(i)+a.get(j)+a.get(b);//x存放a+b+c的值int y=a.get(i)*a.get(j)+a.get(i)*a.get(b)+a.get(b)*a.get(j);//y存放ab+bc+ac的值if(x==94&&y==2075) {System.out.println(a.get(i) + " "+a.get(j)+ " "+a.get(b));}}}}}
}

结果如下:

三个数分别是:2,31,61

所以abc为3782

更多推荐

java a,b,c三个质数,求解abc值的数学问题

本文发布于:2024-02-25 11:43:09,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1698864.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:质数   数学   java   abc

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!