信号报告——mooc《零基础学Java语言》-(浙大翁凯)第二周编程题(2)

问题描述:

无线电台的RS制信号报告是由三两个部分组成的:

R(Readability) 信号可辨度即清晰度.

S(Strength)    信号强度即大小.

其中R位于报告第一位,共分5级,用1—5数字表示.

1---Unreadable

2---Barely readable, occasional words distinguishable

3---Readable with considerable difficulty

4---Readable with practically no difficulty

5---Perfectly readable

报告第二位是S,共分九个级别,用1—9中的一位数字表示

1---Faint signals, barely perceptible

2---Very weak signals

3---Weak signals

4---Fair signals

5---Fairly good signals

6---Good signals

7---Moderately strong signals

8---Strong signals

9---Extremely strong signals

现在,你的程序要读入一个信号报告的数字,然后输出对应的含义。如读到59,则输出:

Extremely strong signals, perfectly readable.

 

输入格式:

一个整数,信号报告。整数的十位部分表示可辨度,个位部分表示强度。输入的整数范围是[11,59]内有效的数字,这个范围外的数字不可能出现在测试数据中。

 

输出格式:

一句话,表示这个信号报告的意义。按照题目中的文字,先输出表示强度的文字,跟上逗号和空格,然后是表示可辨度的文字,跟上句号。注意可辨度的句子的第一个字母是小写的。注意这里的标点符号都是英文的。

 

输入样例:

33

 

输出样例:

Weak signals, readable with considerable difficulty.

时间限制:500ms内存限制:32000kb   问题分析: 对switch循环的简单运用   代码实现:
import java.util.Scanner;

public class 信号报告 
{
	public static void main(String[] args) 
	{
		Scanner in=new Scanner(System.in);
		int i;
		int first;
		int second;
		i=in.nextInt();
		second=i/10;//十位数
		first=i%10;//个位数
		if(i>=11&&i<=59) {
		switch(first) //个位数值决定第一句话
		{
		case 1:
			System.out.print("Faint signals, barely perceptible,");
			break;
		case 2:
			System.out.print("Very weak signals,");
			break;
		case 3:
			System.out.print("Weak signals,");
			break;
		case 4:
			System.out.print("Fair signals,");
			break;
		case 5:
			System.out.print("Fairly good signals,");
			break;
		case 6:
			System.out.print("Good signals,");
			break;
		case 7:
			System.out.print("Moderately strong signals,");
			break;
		case 8:
			System.out.print("Strong signals,");
			break;
		case 9:
			System.out.print("Extremely strong signals,");
			break;
		}
		switch(second) //十位数值决定第二句话
		{
		case 1:
			System.out.print("Unreadable.");
			break;
		case 2:
			System.out.print("Barely readable, occasional words distinguishable.");
			break;
		case 3:
			System.out.print("Readable with considerable difficulty.");
			break;
		case 4:
			System.out.print("Readable with practically no difficulty.");
			break;
		case 5:
			System.out.print("Perfectly readable.");
			break;
		}
	}
		else 
		{
			System.out.println("输入数字错误!");
		}
		in.close();
	}

}

 

上一篇:【CodeWars】Human readable duration format时间可读化


下一篇:Linux shell - 按时间和文件大小排序显示文件