中國大學MOOC 浙江大學 翁愷老師《零基礎學Java語言》-第二週程式設計題

清沐沐發表於2020-10-01

1.時間換算(5分)

題目內容:

UTC是世界協調時,BJT是北京時間,UTC時間相當於BJT減去8。現在,你的程式要讀入一個整數,表示BJT的時和分。整數的個位和十位表示分,百位和千位表示小時。如果小時小於10,則沒有千位部分;如果小時是0,則沒有百位部分;如果分小於10分,需要保留十位上的0。如1124表示11點24分,而905表示9點5分,36表示0點36分,7表示0點7分。

有效的輸入範圍是0到2359,即你的程式不可能從測試伺服器讀到0到2359以外的輸入資料。

你的程式要輸出這個時間對應的UTC時間,輸出的格式和輸入的相同,即輸出一個整數,表示UTC的時和分。整數的個位和十位表示分,百位和千位表示小時。如果小時小於10,則沒有千位部分;如果小時是0,則沒有百位部分;如果分小於10分,需要保留十位上的0。

提醒:要小心跨日的換算。

 

輸入格式:

一個整數,表示BJT的時和分。整數的個位和十位表示分,百位和千位表示小時。如果小時小於10,則沒有千位部分;如果小時是0,則沒有百位部分;如果小時不是0而且分小於10分,需要保留十位上的0。

 

輸出格式:

一個整數,表示UTC的時和分。整數的個位和十位表示分,百位和千位表示小時。如果小時小於10,則沒有千位部分;如果小時是0,則沒有百位部分;如果小時不是0而且分小於10分,需要保留十位上的0。

 

輸入樣例:

933

 

輸出樣例:

133

public class Main{

	public static void main(String[] args) {
		Scanner in =new Scanner(System.in);
		int BJT=in.nextInt(); 
		int UTC=0;
		int m=BJT%100;
	    if(BJT>=0&&BJT<=800&&m<60) {
			UTC=BJT+1600;  //UTC=BJT-800+2400,代表前一天的時間
			if(UTC==2400) UTC=0;
			System.out.println(UTC);
		}
	    else if(BJT>800&&BJT<=2359&&m<60) {
			UTC=BJT-800;
			System.out.println(UTC);
		}
		else System.out.println("輸入的值錯誤");
	}
}

 

2.訊號報告(5分)

題目內容:

無線電臺的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.

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		int RS = in.nextInt();
		int r = RS%10;
		int s = RS/10;
		switch(r)
		{
			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(s)
			{
			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;
			}
		}
}

 

相關文章