Программа для распределения ящиков по контейнерам и грузовикам в зависимости от их количества
Смогла решить проблему для 0 ящиков, а вот что делать с 27 я не могу понять. Помогите плиз! Прикладываю исправленный код.
package practice;
import java.util.Scanner;
public class TrucksAndContainers {
public static void main(String[] args) {
int container = 0;
int truck = 0;
int maxInContainer = 27;
int maxInTruck = 12;
Scanner scanner = new Scanner(System.in);
//получение количество коробок от пользователя
int boxes = scanner.nextInt();
// TODO: вывести в консоль коробки разложенные по грузовикам и контейнерам
// пример вывода при вводе 2
// для отступа используйте табуляцию - \t
if (boxes == 0) {
} else if (boxes < maxInContainer) {
container++;
truck++;
System.out.println("Грузовик: " + truck + System.lineSeparator() +
"\tКонтейнер: " + container);
} else if (boxes >= maxInContainer) {
container++;
truck++;
System.out.println("Грузовик: " + truck + System.lineSeparator() +
"\tКонтейнер: " + container);
}
for (int i = 1; i <= boxes; i++) {
System.out.println("\t\tЯщик: " + i);
if (i % (maxInContainer * maxInTruck) == 0) {
truck += 1;
System.out.println("Грузовик: " + truck);
}
if (i % maxInContainer == 0) {
container += 1;
System.out.println("\tКонтейнер: " + container);
}
}
System.out.println("Необходимо:" + System.lineSeparator() +
"грузовиков - " + truck + " шт." + System.lineSeparator() +
"контейнеров - " + container + " шт.");
}
}
Основное задание:
Есть задача написать программу, которая распределит ящики по контейнерам и грузовикам в зависимости от их количества. Программа должна выводить необходимое для этого число грузовиков и контейнеров. В каждый грузовик помещается максимум 12 контейнеров. В каждый контейнер — не более 27 ящиков. Ящики, контейнеры и грузовики пронумерованы. Не могу понять как сделать число ящиков 0 и 27.
Ответы (1 шт):
Как говориться все гениальное просто. Необходимо было просто добавить еще одно условие в код проверки количества контейнеров когда есть ящики. Вот код:
package practice;
import java.util.Scanner;
public class TrucksAndContainers {
public static void main(String[] args) {
int truck = 0;
int container = 0;
int boxesInContainer = 27;
int containersInTruck = 12;
Scanner scanner = new Scanner(System.in);
//получение количество коробок от пользователя
int boxes = scanner.nextInt();
// TODO: вывести в консоль коробки разложенные по грузовикам и контейнерам
// пример вывода при вводе 2
// для отступа используйте табуляцию - \t
if (boxes == 0) {
} else if (boxes < boxesInContainer) {
container++;
truck++;
System.out.println("Грузовик: " + truck + System.lineSeparator() +
"\tКонтейнер: " + container);
} else if (boxes >= boxesInContainer) {
container++;
truck++;
System.out.println("Грузовик: " + truck + System.lineSeparator() +
"\tКонтейнер: " + container);
}
for (int i = 1; i <= boxes; i++) {
System.out.println("\t\tЯщик: " + i);
if (i % (boxesInContainer * containersInTruck) == 0) {
truck++;
System.out.println("Грузовик: " + truck);
}
if (i % boxesInContainer == 0) {
if (i != boxes) {
container++;
System.out.println("\tКонтейнер: " + container);
}
}
}
System.out.println("Необходимо:" + System.lineSeparator() +
"грузовиков - " + truck + " шт." + System.lineSeparator() +
"контейнеров - " + container + " шт.");
/*
Грузовик: 1
Контейнер: 1
Ящик: 1
Ящик: 2
Необходимо:
грузовиков - 1 шт.
контейнеров - 1 шт.
*/
}
}
