Citat:
Ursprungligen postat av
Kerem89
Hej, har pluggat JAVA i några veckor och undrar gällande denna fråga:
Här nedan är det ett stycke kod som du ska läsa och förstå.
På rad 6 ska användaren skriva in ett ord och på rad 8 ska användaren skriva in en siffra.
Du lista ut vad du som användare kan skriva in för ord och tal för att lyckas skriva ut:
”Good job! You won!”.
För att få rätt på uppgiften behöver ange inputs som ger detta svar.
Kod:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input= new Scanner(System.in);
System.out.print("Skriv ett ord: ");
String word = input.nextLine();
System.out.print("Skriv en siffa: ");
int number = input.nextInt();
input.nextLine();
char[] allLetters = word.toCharArray();
if(allLetters[allLetters.length - number] == 'B'){
if (number % 2 != 0){
System.out.printf("you won");
}
else{
System.out.printf("you lost");
}
}
}
}
Mitt svar ord: BBBBBB
Mitt svar siffra: 3
Era rekommendationer för att ta sig an en sådan fråga, finns det något speciellt tankesätt?
Nu var det länge sedan jag kodare.
Men det ser ju ut som man sparar användarens sträng i en Array beståendes av av typen CHAR. Så varje bokstav får en plats i Arrayen,
Därefter Användarens siffra i en INT.
Sedan betyder. % 2 om talet är jämnt delbart.
DVS. Blir resultatet ojämnt, dvs ett resultat med decimaler blir det resultatet "1", och koden "avslutas". Är det delbart utan ett resultat med decimaler så blir resultatet "0" och koden "fortsätter" att kolla vad som händer därefter.
Sedan kollar man ARRAYEN..
Man kollar hur många element som finns i arrayen, antalet tecken(beroende på vad användaren matat in för ord).
Låt oss säga att användaren matat in "hejsan" & man valt nummer 4...
Då kollar man hur många element Arrayen har, I detta fall 6 "element"(hejsan består av 6 chars). En bokstav per plats.
Så egentligen behöver du endast ange
ett jämnt nummer + ett ord som har
bokstaven "B" på plats dinCharArray.size - number
Var krångligt att förklara utan att förklara allt! XD