第四次作业

1.使用for循环计算1-100的和,除了以3结尾的那些数

package refa;

import java.util.Scanner;
import java.util.Random;
public class trryrt {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
    int sum=0;
    for(int i=1;i<=100;i++) {
        if(i%10==3) {
            sum+=i;
        }
    }
    System.out.println("和为:"+sum); }}

 

 
2.使用二重循环输出以下图形

   *
  ***
 *****
*******


*****
****
***
**
*

package refa;

import java.util.Scanner;
import java.util.Random;
public class trryrt {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
    for(int i=0;i<4;i++) {
        for(int h =0;h<3-i;h++) {
            System.out.print(" ");
        }
        for(int j=0;j<2*i+1;j++) {
            
            System.out.print("*");
        }
        System.out.print("\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.print("\n");
    } }}

 

 
3.循环输入学生姓名,直到输入‘Q’程序结束。

package refa;

import java.util.Scanner;
import java.util.Random;
public class trryrt {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
    System.out.println("输入姓名(输入‘Q’结束输入):");    
    char name=input.next().charAt(0);
    while(true) {
        if(name!='Q'&& name!='q') {
            System.out.println("重新输入姓名(输入‘Q’结束输入):");
            name = input.next().charAt(0);
        }
        else {
            System.out.println("程序结束");
            break;
        }
    } }}

 

 
4.输入5个学生成绩,求和,当输入不合法<0   >100的时候,提示输入错误重新输入。

package refa;

import java.util.Scanner;
import java.util.Random;
public class trryrt {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("输入5个学生的成绩");
        int a =1;
        int grade;
        int sum =0;
        System.out.println("输入第"+a+"个学生的成绩:");
        while(true){    
         if(a<=5)
         {    
            grade = input.nextInt();
            if(grade<0||grade>100) {
                System.out.println("输入错误!!");
                System.out.println("重新输入第"+a+"个学生的成绩:");
            }
            else {
                sum+=grade;
                a++;
                if(a<=5) {
                System.out.println("输入第"+a+"个学生的成绩:");
                }
            }
            }
         else {
             System.out.println("输入完成\n5个学生的成绩和为:"+sum);
             break;
         }
        } }}

 

 


5.计算 1+1/(1+2) +  1/(1+2+3)  +1/(1+2+3+4)+…………+1/(1+2+....+10)

package refa;

import java.util.Scanner;
import java.util.Random;
public class trryrt {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        double sum = 0;
        int num = 0;
        for(int i=1;i<=10;i++) {
            num+=i;
            sum=sum+1.0/num;
        }
        System.out.println("结果为:"+sum); }}

 

 


6.产生一个1-99的随机数,猜数字,若大了就提示“大了点”,若小了就提示“小了点”直到猜对为止。
(判断猜的次数,如果1-3次,提示太棒了 如果5-8次 一般般 如果8次以上 太笨了)

package refa;

import java.util.Scanner;
import java.util.Random;
public class trryrt {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
         Random num = new Random();
         int haha = num.nextInt(100)+1;
         int n;
         int i=1;
         System.out.println("输入猜测的数:");
         n = input.nextInt();
         char a ='y';
         while(true) {

         if(n<haha) {
             System.out.println("数小了点");
         }
         else if(n>haha) {
             System.out.println("数大了点");
         }
         else {
             if(i<=3) {
                 System.out.println("第"+i+"次答对,你太棒了!!");
             }
             else if(3<i&&i<=8) {
                 System.out.println("第"+i+"次答对,你还不错!!");
             }
             else {
                 System.out.println("第"+i+"次答对,你太笨了!!");
             }
             System.out.println("是否继续游戏?\nn或N结束,其他任意字母继续!");
             a = input.next().charAt(0);
            
             if(a=='n'||a=='N') {
                 System.out.println("游戏结束!!");
                 break;
             }
             i=0;
             haha = num.nextInt(100)+1;
         }
         i++;
         System.out.println("输入猜测的数:");
         n = input.nextInt();
         } }}

 

 

 


7.输入一个数,判断是不是质数(只能被1和自身整除的数是质数)

package refa;

import java.util.Scanner;
import java.util.Random;
public class trryrt {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("输入一个数:");
        int num = input.nextInt();
        if(num%2!=0 &&num%3!=0 &&num%5!=0 &&
        num%7!=0 ||num==1 ||num==2 ||num==3 ||num==5||num == 7) {
            System.out.println(num+"是质数");    
            }
        else {
            System.out.println(num+"不是质数");
        }
}}

 

 

 



8.求裴波那契数列的第20项是什么。裴波那契数列,1,1,2,3,5,8,13,21……

package refa;

import java.util.Scanner;
import java.util.Random;
public class trryrt {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
     System.out.println("输入想知道的项:");
        int num = input.nextInt();
        int start = 0;
        int sum = 1;
        int now;
        for(int i=0;i<num;i++) {
            if(i==0) {
             continue;
            }
            now = sum;
            sum+=start;
            start = now;    
        }
        System.out.println(sum);

 


}}

 

 

posted @ 2023-04-12 21:39  人的伤痕痕  阅读(23)  评论(0)    收藏  举报