Hjälp en nybörjare som drunknar i java - Hur får jag ut antalet gissningar?
Tja, jag har tagit mig vatten över huvudet och betalat pengar för en kurs som visade sig vara ganska dålig, jag ångrar mig. Jag har aldrig programmerat förut och inser att jag skulle behöva bättre material för att lära mig. Hur som helst, pengarna är borta, nu ska jag stånga mig igenom det här och få det där jävla diplomet jag inte kommer att ha användning för.
Jag vet att den här koden är lite onödig, men det är så de ville ha den... Det fungerar som jag skrivit det, själva "spelet" men jag lyckas inte få den att skriva ut antal gissningar efter rätt svar och jag vet inte hur jag ska lyckas loopa tillbaka den till main för att enbart skriva ut antal gissningar... Tyvärr så tycker jag inte att utbildningsmaterialet går igenom hur man gör just det här.
Jag har försökt att googla, och jag blir bara mer och mer irriterad för det går att lösa, men inte som de vill ha det i utbildningen... Sånt gör mig galen, att det inte ska göras rätt, det ska göras rätt på DERAS sätt.
Antalet gissningar ska returneras från playGame.
Ett av målen med uppgiften är att visa att man fångar upp något som returneras från en metod i en annan, här, antalet gissningar som returneras från playGame och ska fångas upp och skrivas ut i main metoden.
import java.util.Scanner;
public class HiLo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("HiLo!");
System.out.println("Vilken svårighetsgrad?");
System.out.println("1) Lätt: 0-10");
System.out.println("2) Mellan: 0-100");
System.out.println("3) Svår: 0-1000");
int choice = sc.nextInt();
if (choice == 1) {
playGame(10);
} else if (choice == 2) {
playGame(100);
}
else if (choice == 3) {
playGame(1000);
}
}
public static int playGame(int maxNumber) {
Scanner sc = new Scanner(System.in);
int number = (int)(Math.random() * maxNumber) + 1;
int guess;
int nrOfGuesses = 0;
do {
System.out.println("Gissa på ett tal mellan 1-" + maxNumber);
nrOfGuesses = nrOfGuesses ++;
guess = sc.nextInt();
if (guess < number) {
giveResponce(number, guess);
} else if (guess > number) {
giveResponce(number, guess);
} else if (guess == number) {
giveResponce(number, guess);
}
} while (guess != number);
return nrOfGuesses;
}
public static void giveResponce(int answer, int guess) {
if (guess < answer) {
System.out.println("För lågt");
} else if (guess > answer) {
System.out.println("För högt");
} else if (guess == answer) {
System.out.println("Grattis, rätt!");
}
}
}