Question
The names of the teams participating in a competition should be displayed on a banner vertically, to accommodate as many teams as possible in a single banner.
Design a program to accept the names of N teams, where 2 < N < 9 and display them in vertical order, side by side with a horizontal tab (i.e. eight spaces).
Test your program for the following data and some random data:
Example 1:
INPUT:
N = 3
Team 1: Emus
Team 2: Road Rols
Team 3: Coyote
OUTPUT:
E R C
m o o
u a y
s d o
t
R e
o
l
s
Example 2:
INPUT:
N = 4
Team 1: Royal
Team 2: Mars
Team 3: De Rose
Team 4: Kings
OUTPUT:
R M D K
o a e i
y r n
a s R g
l o s
s
e
Example 3:
INPUT:
N = 10
OUTPUT:
Invalid input.
Share code with your friends
Share on whatsapp
Share on facebook
Share on twitter
Share on telegram
Code
import java.util.Scanner;
public class Banner
{
public static void main(String args[])
{
Scanner sc=new Scanner(System.in);
int n = 0,i=0,j=0,len=0;
String a[];
System.out.print("N = ");
n = sc.nextInt();
if(n <= 2 || n >= 9)
{
System.out.println("Invalid input.");
return;
}
sc.nextLine();
a = new String[n];
for(i = 0; i < n; i++)
{
System.out.print("Team " + (i + 1) + ": ");
a[i] = sc.nextLine();
if(len < a[i].length())
{
len = a[i].length();
}
}
for(i = 0; i < len; i++)
{
for(j = 0; j < n; j++)
{
if(i < a[j].length())
{
System.out.print(a[j].charAt(i) + "\t");
}
else
{
System.out.print("\t");
}
}
System.out.println();
}
}
}