2016-02-01 55 views
-11

大家好!我在編碼方面遇到了一些麻煩。使用冰雹石,我需要在一定數量的線上添加我的全名。我的名字必須通過「TAB」(白色空格)與打印輸出分開。 一旦名稱字符都打印出來,然後打印出來的其餘部分不應該有縮進。必須將我的名字,中間名,姓氏之間的白色字符打印出來,如下所示。在Java中拼寫我的名字?

例如,名稱喬土應該看起來像:

Ĵ 15是奇數,所以使3N + 1:46

ö 46是偶數,所以取一半: 23

ë 23是奇數,所以使3N + 1:70

70是偶數,所以取一半:35

d 35是奇數,所以使3N + 1:106

106爲偶數,所以取一半:53

ř 53是奇數,所以使3n個1:160

Ť 160爲偶數,所以取一半:80

80是偶數,所以取一半:40

40是偶數,所以取一半:20

20是偶數,所以取一半:10

10是偶數,所以取一半:5

5是奇數,所以拍出3N + 1:16

16是偶數,所以取一半:8

8是偶數,所以取一半:4

4爲偶數,所以我拿一半:2

2爲偶數,所以我拿一半:1

整個過程花了17個步驟,以達到1

我知道如何冰雹石頭代碼,但不是我的名字。這是我的第一個Java編碼任務之一,所以我完全失去了。這是我到目前爲止:

public static void main(String[] args) { 

Scanner inputScanner = new Scanner(System.in); 

System.out.printf("Please enter a Number: "); 

try { 

int number = inputScanner.nextInt(); 

int steps = 0; 

while (number != 1) { 

if (number % 2 == 0) { 

System.out.println(number + " is an even number, so I take half: " + number/2); 

number /= 2; 

} 

else { 

System.out.println(number + " is an odd number, so I make 3n + 1: " + (number * 3 + 1)); 

number = number * 3 + 1; 

} 

steps++; 

} 

System.out.println("The process took " + steps + (steps < 2 ? " step" : " steps") + 

" to reach 1"); 

} catch (Exception e) 

{ 

System.out.println("The input entered is not a number. Please run again."); 

謝謝。 :)

+2

因爲做其他人的功課,所以沒有。 –

+0

我從來不想讓別人做我的功課。我只需要關於如何繼續的建議。我甚至不知道該怎麼稱呼這個問題,所以我可以得到幫助。正如你所看到的,我自己完成了大部分工作。 – BoyGeorge

+0

提示:回到你的講義,並在課堂上閱讀。 Java中的所有方法都必須在類(或接口)中聲明。 –

回答

2

通過選擇使用整數「step」,可以使用'/ t'作爲製表符縮進,每個字符使用'Substring'。

將它置於打印輸出句子的前面。

我不確定如果步驟的數量少於您的名字的長度會發生什麼。你必須找出答案。

希望它有幫助。

+0

非常感謝。我只是需要一個能讓我走上正軌的想法。如果可以的話,我會鼓勵你。我沒有足夠的聲望來支持你。 – BoyGeorge

+0

這很好,很樂意幫忙。 –