简体   繁体   中英

Listing multiples of user-inputted numbers

The task is to "Write a program that displays a user-indicated number of multiples for an integer entered by the user."

I suppose I do not need a completely direct answer (although I do want to know the methods/formula to use), as I want to use this as a learning experience in order to do and learn from the task myself. I really want to know about the process and which methods to use, along with finding a formula. :||

I'm really not sure how to write a code that displays a user-inputted number of a user-inputted integer. The hardest part seems to be writing the loop formula. Not sure where to start.

So far, I have:

import java.util.Scanner;

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

\\just stuff to base my code off of

      int integer;
      int numberMultiples;

      System.out.println("Enter an integer: ");

      integer = keyboard.nextInt();

      System.out.println("How many multiples of " + integer + " would you like to know?");
         numberMultiples = keyboard.nextInt();

      System.out.println("Listing the first " + numberMultiples + " multiples of " + integer + ": ");

\\pretty much everything from here on out.. I'm not sure what to really do.
      int n = integer;
      int result = (integer * (numberMultiples));
      while (result > 0){}

      System.out.print(result);
   }
} \\at the moment this code doesn't seem to have any running errors

I'm really not sure how to write a code that displays a user-inputted number of a user-inputted integer. The hardest part seems to be writing the loop formula. Not sure where to start.

NEW QUESTION I need to loop my program as well. (By asking a question to the user first.) Mines isn't working, as it just keeps looping only the integer loop and doesn't let me type yes/no. import java.util.Scanner;

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

       Scanner keyboard = new Scanner(System.in);
       int integer, numberMultiples;
       String repeat = "yes";

       while (repeat != "no")
       {
         System.out.println("Enter an integer: ");
         integer = keyboard.nextInt();

         System.out.println("How many multiples of " + integer + " would you like to know?");
         numberMultiples = keyboard.nextInt();

         System.out.println("Listing the first " + numberMultiples + " multiples of " + integer + ": ");

         for (int i=1; i<=numberMultiples; i++){
         System.out.println(integer + " * " + i + "   =  " + i*integer );
         }


         System.out.println("Would you like to do this again? Enter yes or no: ");
         repeat = keyboard.nextLine();


   }  

} 

}

Do you want like this ? Below is the code

package com.ge.cbm;


import java.util.Scanner;

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

//just stuff to base my code off of

      int integer;
      int firstEntered;
      int numberMultiples;

      System.out.println("Enter an integer: ");

      integer = keyboard.nextInt();
      firstEntered = integer;
      System.out.println("How many multiples of " + integer + " would you like to know?");
         numberMultiples = keyboard.nextInt();

      System.out.println("Listing the first " + numberMultiples + " multiples of " + integer + ": ");

//pretty much everything from here on out.. I'm not sure what to really do.

     for (int i=0;i<numberMultiples;i++){
         integer=integer*firstEntered;
         System.out.println(integer);
     }
   }
}

Output:

Enter an integer: 
3
How many multiples of 3 would you like to know?
7
Listing the first 7 multiples of 3: 
9
27
81
243
729
2187
6561

Ok so you need to understand the problem first to know how to solve it

x = First input
n = Second input 

you need to calculate n multiple of x example with x = 3 and n = 10 To calculate 10 multiple of 3 we need to do :

  1st multiple = x*1
  2nd multiple = x*2
  3rd multiple = x*3
  ...
  n   multiple = x*n

you can notice that these operations can be replaced by one for loop (notice first and last character of every line, it can be index of your loop )

Back to java :)

for (int i=1; i<=numberMultiples; i++){
    System.out.println("Listing multiple N# " + i + "   =  "+ i*integer );
 }

Replace your code with the following and try this code :

import java.util.Scanner;

public class MultipleLooping{
    public static void main(String[] args){
        Scanner keyboard = new Scanner(System.in);
        int integer,numberMultiples;

        System.out.println("Enter an integer: ");
        integer = keyboard.nextInt();

        System.out.println("How many multiples of " + integer + " would you like to know?");
        numberMultiples = keyboard.nextInt();

        for (int i=1; i<=numberMultiples; i++){
            System.out.println("Listing multiple N# " + i + "   =  "+ i*integer );
        }
    }
}


Enter an integer: 
3
How many multiples of 3 would you like to know?
7
Listing multiple N# 1   =  3
Listing multiple N# 2   =  6
Listing multiple N# 3   =  9
Listing multiple N# 4   =  12
Listing multiple N# 5   =  15
Listing multiple N# 6   =  18
Listing multiple N# 7   =  21

this should work

while(repeat.equals("yes"))
{
     System.out.println("Enter an integer: ");
     integer = keyboard.nextInt();

     System.out.println("How many multiples of " + integer + " would you like to know?");
     numberMultiples = keyboard.nextInt();

     System.out.println("Listing the first " + numberMultiples + " multiples of " + integer + ": ");

     for (int i=1; i<=numberMultiples; i++)
     {
        System.out.println(integer + " * " + i + "   =  " + i*integer );
     }


     System.out.println("Would you like to do this again? Enter yes or no: ");
     repeat = keyboard.nextLine();
     repeat = keyboard.nextLine();
} 

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM