Java第六周上机练习+作业
上机练习
1.使用for循环计算1-100的和,除了以3结尾的那些数
packageaaa; publicclass Test1 { /** * @paramargs */ publicstaticvoid main(String[] args) { // TODO Auto-generated method stub int a; int sum = 0; for (a = 1; a <= 100; a++) { if (a % 10 != 3) sum += a; } System.out.println(sum); } }
2.使用二重循环输出以下图形
*
***
*****
*******
packageaaa; publicclass Test3 { /** * @paramargs */ publicstaticvoid main(String[] args) { // TODO Auto-generated method stub for (int i = 1; i <= 4; i++) { for (int j = 0; j < 4 - i; j++) { System.out.print(" "); } for (int j = 1; j <= 2 * i- 1; j++) { System.out.print("*"); } System.out.println(); } } }
*****
****
***
**
*
packageaaa; publicclass Test2 { /** * @paramargs */ publicstaticvoid main(String[] args) { // TODO Auto-generated method stub for(int i=1;i<=5;i++){ for(int j=5;j>=i;j--){ System.out.print("*"); } System.out.println(); } } }
3.循环输入学生姓名,直到输入‘Q’程序结束。
packageaaa; importjava.util.Scanner; publicclass Test4 { /** * @paramargs */ publicstaticvoid main(String[] args) { // TODO Auto-generated method stub Scanner input = newScanner(System.in); while (true) { System.out.println("请输入学生姓名"); String name = input.next(); if (name.equals("Q")) { System.out.println("结束"); break; } } } }
4.输入5个学生成绩,求和,当输入不合法的时候,提示输入错误重新输入。
packageaaa; importjava.util.Scanner; publicclass Test5 { /** * @paramargs */ publicstaticvoid main(String[] args) { // TODO Auto-generated method stub Scanner input = newScanner(System.in); intscore,sum=0,n; System.out.print("请输入学生成绩"); for(int i=1;i<=5;){ score=input.nextInt(); if(score<0||score>100){ System.out.println("输入错误!请重新输入:"); n=1; } else{ n=0; i++; } if(n==0){ sum+=score; } } System.out.println("和为:"+sum); } }
5.计算 1+ 1/(1+2)+ 1/(1+2+3)+ 1/(1+2+3+4) +…………+1/(1+2+....+10)
package practise2; public class Test6 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub double sum = 0, a, b = 0; for (int i = 1; i <= 10; i++) { b += i; a = 1/ b; sum += a; } System.out.println("结果为" + sum); } }
作业
1.产生一个1-99的随机数,猜数字,若大了就提示“大了点”,若小了就提示“小了点”直到猜对位置
package practise2; import java.util.Random; import java.util.Scanner; public class Test7 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Random r = new Random(); int x = r.nextInt(100); System.out.println(x); Scanner input = new Scanner(System.in); System.out.println("输入1-99之间数"); int a1 = 0; while (true) { int y = input.nextInt(); a1++; if (y == x) { System.out.println("猜对了"); break; } else if (y > x) { System.out.println("大了点"); continue; } else if (y < x) { System.out.println("小了点"); continue; } } if (a1 >= 1 && a1 <= 3) { System.out.println("太棒了"); } else if (a1 >= 5 && a1 <= 8) { System.out.println("一般般"); } else if (a1 >= 5 && a1 <= 8) { System.out.println("太笨了"); } } }
2.输入一个数,判断是不是质数(只能被1和自身整除的数是质数)
package practise2; import java.util.Scanner; public class Test8 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); System.out.println("请输入一个数"); int a = input.nextInt(); boolean b = true; for (int i = 2; i < a - 1; i++) { if (a % i == 0) { b = false; break; } } if (b) { System.out.println("该数是一个质数"); } else { System.out.println("该数不是一个质数"); } } }
3.求裴波那契数列的第20项是什么。裴波那契数列,1,1,2,3,5,8,13,21……
package practise2; public class Test9 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int x = 1; int y = 1; int z = 0; for (int i = 3; i < 21; i++) { z = x + y; x = y; y = z; } System.out.println("第20项为" + z); } }