Как вывести список значений после завершения цикла? - PullRequest
0 голосов
/ 01 октября 2018

Предполагается рассчитать комиссию за продажу на основе входных переменных и перечислить их после завершения цикла.

Я не уверен, как поступить со списком значений totalEarned после того, как они изменятся после завершения цикла.

import java.util.Scanner;

public class SalesCommissionCalc

{
 public static void main( String [] args )
  {
     final int SENTINEL = -1;
     double grossSales;
     double totalEarned;
     Scanner scan = new Scanner( System.in );

     System.out.print( "Enter gross sales for the last week, or -1 to stop > " );
     grossSales = scan.nextDouble( );

     while ( grossSales != SENTINEL )
 {
         totalEarned =(500 + (grossSales * .08));
         System.out.println( "Earned last week: $" + totalEarned );

         System.out.print( "Enter gross sales for the last week, or -1 to stop > " );
         grossSales = scan.nextDouble( );
         System.out.println( "Total Earned: $" + totalEarned );
     }

  }
}

Кроме того, если бы я добавил имена в программу, мне пришлось бы вводить другой цикл или я мог бы втиснуть его в тот же цикл и оставить введенные имена присоединенными к введенным значениям, когда яперечислить их после цикла?

Ответы [ 2 ]

0 голосов
/ 01 октября 2018

Вы должны получить значения, передав их в виде списка или массива.

List<double> earned = new List<double>;
0 голосов
/ 01 октября 2018

Вы можете сохранить значения в списке, а затем извлечь и использовать их так, как вы хотите.

import java.util.Scanner;

public class SalesCommissionCalc  
{
 public static void main( String [] args )
 {
     final int SENTINEL = -1;
     double grossSales;
     double totalEarned;
     //declare the list
     List<double> earnings = new List<double>;
     Scanner scan = new Scanner( System.in );

     System.out.print( "Enter gross sales for the last week, or -1 to stop > " );
     grossSales = scan.nextDouble( );

     while ( grossSales != SENTINEL )
     {
         totalEarned =(500 + (grossSales * .08));
         //add the value to the list
         earnings.add(totalEarned);
         System.out.println( "Earned last week: $" + totalEarned );

         System.out.print( "Enter gross sales for the last week, or -1 to stop > " );
         grossSales = scan.nextDouble( );
         System.out.println( "Total Earned: $" + totalEarned );
     }

     //retrieve the value at the third position in the list
     earnings.get(3); //here you could also use a foreach or for loop to iterate through all list entries
  }
}
...