Homework help for Java: I\'m having a hard time understanding the whole block of
ID: 3824163 • Letter: H
Question
Homework help for Java: I'm having a hard time understanding the whole block of code.
Modify the program below to prompt the user enter the capital for a state. Upon receiving the user input, the program reports whether the answer is correct.
Create and complete a two-dimensional array to store the 50 states and their capitals.
Display all 50 states and ask the user to enter its capital, one at a time.
Compare the user input with the array. Count the correct answers.
Display the total correct count.
Example:
What is the capital for Alabama?
What is the capital for Alaska?
...
...
...
What is the capital for Delaware?
...
...
...
Total correct count: 35
If the user entered a correct answer, display the next question; If the user entered a wrong answer for Delaware, display a message...
Sorry, the capital for Delaware is Dover.
Note:
1.The user's answer is not case-sensitive (equalsIgnoreCase)
2. Use println
import java.util.Scanner;
public class StateCapital {
public static void main(String[] args) {
Scanner scnr = new Scanner(System.in);
Strubg[][]stateCapital = new String[60][60];
int correctcnt = 0;
int i = 0;
/*
FIXME: Delcare...
1. A string variable to store the user input
2. An integer variable to count the total correct answers
*/
// FIXME: Initialize a multi-dimensional string array
// FIXME: Complete the array to store the state and capital names
stateCapital[0][0] = "Alabama"; stateCapital[0][1] = "Montgomery";
stateCapital[1][0] = "Alaska"; stateCapital[1][1] = "Juneau";
stateCapital[2][0] = "Arizona"; stateCapital[2][1] = "Phoenix";
stateCapital[3][0] = "Arkansas"; stateCapital[3][1] = "Little Rock";
stateCapital[4][0] = "California"; stateCapital[4][1] = "Sacramento";
stateCapital[5][0] = "Colorado"; stateCapital[5][1] = "Denver";
stateCapital[6][0] = "Connecticut"; stateCapital[6][1] = "Hartford";
stateCapital[7][0] = "Delaware"; stateCapital[7][1] = "Dover";
stateCapital[8][0] = "Florida"; stateCapital[8][1] = "Tallahassee";
stateCapital[9][0] = "Georgia"; stateCapital[9][1] = "Atlanta";
stateCapital[20][0] = "Massachusetts"; stateCapital[20][1] = "Boston";
stateCapital[21][0] = "Michigan"; stateCapital[21][1] = "Lansing";
stateCapital[22][0] = "Minnesota"; stateCapital[22][1] = "St. Paul";
stateCapital[23][0] = "Mississippi"; stateCapital[23][1] = "Jackson";
stateCapital[24][0] = "Missouri"; stateCapital[24][1] = "Jefferson City";
stateCapital[25][0] = "Montana"; stateCapital[25][1] = "Helena";
stateCapital[26][0] = "Nebraska"; stateCapital[26][1] = "Lincoln";
stateCapital[27][0] = "Nevada"; stateCapital[27][1] = "Carson City";
stateCapital[28][0] = "New Hampshire"; stateCapital[28][1] = "Concord";
stateCapital[29][0] = "New Jersey"; stateCapital[29][1] = "Trenton";
stateCapital[40][0] = "South Dakota"; stateCapital[40][1] = "Pierre";
stateCapital[41][0] = "Tennessee"; stateCapital[41][1] = "Nashville";
stateCapital[42][0] = "Texas"; stateCapital[42][1] = "Austin";
stateCapital[43][0] = "Utah"; stateCapital[43][1] = "Salt Lake City";
stateCapital[44][0] = "Vermont"; stateCapital[44][1] = "Montpelier";
stateCapital[45][0] = "Virginia"; stateCapital[45][1] = "Richmond";
stateCapital[46][0] = "Washington"; stateCapital[46][1] = "Olympia";
stateCapital[47][0] = "West Virginia"; stateCapital[47][1] = "Charleston";
stateCapital[48][0] = "Wisconsin"; stateCapital[48][1] = "Madison";
stateCapital[49][0] = "Wyoming"; stateCapital[49][1] = "Cheyenne";
// FIXME: Ask the user to guess the capitals for all 50 states, display one state at a time; Use for loop
for(int i = 0; i < stateCapital.length; i++) {
System.out.println("What is the capital for Alabama?");
System.out.println("What is the capital for Alaska?");
System.out.println("What is the capital for Arizona?");
System.out.println("What is the capital for Arkansas?");
System.out.println("What is the capital for California?");
System.out.println("What is the capital for Colorado?");
System.out.println("What is the capital for Connecticut?");
System.out.println("What is the capital for Delaware?");
System.out.println("What is the capital for Florida?");
System.out.println("What is the capital for Georgia?");
System.out.println("What is the capital for Hawaii?");
System.out.println("What is the capital for Idaho?");
System.out.println("What is the capital for Illinois?");
System.out.println("What is the capital for Indiana?");
System.out.println("What is the capital for Iowa?");
System.out.println("What is the capital for Kansas?");
System.out.println("What is the capital for Kentucky?");
System.out.println("What is the capital for Louisiana?");
System.out.println("What is the capital for Maine?");
System.out.println("What is the capital for Maryland?");
System.out.println("What is the capital for Massachusetts?");
System.out.println("What is the capital for Michigan?");
System.out.println("What is the capital for Minnesota?");
System.out.println("What is the capital for Mississippi?");
System.out.println("What is the capital for Missouri?");
System.out.println("What is the capital for Montana?");
System.out.println("What is the capital for Nebraska?");
System.out.println("What is the capital for Nevada?");
System.out.println("What is the capital for New Hampshire?");
System.out.println("What is the capital for New Jersey?");
System.out.println("What is the capital for New Mexico?");
System.out.println("What is the capital for New York?");
System.out.println("What is the capital for North Carolina?");
System.out.println("What is the capital for North Dakota?");
System.out.println("What is the capital for Ohio?");
System.out.println("What is the capital for Oklahoma?");
System.out.println("What is the capital for Oregon?");
System.out.println("What is the capital for Pennsylvania?");
System.out.println("What is the capital for Rhode Island?");
System.out.println("What is the capital for South Carolina?");
System.out.println("What is the capital for South Dakota?");
System.out.println("What is the capital for Tennessee?");
System.out.println("What is the capital for Texas?");
System.out.println("What is the capital for Utah?");
System.out.println("What is the capital for Vermont?");
System.out.println("What is the capital for Virginia?");
System.out.println("What is the capital for Washington?");
System.out.println("What is the capital for West Virginia?");
System.out.println("What is the capital for Wisconsin?");
System.out.println("What is the capital for Wyoming?");
// FIXME: Modify the statement below to print total correct count
}
if(stateCapitals.equalsIgnoreCase(stateCapital[i][1])) {
System.out.println(stateCapital);
}
else {
System.out.println("Sorry, the capital for
System.out.println("Total correct count: 35");
}
}
Explanation / Answer
import java.util.*;
public class state_capital {
public static void main(String[] args) {
int count=0;
Scanner sc=new Scanner(System.in);
String states[]=new String[30];
String Capital[]=new String[30];
states[0] = "Alabama"; Capital[0] = "Montgomery";
states[1] = "Alaska"; Capital[1] = "Juneau";
states[2] = "Arizona"; Capital[2] = "Phoenix";
states[3] = "Arkansas"; Capital[3] = "Little Rock";
states[4] = "California"; Capital[4] = "Sacramento";
states[5] = "Colorado"; Capital[5] = "Denver";
states[6] = "Connecticut"; Capital[6] = "Hartford";
states[7] = "Delaware"; Capital[7] = "Dover";
states[8] = "Florida"; Capital[8] = "Tallahassee";
states[9] = "Georgia"; Capital[9] = "Atlanta";
states[10] = "Massachusetts"; Capital[10] = "Boston";
states[11] = "Michigan"; Capital[11] = "Lansing";
states[12] = "Minnesota"; Capital[12] = "St. Paul";
states[13] = "Mississippi"; Capital[13] = "Jackson";
states[14] = "Missouri"; Capital[14] = "Jefferson City";
states[15] = "Montana"; Capital[15] = "Helena";
states[16] = "Nebraska"; Capital[16] = "Lincoln";
states[17] = "Nevada"; Capital[17] = "Carson City";
states[18] = "New Hampshire"; Capital[18] = "Concord";
states[19] = "New Jersey"; Capital[19] = "Trenton";
states[20] = "South Dakota"; Capital[20] = "Pierre";
states[21] = "Tennessee"; Capital[21] = "Nashville";
states[22] = "Texas"; Capital[22] = "Austin";
states[23] = "Utah"; Capital[23] = "Salt Lake City";
states[24] = "Vermont"; Capital[24] = "Montpelier";
states[25] = "Virginia"; Capital[25] = "Richmond";
states[26] = "Washington"; Capital[26] = "Olympia";
states[27] = "West Virginia"; Capital[27] = "Charleston";
states[28] = "Wisconsin"; Capital[28] = "Madison";
states[29]= "Wyoming"; Capital[29] = "Cheyenne";
for(int i=0;i<states.length;i++){
System.out.println("what is the capital for "+states[i]);
System.out.println("Answer:");
String answer=sc.next();
if(Capital[i].equalsIgnoreCase(answer)){
System.out.println("answer is correct:");
count++;
}else{
System.out.println("sorry capital for"+states[i]+ "is not correct");
System.out.println();
System.out.println("capital for "+states[i]+ "is "+Capital[i]);
break;
}
}
System.out.println("total correct answers is:"+count);
}
}
output:
what is the capital for Alabama
Answer:
montgomery
answer is correct:
what is the capital for Alaska
Answer:
juneau
answer is correct:
what is the capital for Arizona
Answer:
rajist
sorry capital forArizonais not correct
capital for Arizonais Phoenix
total correct answers is:2
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.