Я изо всех сил пытаюсь понять 2D-массивы, и мой экзамен через 2 дня, я попробовал себя, но я просто не могу разобраться с этим, так что это в основном мое последнее средство, и мне действительно нужна помощь, чтобы понять их.
Пример вопроса, который потребует от вас реализации 2D-массивов:
"Напишите Java-программу для водителя такси, чтобы следить за работой
с разных станций в разное время суток в течение 4 недель (28
дней). Водитель желает использовать информацию, чтобы принимать лучшие решения о
где работать в будущем.
Каждый день водитель выбирает станцию для работы. Они выбирают из Кингс-Кросс,
Ливерпуль-стрит, Паддингтон и Юстон и работают с этой станции весь день. Oни
работать до трех периодов каждый день: утром, днем и вечером.
Ваша программа должна позволять водителю такси указывать место, где он будет работать в этот день, и для каждого периода независимо от того, работают они в этот период или нет. Затем он должен повторно разрешить им вводить плату за проезд, давая им возможность выйти на этот период. В конце каждого дня в нем следует подводить итоги за этот день. По истечении четырех недель программа должна перечислять сводку на каждый день. "
В чем мне нужна помощь:
Как бы вы объявили этот 2D массив?
Как бы выглядели результаты? (Это то, с чем я борюсь, потому что не могу себе это представить)
Еще один вопрос для действительно умных программистов на Java:
Как это абстрагировать?
Пожалуйста, имейте в виду, что я студент первого курса, хотя любая помощь была бы полезной на этом этапе, я был бы очень признателен, если бы вы могли упростить ее или сделать ее в стиле процедурного программирования, чтобы я мог понимать и учиться.
Спасибо.
2D Массив, в данном случае, это PeriodRecord, я не хочу помогать в его решении, я просто хочу понять, как они работают, и я могу пойти еще раз попробовать, но на данный момент я застрял , Я хочу понять.
public static void main (String [] param)
{
String [] stations = {"Kings Cross", "Liverpool Street",
"Paddington","Euston"};
String [] periods = {"Morning", "Afternoon", "Evening"};
PeriodRecord [] [] periodrecords = createPeriodRecords(MAX_DAYS,
MAX_PERIODS, periods);
for(int day = 0; day < MAX_DAYS; day++)
{
workDay(periodrecords, day, periods, stations);
summariseDay(periodrecords, day);
}
printFullSummary(periodrecords);
}