Java代码练习
1、
代码:
public class xixueguidigital_2 {public static void main(String[] args) {int a,b,c,d;int s[]=new int[4];boolean flag ;for(int i=1000;i<10000;i++){s[0]=i/1000;s[1]=i%1000/100;s[2]=i%100/10;s[3]=i%10;flag = false;/*有了这个就不会造成1260=21*60和1260=60*21两种输出了,发现了1260,不会再继续查找abcd了*/if(s[2]==0&&s[3]==0){continue;}for(int j1=0;j1if(a!=0){for(int j2=0;j2if(j2!=j1) {b=s[j2];for(int j3=0;j3if(j3!=j1&&j3!=j2) {c=s[j3];if(c!=0){for(int j4=0;j4if(j4!=j1&&j4!=j2&&j4!=j3) {d=s[j4];int sum=(a*10+b)*(c*10+d); if(i==sum && flag == false){flag = true;System.out.print(i+"=");System.out.println((a*10+b)+"*"+(c*10+d));break;}}}}}}}}}}}}
}
输出结果:
1260=21*60
1395=15*93
1435=41*35
1530=51*30
1827=87*21
2187=27*81
6880=86*80
2、用递归编程求斐波那契数列f(n),已知f1=1;f2=1,以后每项都是前两项的和。
import java.util.ArrayList;
import java.util.Scanner;public class Fibonacci {public static void main(String args[]){Scanner s = new Scanner(System.in);System.out.println("请输入项数:");int n=s.nextInt();s.close();ArrayList list=new ArrayList<>();for(int i=1;i<=n;i++){list.add(function(i));}System.out.println("斐波那契数列:");for(int i=0;iout.print(list.get(i)+" ");}}//递归public static int function(int n){if(n==1 || n==2)return 1;return function(n-1)+function(n-2);}
}
输出结果:
请输入项数:
9
斐波那契数列:
1 1 2 3 5 8 13 21 34
3、如何利用筛选法查找100以内的素数?
代码如下:
public class findsushu {
public static void main(String[] args) {int i,j;int a[]=new int[101];for (i = 1; i < 101; i++) {a[i]=1;//将整个数组初始化为1}for(i=2;i<101;i++){if(a[i]!=0){for(j=i+i;j<101;){if(j%i==0){a[j]=0;
//将所有2、3、5、7等等的倍数都标记为0(由于4和6是2的倍数已经被标记为0了,所以跳过);j=j+i;}}}}for(i=2;i<101;i++){if(a[i]!=0){System.out.print(i+" ");}}}}
输出结果为:
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
4、如何用开根号的方法求100以内的素数?
代码如下:
public class findsushu_1 {
public static void main(String[] args) {int i,j,k;for(i=1;i<101;i++){k=(int) Math.sqrt(i);for (j = 2; j <= k; j++) {if(i%j==0){break;}}if(j>k){System.out.print(i+" ");}}}
}
输出结果为:
1 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
