第六周作业
1.使用for循环计算1-100的和,除了以3结尾的那些数
package czx; public class cac { public static void main(String[] args) { int a=1; int sum=0; while (a<=100) { sum+=a; a++; } System.out.println("1-100和为"+sum); } }
2.使用二重循环输出以下图形
*
***
*****
*******
*****
****
***
**
*
package czx; public class cac { public static void main(String[] args) { for (int i = 0; i < 5; i++) { for (int j = 0; j <(4-i); j++) { System.out.print(" "); } for (int h = 0; h < (2*i-1); h++) { System.out.print("*"); } System.out.println("\n"); } System.out.println("\n"+"\n"); for (int i = 0; i < 5; i++) { for (int j = 0; j < (5-i); j++) { System.out.print("*"); } System.out.println("\n"); } } }
3.循环输入学生姓名,直到输入‘Q’程序结束。
package czx; import java.util.Scanner; public class cac { public static void main(String[] args) { var scanner=new Scanner(System.in); for (;;) { System.out.println("输入学生姓名;输入Q程序结束"); char xm=scanner.next().charAt(0); if(xm=='Q') { System.out.println("程序结束");break; } } } }
4.输入5个学生成绩,求和,当输入不合法<0 >100的时候,提示输入错误重新输入。
package fdsa; import java.util.Scanner; public class cxz { public static void main(String[] args) { var scanner=new Scanner(System.in); double sum=0; int i=0; while (i<=4) { System.out.println("输入第"+(i+1)+"个同学的成绩"); double fen=scanner.nextDouble(); if(0<=fen&&100>=fen) { i++; sum+=fen; }else { System.out.println("输入错误"); continue; } } System.out.println("总成绩为"+sum); } }
5.计算 1+1/(1+2) + 1/(1+2+3) +1/(1+2+3+4)+…………+1/(1+2+....+10)
package fdsa; import java.util.Scanner; public class cxz { public static void main(String[] args) { var scanner=new Scanner(System.in); double a=1; double i=1; double sum=0; double su=0; while (i<=10) { sum+=a/(su+i); su+=i; i++; } System.out.println("和为"+sum); } }
6.产生一个1-99的随机数,猜数字,若大了就提示“大了点”,若小了就提示“小了点”直到猜对为止。
(判断猜的次数,如果1-3次,提示太棒了 如果5-8次 一般般 如果8次以上 太笨了)
package fdsa; import java.util.Random; import java.util.Scanner; public class cxz { public static void main(String[] args) { Random r=new Random(); var scanner=new Scanner(System.in); int rand=r.nextInt(100); int n=0; while(true) { System.out.println("输入一个数"); int a=scanner.nextInt(); n++; if(rand==a) { System.out.println("猜对了"); break; }else if (rand<a) { System.out.println("大了点"); }else if (rand>a) { System.out.println("小了点"); } } System.out.println("一共猜了"+n+"次"); if (n<=3) { System.out.println("太棒了"); }else if (4<=n&&n<=8) { System.out.println("一般般"); }else { System.out.println("太笨了"); } } }
7.输入一个数,判断是不是质数(只能被1和自身整除的数是质数)
package fdsa; import java.util.Random; import java.util.Scanner; public class cxz { public static void main(String[] args) { Random r=new Random(); var scanner=new Scanner(System.in); System.out.println("输入一个数"); int a=scanner.nextInt(); if (a%2!=0&&a%3!=0&&a%5!=0&&a%7!=0&&a%2!=0) { System.out.println("这个数是质数"); }else { System.out.println("这个数不是质数"); } } }
8.求裴波那契数列的第20项是什么。裴波那契数列,1,1,2,3,5,8,13,21……
package fdsa; public class cxz { public static void main(String[] args) { int sum=0; int a=1; int h=0; for (int i = 1; i <20 ; i++) { sum=h+a; int b=0; b=a; h=sum; a=h; h=b; } System.out.println("第20项为"+sum); } }