Frequently Asked Java Program 09: Printing Words In Circular Order From Given Index
Hello Folks,
As part of Frequently Asked Java Programs In Interviews For Freshers And Experienced, in this post we will see a Java program to Printing Words In Circular Order From Given Index.
Problem:
Suppose you have below string:
“Make Selenium Easy” Where
-“Make” is at position zero.
-“Selenium” is at first position .
-“Easy” is at second position .
If I say:
-zero, You need to print “Make Selenium Easy”.
-one, you need to print “Selenium Easy Make”.
-two, you need to print “Easy Selenium Make”.
Accept string and position from user.
Java Program:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
package MakeSeleniumEasy; import java.util.Scanner; public class CircularString { public static void main(String[] args) { Scanner sc= new Scanner(System.in); System.out.println("Enter words separated by space:"); String input= sc.nextLine(); System.out.println("Enter position:"); int index=sc.nextInt(); // Splitting input string in to string array String inputArray[]= input.split(" "); // validation for acceptable index // index should be grater than or equal to zero and less than length of array if(index>=0 && index <inputArray.length) { System.out.print("Output: "); // Printing from given index till last index for(int i=index;i<inputArray.length;i++) { System.out.print(inputArray[i]+" "); } // printing from index zero to position-1 for(int k=0;k<index;k++) { System.out.print(inputArray[k]+" "); } } else { System.out.println("Index is invalid."); } } } |
Output:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
Enter words separated by space: Make Selenium Easy Enter position: 0 Output: Make Selenium Easy =========================== Enter words separated by space: Make Selenium Easy Enter position: 1 Output: Selenium Easy Make ========================== Enter words separated by space: Make Selenium Easy Enter position: 2 Output: Easy Make Selenium ========================== Enter words separated by space: Make Selenium Easy Enter position: 3 Index is invalid. |
Program is self descriptive. I have put required comments as well. If you have any doubt, feel free to comment.
#HappyCoding
Author: Amod Mahajan
A software Tester who is paid to judge products developed by others. Writing technical posts and creating YouTube videos are my hobbies.
Hi Amod,
This program can be done other way also, using do..while loop
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println(“Enter words separated by space:”);
String input = sc.nextLine();
System.out.println(“Enter position:”);
int index = sc.nextInt();
// Splitting input string in to string array
String inputArray[] = input.split(” “);
int len = inputArray.length;
// validation for acceptable index
// index should be grater than or equal to zero and less than length of array
if (index >= 0 && index < len) {
System.out.print("Output: ");
// Printing from given index till last index
int i = index;
do{
System.out.print(inputArray[i%len]+" ");
i++;
i = i % len;
}while(i!=index);
} else {
System.out.println("Index is invalid.");
}
sc.close();
}
I have validated this one and it is also giving the same expected output.
Hi,
Yes logic can be written in multiple ways. Thanks for providing another way.