2016-02-27 2 views
0

Я пытаюсь отображать числа, делящиеся на два целых числа, вводимых пользователем, с использованием оператора цикла for. Например, если я должен был ввести 5 и 30, я бы получил вывод «5 10 15 30». Пока у меня есть базовая настройка, но я застрял прямо здесь. Как я могу использовать переменные для разделения друг от друга в инструкции цикла?Использование двух целых чисел для поиска кратных между ними

import java.util.Scanner; 
public class practice4 { 


public static void main(String[] args) { 
    Scanner in = new Scanner(System.in); 

    int N_small= 0, N_big = 0; 


    System.out.printf("Enter the first number: "); 
    N_small = in.nextInt(); 
    System.out.printf("Enter the second number: "); 
    N_big = in.nextInt(); 

if (N_small < N_big) { 
     for (int i = N_small; i == N_big; i++){ 
     //Issue here! *** 
    System.out.printf("The numbers are: %d\n", i); 

    } 
    } 
    } 
} 

Пример вывода в случае, я не достаточно ясно:

----------- Sample run 1: 

Enter the first number: 5 
Enter the second number: 30 
The numbers are: 5 10 15 30 
Bye 

и

----------- Sample run 3: 

Enter the first number: 7 
Enter the second number: 25 
The numbers are: 
Bye. 

Любая помощь очень ценится, спасибо!

ответ

0

хорошо, если первый вход 5, а второй 30 и выход-10 15 30 (вы приращение по формуле (первого входа) 5) так что если вход 10 и 25 на выходе должен 10 20 25 приращение (первый вход). , если это то, что вы пытаетесь объяснить то ваш код должен выглядеть следующим образом

Scanner in = new Scanner(System.in); 
 

 
    int N_small= 0, N_big = 0 ,i; 
 

 
    System.out.printf("Enter the first number: "); 
 
    N_small = in.nextInt(); 
 
    System.out.printf("Enter the second number: "); 
 
    N_big = in.nextInt(); 
 

 
if (N_small < N_big) { 
 
     System.out.printf("The numbers are:");   
 
     for (i = N_small; i < N_big+1 ; i=i+N_small){ 
 
     if(i > N_big) System.out.println(N_big); else System.out.println(i); 
 

 
    } 
 
    } 
 
    }

+0

Он должен быть кратен первого целого и делится на второй, так, например, этот код печатает 5 10 15 20 25 30, но 20 и 25 не делятся на 30, поэтому их нужно вырезать, я считаю, используя функцию modulo, но я не совсем уверен. – lana

+0

Я понял это, используя ваш пример, спасибо. – lana