2016-11-24 254 views
0

我应该写一个要求输入姓名的代码,要求输入1到10之间的数字,然后从1输入用户输入的数字,除非每个第三个数字应该是用户输入的姓名该计划的开始。我的代码符合这一目的。下一步是使用循环打印所有从2到用户号码的偶数。我不知道如何在代码中包含这些信息,甚至是什么样的循环。有人可以解释如何正确包含这个吗?这是目前的代码。打印偶数的循环?

import java.util.Scanner; 

public class NewClass1 { 
    public static void main(String[] args) { 

     int number; 

     Scanner scan = new Scanner(System.in); 
     System.out.print("Enter your name: "); 
     String name = scan.nextLine(); 

     System.out.print("Please enter a number between 1 and 10: "); 
     number = scan.nextInt(); 

     //asks for a number between one and ten until I get number within that range, 
     while (number < 1 || number > 10) { 
      System.out.print("No, between 1 and 10: "); 
      number = scan.nextInt(); 
     } 

     for (int i = 1; i <= number; i++) { 
      if (i % 3 == 0) { 
       System.out.print(name + " "); 
      } else { 
       System.out.print(i + " "); 
      } 
     } 
    } 
} 
+0

所以你需要一个循环,开始于打印和每秒数。你有什么麻烦?它基本上只是把价值和添加一个打印。 –

+0

使用一个类似于你所拥有的循环,除非'i%2 == 0'什么都不打印,也就是说,省去'if'语句的'else'部分。 –

回答

0

下面的代码,供您参考:

public class NewClass1 { 
    public static void main(String[] args) { 
     int number; 
     Scanner scan = new Scanner(System.in); 
     System.out.print("Enter your name: "); 
     String name = scan.nextLine(); 

     System.out.print("Please enter a number between 1 and 10: "); 
     number = scan.nextInt(); 

    //asks for a number between one and ten until I get number within that range, 
     while (number < 1 || number > 10) { 
      System.out.print("No, between 1 and 10: "); 
      number = scan.nextInt(); 
     } 

    for (int i = 1; i <= number; i++) { 
     if (i % 3 == 0) { 
      System.out.print(name + " "); 
     }else { 
      System.out.print(i + " "); 
     } 
    } 
    System.out.println(); 
    for(int i =2; i<=number; i+=2) 
     System.out.print(i + " "); 
    } 
} 
1

运行一个循环,每个偶数打印是没有什么不同,然后运行一个循环,每第三个数字打印。只需使用% 2,而不是% 3

for (int i = 2; i <= number; i++) { 
    if (i % 2 = 0) { 
     System.out.print(i + " "); 
    } 
} 

这可以被改写,而无需使用%可言:

for (int i = 2; i <= number; i += 2) { 
    System.out.print(i + " "); 
} 
0

这是一个循环,由偶数上升。

for(int i=2;i<number;i+=2) 
{ 
    System.out.println(i); 
} 
0
public static void main(String[]p){ 
    int limit=20; 
    for(int i=2; i<=limit; i+=2) 
    { 
     System.out.println(i); 
    } 
} 
-1
for (int i = 2; i <= number; i++) { 
    if (i % 2 = 0) { 
     System.out.print(i + " "); 
    } 
} 

上面是代码。

+0

尝试添加一些关于您的代码的解释以丰富您的答案。 – zuazo

+1

'='或'=='? –

+0

使用'=='@Tahir –

0
for (int i = 2; i <= number; i++) { 
    if (i % 2 == 0) { 
     System.out.print(i + " "); 
    } 
}