2015-06-24 60 views
-13

我是新來這個java語言,請幫我出:請幫我用java編程錯誤

import java.util.Scanner; 

class MyClass { 

    public static void main(String[] args){ 
     System.out.println("give any number"); 
     Scanner n = new Scanner(System.in); 
     for(int x = 0; n < x; x++){ 
      if(x==3){ 
       System.out.println("fizz"); 
       x = x+1; 
      } else if(x==5){ 
       System.out.println("buzz"); 
       x = x+1; 
      } else { 
       System.out.println("x"); 
       x = x+1; 
      } 
     } 
    } 
} 
+5

請發表您的錯誤 – xrcwrn

+1

@borra這是什麼'爲(X = 0; N

+2

告訴錯誤和你的問題 – Sybren

回答

0

1)需要從Scanner

得到int值變化

Scanner scanner = new Scanner(System.in); 
     int n = scanner.nextInt(); 

2.)在for loop更改比較中,x從0開始,從而改變相應

變更

for (x = 0 ; x < n ; x++) { 

代碼如下

public static void main(String[] args) { 
     int x = 0; 
     System.out.println("give any number"); 
     Scanner scanner = new Scanner(System.in); 
     int n = scanner.nextInt(); 
     for (x = 0 ; x < n ; x++) { 
      if (x == 3) { 
       System.out.println("fizz"); 
       x = x + 1; 
      } else if (x == 5) { 
       System.out.println("buzz"); 
       x = x + 1; 
      } else { 
       System.out.println("x"); 
       x = x + 1; 
      } 
     } 
    } 

輸出

give any number 
3 
x 
x 
+0

和如何處理這個輸出它接縫沒用! – Hiru

0
import java.util.Scanner; 

class MyClass { 

public static void main(String[] args) 
{ 
    int x=0; 
    int i=1; 
    System.out.println("give any number"); 
    Scanner n = new Scanner(System.in); 
    i= n.nextInt(); 
    for(x=0;i<x;x++) 
    { 
     if(x==3) 
     { 
      System.out.println("fizz"); 
      x=x+1; 
     } 
     else if(x==5) 
     { 
      System.out.println("buzz"); 
      x=x+1; 
     } 
     else 
     { 
      System.out.println("x"); 
      x=x+1; 
     } 
    } 
} 
} 
+0

這個答案正確嗎?如果我給出的輸入大於0,似乎並沒有運行循環。你認爲'i Aakash

+1

錯了。這在輸入正數時不會產生任何輸出。我想知道OP爲什麼接受它。此外,如果您提供關於更改的一些解釋而不是發佈僅用於代碼的答案,那更好。 –

+0

他們是細節傢伙,你可以改變我和x的初始值。代碼可以編譯?是。 – magirtopcu

0

你必須得到Scanner你的價值int n = num.nextInt();讓掃描儀值INT。

Scanner num = new Scanner(System.in); 
     int n = num.nextInt(); 
     for(x=0;n<x;x++) 
0

你提到你的expected output 做..

import java.util.Scanner; 

class MyClass { 

    public static void main(String[] args) {    
      int x = 0; 
      System.out.println("give any number"); 
      Scanner num = new Scanner(System.in); 
      int n = num.nextInt(); 
      for (x = 1; x <= n; x++) { 

       if (x == 3) { 
        System.out.println("fizz"); 
       } else if (x == 5) { 
        System.out.println("buzz"); 
       } else { 
        System.out.println(x); 
       } 

      } 
    } 
} 

輸出:

give any number 
5 
1 
2 
fizz 
4 
buzz