Я просто заканчиваю эту программу, которую мне пришлось писать для класса. Предполагается, что программа получит вход от пользователя для «ID» и «День», и мой учитель просит нас поместить цикл в оба этих раздела, если пользователь не вводит правильный ID/День. Я написал программу туда, где она может принимать входные данные, но она не сможет отличить, если вход действителен или нет, и будет продолжаться через остальную часть программы. Также в конце массива предполагается напечатать массив, и я это сделал. Я просто хотел бы поместить ID (A, B, C, D) рядом с массивом. Я хотел бы, чтобы конечный результат имел идентификатор слева от массива, перечисленного вниз, чтобы соответствовать таблице 4x5. Если у вас есть какие-либо советы/советы о том, как это можно сделать, это будет оценено по достоинству.Формат Loop и Array
import java.util.Scanner;
public class Salesman
{
public static void main(String[]args)
{
Scanner input = new Scanner(System.in);
char[] names = {'A', 'B', 'C', 'D'};
char[] days = {'M', 'T', 'W', 'H', 'F'};
double[][] week = new double[4][5];
int stop = 0;
char nameInput;
char dayInput;
double cost;
int row;
int column;
do
{
System.out.println("Enter the salesman ID as A, B, C or D.");
String nameString = input.nextLine();
nameInput = nameString.charAt(0);
row = rowSearch(names, nameInput);
System.out.println("Enter the day of the week as M, T, W, H, or F");
String dayString = input.nextLine();
dayInput = dayString.charAt(0);
column = columnSearch(days, dayInput);
System.out.println("Enter the amount of the sale");
cost = input.nextDouble();
week[row][column] = cost;
System.out.println("Is there more data? Enter Y for more or N to stop");
input.nextLine();
String dataString = input.nextLine();
char dataInput = dataString.charAt(0);
if (dataInput == 'N')
{
stop = -1;
}
else
{
stop = 1;
}
}
while (stop >= 0);
System.out.println(" M T W H F");
for (row = 0; row < week.length; row++)
{
for (column = 0; column < week[row].length; column++)
{
System.out.printf("$%1.2f ", week[row][column]);
}
System.out.println();
}
}
public static int rowSearch(char[] names, char idInput)
{
int row = 0;
for (int i = 0; i < names.length; i++)
{
if (idInput == names[i])
row = i;
}
return row;
}
public static int columnSearch(char[] days, char columnInput)
{
int column = 0;
for (int i = 0; i < days.length; i++)
{
if (columnInput == days[i])
column = i;
}
return column;
}
}
написать один или несколько методы, которые запрашивают у пользователя для указанной информации и проверки, но не вернется, пока она не будет действительной или пользователь не войдет в условие выхода ... – MadProgrammer