第六周上机练习+作业
上机练习:
1.使用for循环计算1-100的和,除了以3结尾的那些数
1 package pac_01; 2 3 public class pra_01 { 4 5 public static void main(String[] args) { 6 // TODO Auto-generated method stub 7 int sum=0; 8 for (int i = 1; i <100; i++) { 9 if(i%3!=0) 10 { 11 sum+=i; 12 } 13 } 14 System.out.println("计算1-100的和,除了以3结尾的那些数"+sum); 15 } 16 17 }
2.使用二重循环输出以下图形
1 package pac_01; 2 3 import java.util.Iterator; 4 5 public class pra_02 { 6 7 public static void main(String[] args) { 8 // TODO Auto-generated method stub 9 for (int i = 1; i <=5; i++) { 10 for (int j=0;j<i*2-1;j++) { 11 System.out.print("*"); 12 } 13 System.out.println(); 14 } 15 16 System.out.println("======================================"); 17 for (int i = 5; i>0; i--) { 18 for (int j =0; j < i; j++) { 19 System.out.print("*"); 20 } 21 System.out.println(); 22 } 23 } 24 25 }
3.循环输入学生姓名,直到输入‘Q’程序结束。
1 package pac_01; 2 3 import java.util.Scanner; 4 5 public class prac_03 { 6 7 public static void main(String[] args) { 8 // TODO Auto-generated method stub 9 Scanner input=new Scanner(System.in); 10 for (int i=0; i<1;) { 11 System.out.println("请输入学生姓名,直到输入Q结束"); 12 String nam=input.next(); 13 String Q="Q"; 14 if(nam.equals(Q)) 15 { 16 i++; 17 } 18 } 19 System.out.println("over"); 20 } 21 22 }
4.输入5个学生成绩,求和,当输入不合法的时候,提示输入错误重新输入。
1 package pac_01; 2 3 import java.util.Iterator; 4 import java.util.Scanner; 5 6 public class pra_04 { 7 8 public static void main(String[] args) { 9 // TODO Auto-generated method stub 10 System.out.println("请输入5个学生的成绩(0-100)"); 11 Scanner input=new Scanner(System.in); 12 int sum=0; 13 for(int i=1;i<6;) 14 { 15 System.out.println("请输入第"+(6-i)+"位同学"); 16 int score=input.nextInt(); 17 if(score>=0&&score<=100) 18 { 19 i++; 20 sum+=score; 21 } 22 else 23 { 24 System.err.println("成绩输入错误,请重新输入"); 25 System.out.println("还有"+(6-i)+"位同学"); 26 } 27 } 28 System.out.println("5位同学的总和为"+sum); 29 } 30 31 }
5.计算 1+1/(1+2) + 1/(1+2+3) +1/(1+2+3+4)+…………+1/(1+2+....+10)
1 package pac_01; 2 3 public class pra_5 { 4 5 public static void main(String[] args) { 6 // TODO Auto-generated method stub 7 int i=0; 8 int j=0; 9 int c=0; 10 double sum=0; 11 for(i=1;i<=10;i++) 12 { 13 sum=sum+1.0/(i+c); 14 c+=i; 15 } 16 System.out.println(" 1+1/(1+2) + 1/(1+2+3) +1/(1+2+3+4)+…………+1/(1+2+....+10)的结果\n"+sum); 17 } 18 19 }
作业
1.产生一个1-99的随机数,猜数字,若大了就提示“大了点”,若小了就提示“小了点”直到猜对为止。
1 package pac; 2 3 import java.util.Random; 4 import java.util.Scanner; 5 6 public class work_01 { 7 8 public static void main(String[] args) { 9 // TODO Auto-generated method stub 10 Scanner input=new Scanner(System.in); 11 Random r=new Random(); 12 int num=r.nextInt(100); 13 int i=0; 14 System.out.println("猜数字 若大了就提示“大了点” 若小了就提示“小了点”直到猜对为止(1-99)"); 15 System.out.println("请输入你心目中的数字"); 16 17 while(true) 18 { 19 int a=input.nextInt(); 20 if(a==num) 21 { 22 i++; 23 break; 24 } 25 else if(a>num) 26 { 27 System.out.println("大了点"); 28 i++; 29 30 } 31 else 32 { 33 System.out.println("小了点"); 34 i++; 35 } 36 } 37 if(i<4) 38 { 39 System.out.println("太棒了"); 40 } 41 else if(i>=4&&i<9) 42 { 43 System.out.println("一般般 "); 44 } 45 else 46 { 47 System.out.println("太笨了"); 48 } 49 } 50 51 }
2.输入一个数,判断是不是质数(只能被1和自身整除的数是质数)
1 package pac; 2 3 import java.util.Iterator; 4 import java.util.Scanner; 5 6 public class work_002 { 7 8 public static void main(String[] args) { 9 // TODO Auto-generated method stub 10 Scanner input=new Scanner(System.in); 11 System.out.println("请输入一个整数,将为你判断他是不是质数"); 12 int a=input.nextInt(); 13 int sum=0; 14 for (int i = 1; i < 10; i++) { 15 if(a%i==0&&a!=1) 16 { 17 sum+=1; 18 } 19 } 20 if(sum==1) 21 { 22 System.out.println(a+"是质数"); 23 } 24 else if(sum==2&&a<10) 25 { 26 System.out.println(a+"是质数"); 27 } 28 else 29 { 30 System.out.println(a+"不是质数"); 31 } 32 } 33 34 }
3.求裴波那契数列的第20项是什么。裴波那契数列,1,1,2,3,5,8,13,21……
1 package pac; 2 3 public class work_0003 { 4 5 public static void main(String[] args) { 6 // TODO Auto-generated method stub 7 8 int n=0; 9 int an=1; 10 int aN=1; 11 int c; 12 int i=0; 13 for (i = 0; i <18; i=i+2) { 14 c=aN; 15 aN=an+aN; 16 an=aN+c; 17 } 18 System.out.println("第"+(i+2)+"项为"+an); 19 } 20 21 }