2015-04-06 3 views
-2

Напишите программу, в которой хранятся еженедельные (с понедельника по пятницу) итоги продаж для трех продавцов. Ваша программа должна позволять пользователю вводить суммы продаж и распечатывать отчет о продажах с заголовками, ежедневные итоговые данные для каждого продавца (ваш двумерный массив), рассчитанные недельные итоги для каждого продавца и рассчитанные итоговые значения за день каждого продавец. Кроме того, создайте одномерный массив строк, представляющих дни недели (с понедельника по пятницу), используя список инициализаторов.JAVA MULTI DIM ARRAY COLUMN & ROW TOTAL, OUTPUT

НУЖНА ПОМОЩЬ НА ПОЛУЧЕНИЕ этот вывод и ВЫЧИСЛЕНИЯ ROW & COLUMN СОСТАВИЛ

Weekly Sales Report 

     Mon  Tue  Wed Thurs Fri  Total 

1 10.00 20.00 30.00 40.00 50.00  150.00 

2 60.00 70.00 80.00 90.00 10.00  310.00 

3 20.00 30.00 40.00 50.00 60.00  200.00 

-------------------------------------------------------------- 

    90.00 120.00 150.00 180.00 120.00  660.00 



import java.util.Scanner; 

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

    // 1) Declare and allocate Storage 

    String [] days = { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday"}; 
    double [][] saleTotals = new double [3][5]; 

    // 2) Populate Array 

    for (int i = 0; i < saleTotals.length; i++) 
    for (int j = 0; j < saleTotals[0].length; j++) 
    { 
     System.out.print("Enter " + days[j] + " Totals for Salesperson " + (i+1) + ": " + " "); 
     saleTotals[i][j] = scan.nextDouble(); 

    } 

    // 3) Process Array - Accumulators 
    double total = 0; 
    for (int i = 0; i < saleTotals.length; i++) 
     for (int j = 0; j < saleTotals[0].length; j++) 
     total += saleTotals[i][j]; 



    System.out.println(); 
    System.out.println(" Weekly Sales Report "); 

    // 4) Output Array 
    for (int i = 0; i < saleTotals.length; i++) 
    { 
     System.out.println(); 
     for (int j = 0; j < saleTotals[0].length; j++) 
     { 
     System.out.print(saleTotals[i][j] + "\t"); 
     } 
    } 

    System.out.println(); 
    System.out.println("-----------------------------------"); 


    System.out.println(total); 

ЭТО КАК ДАЛЕКО IVE нечестным

ответ

0

ваш массив не имеет элементов поэтому его длина будет равна 0, вы должны изменить для индекса петель, как это:

for (int i = 0; i < 3; i++) 
    for (int j = 0; j < 5; j++) 
    { 
      ..... 
    } 
} 
0

Я совершенно новой для Java, но смотрел на это как вызов, это то, как я это сделал:

import java.util.Scanner; 

/* 
Weekly Sales Report 

Mon  Tue  Wed Thurs Fri  Total 

1 10.00 20.00 30.00 40.00 50.00  150.00 

2 60.00 70.00 80.00 90.00 10.00  310.00 

3 20.00 30.00 40.00 50.00 60.00  200.00 

-------------------------------------------------------------- 

     90.00 120.00 150.00 180.00 120.00  660.00 

*/ 

public class WeeklyReportExample { 

    public static void main(String[] args) { 

     Scanner scan = new Scanner(System.in); 

     String[] days = new String[] { "Mon", "Tue", "Wed", "Thurs", "Fri" }; 
     int[] salesPerson = new int[] { 1, 2, 3 }; 
     double[][] salesFigures = new double[3][5]; 

     for (int i = 0; i < salesPerson.length; i++) { 

      System.out.println("Sales Person " + salesPerson[i] + " :"); 

      for (int j = 0; j < days.length; j++) { 

       System.out.println(); 
       System.out.println("Enter daily sales amount for " + days[j] 
         + " : "); 
       double dailyAmount; 
       dailyAmount = scan.nextDouble(); 
       salesFigures[i][j] = dailyAmount; 
      } 
     } 

     double[] salesPersonTotal = new double[3]; 
     double[] dailyTotal = new double[5]; 
     double overallTotal = 0; 

     System.out.println(); 
     System.out.println("Weekly Sales Totals:"); 
     System.out.println(); 
     System.out.print("\t"); 

     for (int i = 0; i < days.length; i++) { 

      System.out.print(days[i] + "\t"); 
     } 

     System.out.print("Total"); 
     System.out.println(); 
     System.out.println(); 

     for (int k = 0; k < salesFigures.length; k++) { 

      System.out.print(salesPerson[k] + "\t"); 

      for (int l = 0; l < salesFigures[k].length; l++) { 

       salesPersonTotal[k] += salesFigures[k][l]; 
       dailyTotal[l] += salesFigures[k][l]; 

       System.out.print(String.format("%.2f", salesFigures[k][l]) 
         + "\t"); 
      } 

      overallTotal += salesPersonTotal[k]; 


      System.out.print(String.format("%.2f", salesPersonTotal[k])); 
      System.out.println(); 
      System.out.println(); 
     } 

     System.out.println("-------------------------------------------------------"); 
     System.out.println(); 
     System.out.print("\t"); 

     for (int m = 0; m < dailyTotal.length; m++) { 

       System.out.print(String.format("%.2f", dailyTotal[m]) + "\t"); 
     } 

     System.out.print(String.format("%.2f", overallTotal)); 

    } 

}