educoder头歌 | Java控制语句

在外国的高校中,学生的成绩都是通过绩点来表示,那么绩点是怎么计算的呢?

下面是一个简单的绩点计算方法:

90~100分:4.0绩点
80~90分:3.5绩点
70~80分:3.0绩点
60~70分:2.5绩点
60分以下:0.0绩点
现在在外国留学的小明刚刚得到了他的一门课的成绩,请你写一个小程序告诉他这门课的绩点是多少。

package step1;

public class DecomposeFactor {
	public void decompose(int score) {
		/********** Begin *********/
        if (score >= 90) {
        System.out.println("4.0");
        }
        else if (score >= 80) {
        System.out.println("3.5");
        }
        else if (score >= 70) {
        System.out.println("3.0");
        }
        else if (score >= 60) {
        System.out.println("2.5");
        }
        else {
        System.out.println("0.0");
        }


		/********** End *********/
	}
}

我们定义这样一个奇怪的运算式,sum=a+aa+aaa+aaaa+aa…a (n个a)。在本关中,给定a和n的值,要求计算得到sum的值。

例如当a=2,n=3时,2+22+222=246,即sum的值为246。

package step2;

public class AdditionCalculator {
	public void addition(int a, int n) {
		/********** Begin *********/
        int i = 0;
        int x = a;
        int sum = 0;
        while(i<n){
            sum += x;
            i+=1;
            x=x*10+a;

        }
        System.out.print(sum);


		/********** End *********/
	}
}

在本关中,你将被要求接收命令行输入的一个正整数n,利用for循环求其阶乘,即n!。

例如,5!=54321=120。

package step3;

public class Factorial {
	public void factorial(int n) {
		/********** Begin *********/
       int i=1,sum=1;
        for(i=1;i<=n;i++)
        {
            sum=sum*i;
        }
        System.out.print(sum);
		/********** End *********/
	}
}

在本关中,你将被要求对命令行输入某年某月某日(多个数字用空格隔开),判断这一天是这一年的第几天,输出结果。

例如:输入2017 1 1,计算得出这是2017年的第一天。

package step4;

public class DayCount {
	public void dayCount(int year, int month, int day) {
		/********** Begin *********/
        int days = day;

		switch(month){
			case 12:
				
				days += 30;
			case 11:
				
				days += 31;
			case 10:
				days += 30;//九月
			case 9:
				days += 31;//八月
			case 8:
				days += 31;//七月
			case 7:
				days += 30;//六月
			case 6:
				days += 31;//五月
			case 5:
				days += 30;//四月
			case 4:
				days += 31;//三月
			case 3:
				days += 28;//二月
				
				if(year % 4 ==0 && year % 100 != 0 || year%400==0){
					days++;
				}
			case 2:
				days += 31;//一月
		}
		System.out.println(days);




		/********** End *********/
	}
}
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值