当前位置:   article > 正文

java从小白开始的练习(二)_import java.util.scanner; class testfor { public s

import java.util.scanner; class testfor { public static void main(string[] a

循环输入某同学S1结业考试的5门课成绩,并计算平均分

  1. import java.util.Scanner;
  2. public class Test {
  3. public static void main(String[] args) {
  4. Scanner sc = new Scanner(System.in);
  5. System.out.println("请输入一个语文成绩:");
  6. double chinese=sc.nextDouble();
  7. System.out.println("请输入一个数学成绩:");
  8. double math=sc.nextDouble();
  9. System.out.println("请输入一个英语成绩:");
  10. double english=sc.nextDouble();
  11. System.out.println("请输入一个it成绩:");
  12. double it=sc.nextDouble();
  13. System.out.println("请输入一个java成绩:");
  14. double java=sc.nextDouble();
  15. double average=(chinese+math+english+it+java)/5;
  16. System.out.println("平均成绩为:"+average);
  17. }
  18. }


  请从控制台输入一个数,是质数(素数)还是合数
  提示:从2开始,只能被1和它本身除尽的数,是质数(素数)

  1. import java.util.Scanner;
  2. public class Test {
  3. public static void main(String[] args) {
  4. Scanner sc = new Scanner(System.in);
  5. System.out.println("请输入一个整数:");
  6. int number=sc.nextInt();
  7. for(int i=2;i<number/2;i++){
  8. if(number%i==0 ){
  9. System.out.println(number + "不是质数");
  10. }else if(number<=3){
  11. System.out.println(number + "是质数");
  12. }else {
  13. System.out.println(number + "是质数");
  14. }
  15. }
  16. }
  17. }


    求1~100之间不能被3整除的数之和

  1. public class Test {
  2. public static void main(String[] args) {
  3. int sum=0;
  4. for(int i=2;i<100;i++){
  5. if(i%3==0 ){
  6. sum+=i;
  7. }
  8. }
  9. System.out.println("能被3整除的数之和为:"+sum);
  10. }
  11. }

 


    请使用循环完成如下图案的打印
   *
  ***
 *****
*******
 *****
  ***
   *

  1. public class Test {
  2. public static void main(String[] args) {
  3. for(int i=1;i<=5;i++){
  4. for(int j=5;j>i;j--){
  5. System.out.print(" ");
  6. }
  7. for(int j=0;j<i*2-1;j++){
  8. System.out.print("*");
  9. }
  10. System.out.println();
  11. }
  12. for(int i=1;i<=4;i++){
  13. for(int j=0;j<i;j++){
  14. System.out.print(" ");
  15. }
  16. for(int j=4*2-1;j>=i*2-1;j--){
  17. System.out.print("*");
  18. }
  19. System.out.println();
  20. }
  21. }
  22. }


 

 
    有一些四位数,百位数字都是3,十位数字都是6,并且它们既能被2整除,又能被3整除,求这样的四位数中最大的和最小的两数各是几?

  1. public class Test {
  2. public static void main(String[] args) {
  3. for (int i = 1000; i <= 9999; i++) {
  4. if ((i/100)% 10 == 3 && (i/10) % 10 == 6) {
  5. if (i%2==0 && i%3==0) {
  6. System.out.print(i + " ");
  7. }
  8. }
  9. }
  10. }
  11. }


编程求一个四位自然数ABCD,它乘以A后变成DCBA

  1. public class Test {
  2. public static void main(String[] args) {
  3. for(int i =1000;i<9999;i++){
  4. int a=(i/1000)%10;
  5. int b=(i/100)%10;
  6. int c=(i/10)%10;
  7. int d=i%10;
  8. int num=d*1000+c*100+b*10+a;
  9. if(i*a==num){
  10. System.out.println("这个数是:"+i);
  11. }
  12. }
  13. }
  14. }

有一种最简真分数,它们的分子与分母的乘积都是140,把所有这样的真分数从小到大打印出来

(真分数是指分子小于分母的分数,最简真分数是指分子和分母没有共同公约数的分数)

  1. public class Test {
  2. public static void main(String[] args) {
  3. int denominator,molecular;
  4. for(denominator=1;denominator<140;denominator++){
  5. for(molecular=1;molecular<denominator;molecular++){
  6. if(denominator*molecular==140){
  7. System.out.println(molecular+"/"+denominator);
  8. for(int i=1;i<70;i++){
  9. double x=denominator%i;
  10. double y=molecular%i;
  11. for(int k=1;k<70;k++){
  12. if(k != x || k!=y ) {
  13. }
  14. }
  15. }
  16. }
  17. }
  18. }
  19. }
  20. }

一个五位数,若在它的后面写上一个7,得到一个六位数A,若在它前面写上一个7,得到一个六位数B,B是A的五倍,求此五位数.

  1. public class Test {
  2. public static void main(String[] args) {
  3. for(int i=10000;i<99999;i++){
  4. int a=i*10+7;
  5. int b=7*100000+i;
  6. if(a*5==b){
  7. System.out.println("这个数是:"+i);
  8. }
  9. }
  10. }
  11. }

 把123456789这个数乘以一个什么数,能使它的结果不但不含零,而且仍然是 由1,2,3,4,5,6,7,8,9这九个数字组成的,只是顺序不同而已.

  1. public class Test {
  2. public static void main(String[] args) {
  3. int val =123456789;
  4. for(int i=2;i<=8;i++){
  5. int num=i*val;
  6. if(bits(num)==bits(val) ){
  7. System.out.println(num);
  8. }
  9. }
  10. }
  11. public static int bits(int num) {
  12. if (num <= 10) {
  13. int c = num % 10;
  14. return c;
  15. } else {
  16. int c = num % 10;
  17. return c + bits(num / 10);
  18. }
  19. }
  20. }

验证:任意一个大于9的整数减去它的各位数字之和所得的差,一定能被9整除.

  1. public class Test {
  2. public static void main(String[] args) {
  3. int val=0;
  4. int arr[]=new int[1000];
  5. for(int i=10;i<100000;i++){
  6. if((i-bits(i))%9==0){
  7. val+=1;
  8. }else {
  9. for(int j=0;j<1000;j++){
  10. arr[j]=i;
  11. }
  12. }
  13. }
  14. if(val==(100000-10)){
  15. System.out.println("成立");
  16. }else {
  17. System.out.println("不成立");
  18. }
  19. System.out.println(arr);
  20. }
  21. public static int bits(int num) {
  22. if (num <= 10) {
  23. int c = num % 10;
  24. return c;
  25. } else {
  26. int c = num % 10;
  27. return c + bits(num / 10);
  28. }
  29. }
  30. }

如果两个素数之差为2,这样的两个素数就叫作"孪生数",找出100以内的所有"孪生数".

素数又称质数。所谓素数是指除了 1 和它本身以外,不能被任何整数整除的数)

  1. import java.util.Scanner;
  2. public class Test {
  3. public static void main(String[] args) {
  4. int arr[] =new int[25];
  5. int index=0;
  6. for(int i=1;i<100;i++){
  7. if(true==isPrime(i)){
  8. arr[index]=i;
  9. index++;
  10. }
  11. }
  12. //冒泡思想
  13. for (int i=1;i<=1;i++) {
  14. for(int j=0;j<arr.length-i;j++){
  15. if(arr[j+1]-arr[j]==2){
  16. System.out.println("这样的两孪生数为:"+arr[j]+"与"+arr[j+1]);
  17. }
  18. }
  19. }
  20. }
  21. public static boolean isPrime(int n){
  22. //n<=3时,质数有2和3
  23. if (n <= 3) {
  24. return n > 1;
  25. }
  26. //当n>3时,质数无法被比它小的数整除
  27. for(int i = 2; i < n; i++){
  28. if (n % i == 0) {
  29. return false;
  30. }
  31. }
  32. return true;
  33. }
  34. }

求水仙花数。        ABC  = a^3+b^3+c^3

  1. public class Test {
  2. public static void main(String[] args) {
  3. for(int i=100;i<999;i++){
  4. int a=i%10;
  5. int b=(i/10)%10;
  6. int c=(i/100)%10;
  7. double val=Math.pow(a,3)+Math.pow(b,3)+Math.pow(c,3);
  8. if(i == val){
  9. System.out.println(i);
  10. }
  11. }
  12. }
  13. }

求  a+aa+aaa+.......+aaaaaaaaa=?

其中a为1至9之中的一个数,项数也要可以指定。

  1. import java.util.Scanner;
  2. public class Test {
  3. public static void main(String[] args) {
  4. Scanner sc= new Scanner(System.in);
  5. System.out.println("请输入a:");
  6. double num=sc.nextDouble();
  7. System.out.println("请输入项数:");
  8. int item=sc.nextInt();
  9. System.out.println(cumulative(num,item));
  10. }
  11. public static double cumulative(double num,int item){
  12. if(item==1){
  13. return num;
  14. }else {
  15. double number=0;
  16. for(int i=0;i<item;i++){
  17. number+=num*Math.pow(10,i);
  18. }
  19. return number+cumulative(num,item-1);
  20. }
  21. }
  22. }

 求 2/1+3/2+5/3+8/5+13/8.....前20项之和?
 

  1. import java.util.Scanner;
  2. public class Test {
  3. public static void main(String[] args) {
  4. Scanner sc= new Scanner(System.in);
  5. System.out.println("请输入项数:");
  6. int item=sc.nextInt();
  7. item=item+1;
  8. double val=0;
  9. for (int i=1;i<=item;i++){
  10. val+=(cumulative(item)/cumulative(item-1));
  11. // System.out.println(val);
  12. }
  13. System.out.println("前"+item+"项和为:"+val);
  14. }
  15. public static double cumulative(int item){
  16. if(item==1){
  17. return 1 ;
  18. }else if(item==2){
  19. return 2;
  20. } else {
  21. return cumulative(item-2)+cumulative(item-1);
  22. }
  23. }
  24. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/207268
推荐阅读
相关标签
  

闽ICP备14008679号