samedi 3 octobre 2015

How to loop these if statements?

I am very new to programming and am having trouble understanding loops when not working with integers. I am trying to make an english to morse code translator and have this done so far:

import java.util.Scanner;

public class EnglishToMorse {

public static void main(String[] args) {

     System.out.println("Please enter text you wish to convert to Morse Code.");
     Scanner sc =new Scanner(System.in);
     String english = sc.next();


         if (english.equalsIgnoreCase("A")){
             System.out.print(".- ");
         }
         if (english.equalsIgnoreCase("B")){
             System.out.print("-... ");
         }
         if (english.equalsIgnoreCase("C")){
             System.out.print("-.-. ");
         }
         if (english.equalsIgnoreCase("D")){
             System.out.print("-.. ");
         }
         if (english.equalsIgnoreCase("E")){
             System.out.print(". ");
         }
         if (english.equalsIgnoreCase("F")){
             System.out.print("..-. ");
         }
         if (english.equalsIgnoreCase("G")){
             System.out.print("--. ");
         }
         if (english.equalsIgnoreCase("H")){
             System.out.print(".... ");
         }
         if (english.equalsIgnoreCase("I")){
             System.out.print(".. ");
         }
         if (english.equalsIgnoreCase("J")){
             System.out.print(".--- ");
         }
         if (english.equalsIgnoreCase("K")){
             System.out.print("-.- ");
         }
         if (english.equalsIgnoreCase("L")){
             System.out.print(".-.. ");
         }
         if (english.equalsIgnoreCase("M")){
             System.out.print("-- ");
         }
         if (english.equalsIgnoreCase("N")){
             System.out.print("-. ");
         }
         if (english.equalsIgnoreCase("O")){
             System.out.print("--- ");
         }
         if (english.equalsIgnoreCase("P")){
             System.out.print(".--. ");
         }
         if (english.equalsIgnoreCase("Q")){
             System.out.print("--.- ");
         }
         if (english.equalsIgnoreCase("R")){
             System.out.print(".-. ");
         }
         if (english.equalsIgnoreCase("S")){
             System.out.print("... ");
         }
         if (english.equalsIgnoreCase("T")){
             System.out.print("- ");
         }
         if (english.equalsIgnoreCase("U")){
             System.out.print("..- ");
         }
         if (english.equalsIgnoreCase("V")){
             System.out.print("...- ");
         }
         if (english.equalsIgnoreCase("W")){
             System.out.print(".-- ");
         }
         if (english.equalsIgnoreCase("X")){
             System.out.print("-..- ");
         }
         if (english.equalsIgnoreCase("Y")){
             System.out.print("-.-- ");
         }
         if (english.equalsIgnoreCase("Z")){
             System.out.print("--.. ");
         }
         if (english.equalsIgnoreCase("1")){
             System.out.print(".---- ");
         }
         if (english.equalsIgnoreCase("2")){
             System.out.print("..--- ");
         }
         if (english.equalsIgnoreCase("3")){
             System.out.print("...-- ");
         }
         if (english.equalsIgnoreCase("4")){
             System.out.print("...- ");
         }
         if (english.equalsIgnoreCase("5")){
             System.out.print("..... ");
         }
         if (english.equalsIgnoreCase("6")){
             System.out.print("-.... ");
         }
         if (english.equalsIgnoreCase("7")){
             System.out.print("--... ");
         }
         if (english.equalsIgnoreCase("8")){
             System.out.print("---.. ");
         }
         if (english.equalsIgnoreCase("9")){
             System.out.print("----. ");
         }
         if (english.equalsIgnoreCase("0")){
             System.out.print("----- ");
         }


}

}

After numerous attempts trying out different lops and conditions, I cant get past the issue that my program can only translate one character. If I input more than one, it terminates. If someone could lead me on the right path in figuring out how to loop these if statements until all the characters are translated, I would be very grateful.

Aucun commentaire:

Enregistrer un commentaire