2017-02-22 60 views
0

我是一年級的大學生,開始我的計算機科學專業,所以對於任何新秀錯誤都很抱歉。我們剛剛開始使用if/else語句,並且主要在這個名爲「Practice-It!」的網站上練習,這是一個Java,C++和Python的編程實踐網站,儘管我目前正在學習Java。現在,我最近遇到了這個叫「evenOdd」的問題,在這個問題中我們需要從用戶那裏讀取一個整數,如果它是一個偶數就打印「偶數」,如果它是一個奇數則打印「奇數」。確切的問題如下:爲什麼我的偶數代碼產生一個輸出?

編寫Java代碼從用戶讀取一個整數,然後打印,即使該數字是偶數,否則打印。你可以假設用戶鍵入一個有效的整數。輸入/輸出應符合下面的例子:

Type a number: 14 
even 

我敢肯定,我知道如何做到這一點,但是當我在我裸露的代碼輸入,它不產生任何輸出。我不確定爲什麼。我的代碼如下:

int number; 
Scanner console = new Scanner(System.in); 
System.out.print("Type a number: "); 
number = console.nextInt(); 
if (number % 2 == 0) { 
    System.out.println("even"); 
} else  if (number % 2 != 0) { 
    System.out.println("odd"); 
} 

我應該提到我應該放在裸代碼,意思是沒有類或方法。

我不確定是否只是我或者網站有點故障。任何幫助深表感謝。

+1

它甚至不顯示「鍵入一個數字:」行嗎? – AntonH

+1

您的代碼看起來正確。我會說這是網站的問題,或者網站希望輸出的問題。我也會使用IDE以查看你在做什麼。 –

+2

哪裏是真正應該*運行*這個代碼的主要方法? –

回答

0

你的代碼是健全的,但如果這是你提交給編譯器的所有代碼,那麼它將無法工作。您需要從java.util.Scanner中導入Scanner類,並且您需要在函數和類中運行代碼,而不像可以在IDE或控制檯中免費運行的python。這是爲我工作的代碼。

import java.util.Scanner; 

public class temp{ 

public static void main(String [] args){ 

    int number; 
    Scanner console = new Scanner(System.in); 
    System.out.print("Type a number: "); 
    number = console.nextInt(); 
    if (number % 2 == 0) { 
     System.out.println("even"); 
    } else if (number % 2 != 0) { 
     System.out.println("odd"); 
    } 
} 


} 

希望有幫助。

+0

剛剛看到的只是提交裸機代碼而不是整個班級。 – sasasam

0

我建議你使用Eclipse或NetBeans等IDE。這些IDE將幫助您編寫和調試您的代碼。他們還會在您的代碼中標記錯誤,並提供描述和快速修復,以幫助您編寫代碼。

package abc.xyz.test; 

import java.util.Scanner; 

public class EvenOdd 
{ 
public static void main(String... args) 
{ 
    Scanner input = new Scanner(System.in); 
    System.out.print("Enter a number: "); 
    if (input.nextInt() % 2 == 0) 
    { 
     System.out.println("even"); 
    } 
    else 
    { 
     System.out.println("odd"); 
    } 
    input.close(); 
} 
} 

您可以從https://www.eclipse.org/downloads/和NetBeans從https://netbeans.org/downloads/下載Eclipse。他們都是免費的,您不必爲使用它們付費。

0

您需要從java.util包中導入掃描器。在每個Java程序中都必須有一個主要方法。嘗試下面的代碼。看我的代碼我創建一個名爲userInput的掃描器的實例,並在我的代碼結束時,我調用close()方法來防止資源泄漏。你不會因爲不關閉而出現任何錯誤,但這是良好實踐的一部分。

import java.util.Scanner; 

public class Main { 

    public static void main(String[] args) { 

     int number = 0; 
     Scanner userInput = new Scanner(System.in); 
     System.out.println("Type a number"); 
     number = userInput.nextInt(); 

     if(number % 2 == 0) { 
      System.out.println("Even"); 
     } else { 
      System.out.println("Odd"); 
     } 
     userInput.close(); 

    } 

} 
相關問題