Write a loop that reads strings from standard input where the string is either “land”, “air”, or “water”.

Write a loop that reads strings from standard input where the string is either “land”, “air”, or “water”.

LANGUAGE: Java

CHALLENGE:

Write a loop that reads strings from standard input where the string is either “land”, “air”, or “water”.
The loop terminates when “xxxxx” (five x characters ) is read in. Other strings are ignored.
After the loop, your code should print out 3 lines: the first consisting of the string “land:” followed by the number of “land” strings read in, the second consisting of the string “air:” followed by the number of “air” strings read in, and the third consisting of the string “water:” followed by the number of “water” strings read in.
Each of these should be printed on a separate line.

ASSUME the availability of a variable , stdin, that references a Scanner object associated with standard input.

SOLUTION:

int land = 0, air = 0, water = 0; 
String input = ""; 
do{ 
    System.out.printf("Type in land, air or water. Type xxxxx to quit: "); 
    input = stdin.nextLine(); 
    switch (input) 
    { 
        case "land": 
            land++; 
            break; 
        case "air": 
            air++; 
            break; 
        case "water": 
            water++; 
            break; 
    } 
}while(input != "xxxxx"); 

System.out.println("land:" + land); 
System.out.println("air:" + air); 
System.out.println("water:" + water); 

Add comment