Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

// I am trying to do input validation for certain codes. Theproblem is that if l

ID: 3615015 • Letter: #

Question

// I am trying to do input validation for certain codes. Theproblem is that if l run my program it doesn't do the inputvalidation. It seems like l have everything right in my program. Isthere anywhere l made a mistake ? Whats causing this problem ?

import javax.swing.*;

public class getGoodprovince

{

public static void main ( String [] args )

{


String callProvince = getGoodProvinceCode();

System.out.println(callProvince);

}


public static String getGoodProvinceCode()
// open method getGoodProvinceCode
{





     boolean inputOk=true;

     String province =JOptionPane.showInputDialog("Enter your provincial code e.gMB");


            while (!inputOk )
           {   // open while loop

                 province =province.toUpperCase().trim() ;
                 if ( province.equals("BC") ||province.equals("AB")
                   || province.equals("SK")|| province.equals("MB")
                   || province.equals("ON")|| province.equals("QC")
                   || province.equals("PE")|| province.equals("NB")
                   || province.equals("NS")|| province.equals("NL") )
                   {
                      inputOk=true;
                   }



                 else
                 {
                   inputOk=false;

                      province = JOptionPane.showInputDialog("Enter your provincial codee.g MB");
                 }
               }// close while loop

               return province;
           }   // close method getGoodProvinceCode

        }


Explanation / Answer

please rate - thanks must start inputOK as false or it won't do your loop import javax.swing.*; public class getGoodprovince { public static void main ( String [] args ) { String callProvince = getGoodProvinceCode(); System.out.println(callProvince); } public static String getGoodProvinceCode() // open method getGoodProvinceCode {      booleaninputOk=false;      String province =JOptionPane.showInputDialog("Enter your provincial code e.gMB");            while ( !inputOk )            {   // open while loop                  province = province.toUpperCase().trim() ;                       if (province.equals("BC") || province.equals("AB")                    || province.equals("SK") || province.equals("MB")                    || province.equals("ON") || province.equals("QC")                    || province.equals("PE") || province.equals("NB")                    || province.equals("NS") || province.equals("NL") )                    {                        inputOk=true;                    }                  else                  {                      ///note code removed here -- not needed sincealready false                       province = JOptionPane.showInputDialog("Enter your provincial codee.g MB");                  }                }// close while loop                return province;            }   // close method getGoodProvinceCode         }