4.8java第六次作业
上机练习:
1.使用for循环计算1-100的和,除了以3结尾的那些数
package yxf; public class sj1 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int sum=0; for (int i = 1; i <=100; i++) { if (i%10==3||i==3) { continue; } sum+=i; } System.out.println(sum); } }
2.使用二重循环输出以下图形
*
***
*****
*******
package yxf; public class sj2 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub for (int i = 1; i <=4; i++) { for (int j = 1; j <=4-i; j++) { System.out.print(" "); } for (int k =1; k <=2*i-1; k++) { System.out.print("*"); } System.out.println(); } } }
*****
****
***
**
*
package yxf; public class sj3 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub for (int i = 1; i <=5; i++) { for (int j = 1; j < 7-i; j++) { System.out.print("*"); } System.out.println(); } } }
3.循环输入学生姓名,直到输入‘Q’程序结束。
String name=input.next();
if(name=='Q'){
}
错误。。字符串判断相等不能用==
if(name.equals("Q")){
}正确
zs
ls
ww
aa
bb
Q
程序结束
package yxf; import java.util.Scanner; public class sj4 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input=new Scanner(System.in); for(;;){ System.out.println("请输入学生姓名"); String name=input.next(); if (name.equals("Q")) { System.out.println("结束"); break; } } } }
4.输入5个学生成绩,求和,当输入不合法的时候,提示输入错误重新输入。
package yxf; import java.util.Scanner; public class sj5 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input=new Scanner(System.in); int sum=0; for(int i=0;i<5;i++){ System.out.println("请输入学生成绩"); int x=input.nextInt(); if(x<0||x>100){ i--; System.out.println("输入错误请重新输入"); continue; } sum+=x; } System.out.println("输入成功"+"\t"+"成绩总和为"+sum); } }
5.计算 1+1/(1+2) + 1/(1+2+3) +1/(1+2+3+4)+…………+1/(1+2+....+10)
package yxf; public class sj6 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub double sum=0; double x=1; for (int i = 1; i <=10; i++) { sum+=i; x=x+(1/sum); } System.out.println(x); } }
作业
1.产生一个1-99的随机数,猜数字,若大了就提示“大了点”,若小了就提示“小了点”直到猜对为止。
(判断猜的次数,如果1-3次,提示太棒了 如果5-8次 一般般 如果8次以上 太笨了)
package forxunhuan; import java.util.Random; import java.util.Scanner; public class a1 { public static void main(String[] args) { // TODO 自动生成的方法存根
Random r=new Random(); int a=r.nextInt(100); Scanner input =new Scanner(System.in); System.out.println("请输入一个1-99之间的数"); int b=input.nextInt(); int ci=1; while (a!=b) { if (b>a) { System.out.println("大了点"); }else if(b<a){ System.out.println("小了点"); } b=input.nextInt(); if (a==b) { System.out.println("猜对了 !"); } ci++; } if (ci<=3) { System.out.println("太棒了"); } if (ci>=4&&ci<=8) { System.out.println("一般般"); } if (ci>8) { System.out.println("太笨了"); } System.out.println("猜的次数为"+ci); System.out.println("要猜的数是"+a);
}
}
2.输入一个数,判断是不是质数(只能被1和自身整除的数是质数)
package forxunhuan; import java.util.Scanner; public class a2 { public static void main(String[] args) { // TODO 自动生成的方法存根 Scanner input=new Scanner(System.in); System.out.println("请输入一个数:"); int num=input.nextInt(); int a=0; int i=2; while(i<num){ if(num%i==0){ System.out.println(num+"不是质数"); a++; break; } i++; } if(a==0){ System.out.println(num+"是质数"); } } }
3.求裴波那契数列的第20项是什么。裴波那契数列,1,1,2,3,5,8,13,21……
package forxunhuan; public class a3 { public static void main(String[] args) { // TODO 自动生成的方法存根 int a=1; int b=1; int c=0; for(int i=1;i<=18;i++){ c=a+b; a=b; b=c; } System.out.println("第20项为"+c); } }