Question

# A company manufactures packing cartons in four sizes, i.e. cartons to accommodate 6 boxes, 12 boxes, 24 boxes and 48 boxes. Design a program to accept the number of boxes to be packed (N) by the user (maximum up to 1000 boxes) and display the break-up of the cartons used in descending order of capacity (i.e. preference should be given to the highest capacity available, and if boxes left are less than 6, an extra carton of capacity 6 should be used.)

```				```
Test your program with the following data and some random data:
Example 1:
INPUT:
N = 726
OUTPUT:
48 * 15 = 720
6 * 1 = 6
Remaining boxes = 0
Total number of boxes = 726
Total number of cartons = 16
Example 2:
INPUT:
N = 140
OUTPUT:
48 * 2 = 96
24 * 1 = 24
12 * 1 = 12
6 * 1 = 6
Remaining boxes = 2 * 1 = 2
Total number of boxes = 140
Total number of cartons = 6
Example 3:
INPUT:
N = 4296
OUTPUT:
INVALID INPUT
```
```

# Share code with your friends

Code

```				```
import java.util.Scanner;
public class Cartons
{
public static void main(String args[])
{
Scanner sc=new Scanner(System.in);
System.out.print("N = ");
int n = sc.nextInt();
int i=0;
int num = n;
int totalboxes=0;
int cartonSizes[]={48,24,12,6};
int boxes[]=new int;
if(n > 1000)
{
System.out.println("INVALID INPUT");
return;
}

for(i=0;i< cartonSizes.length;i++)
{
if(num/cartonSizes[i]>0)
{
boxes[i]=num/cartonSizes[i];
num=num%cartonSizes[i];
totalboxes=totalboxes+boxes[i];
}
}

if (num< 6&&num!=0)
{
totalboxes+=1;
}
for(i=0;i< cartonSizes.length;i++)
{
if(boxes[i]>0)
{
System.out.println(cartonSizes[i]+"*"+boxes[i]+"="+(cartonSizes[i]*boxes[i]));
}
}
System.out.println("Remaining number of boxes:"+num);
System.out.println("Total number of Cartons:"+totalboxes);
}
}

```
```

## Coding Store

Sale ### Mastering String

50
Sale 150
Sale 200
Sale ### Mastering Recursion

50
Sale ### Mastering Numbers

50
Sale ### Mastering Matrix

50
Sale ### Mastering Array

50
Sale ### ISC QUESTION PAPERS WITH SOLUTION(PROGRAMMING ONLY)

50
Sale 50