Behöver hjälp med min uppgift "Gissa det hemliga talet" c#

Permalänk
Medlem

Behöver hjälp med min uppgift "Gissa det hemliga talet" c#

Hej!
Jag hoppas på att få lite hjälp då min lärare inte svarar och jag vet inte vad jag gjort för fel. Jag har precis börjat läsa programmering 1 på hermods distans. Låt oss säga att jag haft lite problem med att bygga mina program även fast jag förstått teorin jag läst i läroboken samt den lilla information vår lärare lagt ut. Så jag vill gärna inte att någon dumförklarar mig för jag har verkligen gjort mitt bästa...

Min uppgift går ut på att vi ska använda oss utav, Random randomerare = new Random();
int slump_tal = randomerare.Next(1, 101);

och bygga upp ett program där man får gissa ett tal mellan 1-100. I detta program ska jag använda mig utav do while och if else bland annat. Innan jag visar hur långt jag kommit så ska jag förklara vad problemet är. Mitt program skriver ut "För högt, gissa igen!" oavsett vilken siffra jag trycker in. Såhär långt jag har kommit och mitt program funkar men inte som det ska uppenbarligen då den inte skriver ut något annat än det jag skrev ovan. Snälla hjälp!!! Kan någon förklara vad jag gjort för fel? Snälla tänk på att jag precis börjat med programmering och är inne på min andra vecka i kursen.

using System;

namespace Uppgift_03
{
class Program
{
static void Main(string[] args)
{

Random randomerare = new Random();
int slump_tal = randomerare.Next(1, 101);

Console.WriteLine("Välkommen, gissa ett tal mellan 1 till 100");
string str = Console.ReadLine();
int gissa = Int32.Parse(str);

do {

if (gissa < slump_tal)
{
Console.WriteLine("För lågt, gissa igen!");
Console.ReadLine();
}

if (gissa > slump_tal)
{
Console.WriteLine("För högt, gissa igen!");
Console.ReadLine();
}

else
{
Console.WriteLine("Grattis du gissade rätt!");
Console.ReadLine();
}
} while (gissa != slump_tal);

}
}
}

Permalänk
Medlem

Du ändrar aldrig gissa så loopen bara fortsätter gå varje gång du trycker in något. Du behöver uppdatera gissa med ett nytt värde att utvärdera mot.

Visa signatur

Primär: R9 3900X | ASUS X570-F Gaming | NH-D15 | 64GB@3200MHz | RTX 3080 10GB | Seasonic 850W | Fractal Define R6 |
Gamla bettan: i5 750@3.8GHz | 8GB | HD5770 | Corsair VS 550W | FD R2 |

Permalänk
Medlem

@Daz: Hej!
Tack så hemskt mycket för svar! Jag förstår, men vad ska jag ge "gissa" för nytt värde?Alltså hur ska jag veta vad för värde jag ska tillse "gissa"? och vart gör jag detta? Inne i loopen eller innan loopen? Förlåt om jag låter helt korkad som sagt har precis börjat med detta och allt har inte fallit på plats än så att säga....

Permalänk
Medlem

@nadje28: Du vill ju låta användaren fortsätta gissa om det är fel, så du måste läsa in ett nytt värde från användaren om det förra är fel.

Tänk bara på att hela poängen med att ha en do-while-loop istället för en while-loop är att loop-villkoret testas i slutet av loopen istället för i början, vilket innebär att t.ex. gissa inte behöver ha ett värde innan loopen börjar.

Permalänk
Medlem

@perost: Tack för svar, om jag ska vara helt ärlig så gjorde jag först uppgiften med en while istället för en do while för jag tyckte det var lättare samt att jag inte fattade hur jag skulle bygga programmet med en do while efter att kollat på 10 olika youtube klipp så byggde jag det jag lagt in. Så jag gissade mig fram för att se vad som funkar och inte funkar för det står inte alls mycket om do while i min lärbok utöver en sida... Jag förstår det du skriver, men har jag inte redan gjort det när jag lagt ut if och else? Där jag skriver in villkoren? Eller menar du att man måste skriva till något inne i villkoren? Förlåt om jag använder helt fel termer. Som sagt är en helt nybörjare!!

Permalänk
Medlem

@perost: Menar du att jag behöver göra om hela processen jag gjort i början av programmet när jag skrivit ut "välkommen gissa ett tal mellan 1-100"? Åååh känner mig jätte dum att jag inte fattar.... Har ni några förslag på videoklipp eller sidor som förklara do while så att jag förstår vad jag gjort för fel?

Permalänk
Medlem

@nadje28: Själva kontrollen av det inlästa värdet och villkoret i loopen är helt rätt i din kod, du behöver bara ändra var du läser in värdet. Men nybörjare löser väldigt ofta problemet du stött på nu genom att lägga till inläsning på fler ställen istället för att bara flytta den, vilket gör koden mer komplicerad än den behöver vara.

Om du har svårt att förstå flödet i koden så kan du börja med att skriva ett enklare program som bara läser in tal tills användaren t.ex. matar in 0. Det kan också vara till hjälp om du lär dig hur debuggern fungerar så att du kan följa med när programmet körs och se rad för rad vad som händer. Se t.ex. denna guide för en kort introduktion.

Permalänk
Medlem

@perost: Tack för länken, ska absolut kolla in den och hoppas på att den hjälper mig. Ok, så jag är ändå på rätt väg så att säga? behöver bara komma på vart jag ska ändra.... Men om vi nu säger att jag gör det som många nybörjare gör och lägger till ännu fler inläsningar. Tänker jag rätt då genom att jag ska lägga in fler inläsningar inne i villkoren?
Dvs:

using System;

namespace Uppgift_03
{
class Program
{
static void Main(string[] args)
{

Random randomerare = new Random();
int slump_tal = randomerare.Next(1, 101);

Console.WriteLine("Välkommen, gissa ett tal mellan 1 till 100");
string str = Console.ReadLine();
int gissa = Int32.Parse(str);

do {

if (gissa < slump_tal)
{
Console.WriteLine("För lågt!");
Console.ReadLine();
Console.WriteLine("Gissa igen:");
string str = Console.ReadLine();
int gissa = Int32.Parse(str);

}

if (gissa > slump_tal)
{
Console.WriteLine("För högt!");
Console.ReadLine();
Console.WriteLine("Gissa igen:");
string str = Console.ReadLine();
int gissa = Int32.Parse(str);

}
if (gissa > 100 || gissa < 100)
{
Console.WriteLine("Du gissade ett ogiltigt tal");
Console.ReadLine();
Console.WriteLine("Gissa igen:");
string str = Console.ReadLine();
int gissa = Int32.Parse(str);

}

else
{
Console.WriteLine("Grattis du gissade rätt!");
Console.ReadLine();
}
} while (gissa != slump_tal);

}

Eller är jag helt fel ute???

Permalänk
Medlem

@perost: Eller ska jag flytta in i varje loop? Jag håller på att läsa länken du skickat till mig. Jag inte testat det jag skickat in till dig än för orkar inte krascha hela programmet som jag gjort 7843 gånger under processen... Om något av det jag lagt upp är rätt kan du vara jätte snäll och förklara varför det ska vara så och inte så som jag gjort :). Jag bara väntar på att polletten ska falla ner och jag ska fatta allt men det ser inte så ljust ut just nu haha.

using System;

namespace Uppgift_03
{
class Program
{
static void Main(string[] args)
{

Random randomerare = new Random();
int slump_tal = randomerare.Next(1, 101);

do {

if (gissa < slump_tal)
{
Console.WriteLine("Välkommen, gissa ett tal mellan 1 till 100");
string str = Console.ReadLine();
int gissa = Int32.Parse(str);
Console.WriteLine("För lågt, gissa igen!");
Console.ReadLine();
}

if (gissa > slump_tal)
{
Console.WriteLine("För högt, gissa igen!");
Console.ReadLine();
}
if (gissa > 100 || gissa < 100)
{
Console.WriteLine("Du gissade ett ogiltigt tal");
Console.ReadLine();
}

else
{
Console.WriteLine("Grattis du gissade rätt!");
Console.ReadLine();
}
} while (gissa != slump_tal);

}

Permalänk
Medlem

@nadje28: Nu har du gjort exakt samma fel som nybörjare ofta gör, och din kod är nu ungefär dubbelt så lång som den behöver vara. Det hade kunnat fungera om du inte hade deklarerat om gissa inne i loopen, d.v.s:

int gissa = 1; do { int gissa = 2; // <- En ny variabel som också heter gissa, men som bara existerar inne i loopen. } while (gissa != slump_tal); // Använder den yttre variabeln gissa som har värdet 1.

Men du krånglar som sagt bara till, du behöver endast ett enda anrop till Int32.Parse i hela programmet. Tänk också på att deklaration och tilldelning är två olika saker:

int i; // Deklaration i = 3; // Tilldelning, variabeln får ett nytt värde. int j = 17; // Deklaration och tilldelning på samma rad.

Skrivet av nadje28:

Eller ska jag flytta in i varje loop?

Nu är du mer på rätt väg, men du har flyttat in inläsning för långt. Du måste också separera deklarationen och inläsningen av gissa eftersom gissa fortfarande måste deklareras utanför loopen för att kunna användas i loop-villkoret.

Permalänk
Medlem
Skrivet av nadje28:

@perost: Tack för länken, ska absolut kolla in den och hoppas på att den hjälper mig. Ok, så jag är ändå på rätt väg så att säga? behöver bara komma på vart jag ska ändra.... Men om vi nu säger att jag gör det som många nybörjare gör och lägger till ännu fler inläsningar. Tänker jag rätt då genom att jag ska lägga in fler inläsningar inne i villkoren?
Dvs:

using System; namespace Uppgift_03 { class Program { static void Main(string[] args) { Random randomerare = new Random(); int slump_tal = randomerare.Next(1, 101); Console.WriteLine("Välkommen, gissa ett tal mellan 1 till 100"); string str = Console.ReadLine(); int gissa = Int32.Parse(str); do { if (gissa < slump_tal) { Console.WriteLine("För lågt!"); Console.ReadLine(); Console.WriteLine("Gissa igen:"); string str = Console.ReadLine(); int gissa = Int32.Parse(str); } if (gissa > slump_tal) { Console.WriteLine("För högt!"); Console.ReadLine(); Console.WriteLine("Gissa igen:"); string str = Console.ReadLine(); int gissa = Int32.Parse(str); } if (gissa > 100 || gissa < 100) { } else { Console.WriteLine("Grattis du gissade rätt!"); Console.ReadLine(); } } while (gissa != slump_tal); }


Eller är jag helt fel ute???

Vänligen lägg kod i code-taggar så att formateringen blir vettig.

Tänk igenom vad som ska göras så länge svaret inte är rätt och lägg allt det inne i loopen. Tänk också igenom flödet för din if-sats och använd gärna en if med flera if-else och kanske en else så att du får sammanhängande hantering av det du försöker göra.

Som en liten notis skulle jag kalla gissa för gissning eftersom variabeln innehåller en gissning.

EDIT: Om du vill kan du också skriva ner programmet på papper eller liknande i text, inte kod. Detta för att resonera om vad som behöver göras i vilken ordning utan att blanda in detaljer om programmeringsspråket. När du sedan har en klarare bild av vad som behövs implementerar du detta i kod.

Visa signatur

RAID is not a backup

Permalänk
Medlem

@perost:

@perost:
Ok, jag tror att jag fattar nu..... Men är säkert fortfarande helt ute haha. Först och främst tack för förklaringen mellan tilldelning och deklaration.

using System;

namespace Uppgift_03
{
class Program
{
static void Main(string[] args)
{

Random randomerare = new Random();
int slump_tal = randomerare.Next(1, 101);

do {
Console.WriteLine("Välkommen, gissa ett tal mellan 1 till 100");
string str = Console.ReadLine();
int gissningar = Int32.Parse(str);

if (gissningar < slump_tal)
{
Console.WriteLine("För lågt, gissa igen!");
Console.ReadLine();
}

else if (gissningar > slump_tal)
{
Console.WriteLine("För högt, gissa igen!");
Console.ReadLine();
}
else if (gissningar > 100 || gissa < 100)
{
Console.WriteLine("Du gissade ett ogiltigt tal");
Console.ReadLine();
}

else
{
Console.WriteLine("Grattis du gissade rätt!");
Console.ReadLine();
}
} while (gissningar != slump_tal);

Permalänk
Medlem
Skrivet av nadje28:

@perost:

@perost:
Ok, jag tror att jag fattar nu..... Men är säkert fortfarande helt ute haha. Först och främst tack för förklaringen mellan tilldelning och deklaration.

using System;

namespace Uppgift_03
{
class Program
{
static void Main(string[] args)
{

Random randomerare = new Random();
int slump_tal = randomerare.Next(1, 101);

do {
Console.WriteLine("Välkommen, gissa ett tal mellan 1 till 100");
string str = Console.ReadLine();
int gissningar = Int32.Parse(str);

if (gissningar < slump_tal)
{
Console.WriteLine("För lågt, gissa igen!");
Console.ReadLine();
}

if (gissningar > slump_tal)
{
Console.WriteLine("För högt, gissa igen!");
Console.ReadLine();
}
if else (gissningar > 100 || gissa < 100)
{
Console.WriteLine("Du gissade ett ogiltigt tal");
Console.ReadLine();
}

else
{
Console.WriteLine("Grattis du gissade rätt!");
Console.ReadLine();
}
} while (gissningar != slump_tal);

När du kör programmet ovan, kommer du inte att få välkomstmeddelandet många gånger då?

Permalänk
Medlem

@Jpau94:
Tack jag ändrade namnen på min deklaration och gjorde en if else istället för if. Men jag förstod inte vad du menade med att lägga till en kod i code taggarna.

Tack alla för snabb respons och att ni inte säger att jag är dum för att jag inte riktigt fattar vad jag gjort för fel. Jag uppskattar verkligen er hjälp och att ni lägger ner er tid till att hjälpa mig!

Permalänk
Medlem

@MickeBoy: Jag testade aldrig det jag skickade... är rädd att allt ska krascha då det tagit mig en himla massa tid att ens komma till där jag är...

Permalänk
Medlem
Skrivet av nadje28:

@MickeBoy: Jag testade aldrig det jag skickade... är rädd att allt ska krascha då det tagit mig en himla massa tid att ens komma till där jag är...

Har du tänkt att du ska skicka in din uppgift utan att ens testköra den?

Permalänk
Medlem

@MickeBoy: Nej!!!! absolut inte. Jag menar mer nu när jag försöker hitta vad jag gjort för fel så har jag inte ändrat det jag skrivit än för vill inte förstöra något i onödan... Vet ju inte ens om jag tänkt rätt eller fel. Jag kommer såklart testköra den innan annars kommer jag ju få ett f om det inte funkar.

Permalänk
Medlem
Skrivet av nadje28:

@MickeBoy: Jag testade aldrig det jag skickade... är rädd att allt ska krascha då det tagit mig en himla massa tid att ens komma till där jag är...

Krascha och krascha ofta, bästa sättet att lära sig om du frågar mig. Du kommer väldigt ofta stöta på saker som inte fungerar. Är det programmet du kodar i som ställer till det om något kraschar? I Visual Studio brukar det ju annars bara vara en liten ruta som man klickar bort och sen så kan man rätta till eventuella fel och köra igen.

Något jag ser är att du har väldigt många Console.ReadLine() som inte verkar fylla någon direkt funktion så du kommer få göra flera tomma inmatningar.

Kör du exemplet som @MickeBoy svarat på så kommer du nog märka av problemet som hen nämner väldigt fort och sen kunna komma vidare därifrån.

Visa signatur

Primär: R9 3900X | ASUS X570-F Gaming | NH-D15 | 64GB@3200MHz | RTX 3080 10GB | Seasonic 850W | Fractal Define R6 |
Gamla bettan: i5 750@3.8GHz | 8GB | HD5770 | Corsair VS 550W | FD R2 |

Permalänk
Medlem
Skrivet av nadje28:

@Jpau94:
Tack jag ändrade namnen på min deklaration och gjorde en if else istället för if. Men jag förstod inte vad du menade med att lägga till en kod i code taggarna.

Tack alla för snabb respons och att ni inte säger att jag är dum för att jag inte riktigt fattar vad jag gjort för fel. Jag uppskattar verkligen er hjälp och att ni lägger ner er tid till att hjälpa mig!

Om du skriver
[_code]
Kod
[_/code]
fast utan _ tecken så kommer din kod behålla formateringen bättre i dina inlägg.

Generellt om namn på variabler och så är att det oftast blir lättare att förstå om en variabel som representerar en sak kallas ett substantiv, eventuellt med beskrivning (ex. gissning eller första_gissning), en variabel som är en samling av något, en array eller lista eller så använder plural (ex. gissningar) och en funktion kallas något som innehåller ett verb (ex. gissa eller hämta_gissning).

Visa signatur

RAID is not a backup

Permalänk
Medlem

@Daz: Ja, du har säkert rätt, har kraschat mina program riktigt många gånger innan jag fått till det. Har haft två små uppgifter innan denna där jag inte använt mig utav en loop. Detta är min första uppgift med en loop och första gången jag använder en loop. Min lärobok har inte varit till jätte stor hjälp om jag ska vara ärlig. Om Do while har de bara skrivit en sida och gjort två små exempel och inget mer. Vart tvungen att kolla på en massa youtube klipp för att få en bättre inblick på vad do while koden gör. Jag fattar vad skillnaden mellan do while och while är men det känns som att det hade varit lättare för mig som nybörjare att använda mig utav while istället. Jag ska testköra den nu och se vad som händer. Måste medge att jag är rädd att jag gjort fel och kommer känna mig ännu mer korkad :/.

Men tack för allas svar.

Permalänk
Medlem
Skrivet av nadje28:

@Daz: Ja, du har säkert rätt, har kraschat mina program riktigt många gånger innan jag fått till det. Har haft två små uppgifter innan denna där jag inte använt mig utav en loop. Detta är min första uppgift med en loop och första gången jag använder en loop. Min lärobok har inte varit till jätte stor hjälp om jag ska vara ärlig. Om Do while har de bara skrivit en sida och gjort två små exempel och inget mer. Vart tvungen att kolla på en massa youtube klipp för att få en bättre inblick på vad do while koden gör. Jag fattar vad skillnaden mellan do while och while är men det känns som att det hade varit lättare för mig som nybörjare att använda mig utav while istället. Jag ska testköra den nu och se vad som händer. Måste medge att jag är rädd att jag gjort fel och kommer känna mig ännu mer korkad :/.

Men tack för allas svar.

En while-loop kollar om ett givet antagande stämmer och kör isåfall koden. En do-while kör koden inuti sig och kollar sen om ett antagande stämmer.

Ett exempel är t.ex. https://repl.it/@Dazpoet/NotedPrizeProprietarysoftware där jag har variablen statement som är en boolean och kan vara sann eller falsk. While loopen kollar om statement är sann eller falsk, om den är sann så körs koden inuti och ändrar statement till falsk. Do-while loopen under kör koden oavsett vad statement är men efter första körningen kollar den om statement är sann, är den det kör den vidare tills den blir falsk.

Ändrar du statement till false på rad 5 så kommer do-while loopen fortfarande köras en gång medan while-loopen helt hoppas över.

EDIT: Ett ganska, vad jag sett, klassiskt sätt att få saker att gå för evigt i början är att köra en while(true) och eftersom sant alltid är sant så kommer den rulla på tills programmet avslutas på annat sätt.

Visa signatur

Primär: R9 3900X | ASUS X570-F Gaming | NH-D15 | 64GB@3200MHz | RTX 3080 10GB | Seasonic 850W | Fractal Define R6 |
Gamla bettan: i5 750@3.8GHz | 8GB | HD5770 | Corsair VS 550W | FD R2 |

Permalänk
Medlem

@Jpau94: Man kan använda noparse-taggar för att undvika att forumet tolkat text som taggar, t.ex.:
[code]
Kod här
[/code]
blir

Kod här

Permalänk
Medlem

Du har fel i dina if else-satser.
Medans du bygger programmet så sätt det slumpade talet till något så att du kan testa att varje if-sats fungerar.
Sätt talet till 50

//int slump_tal = randomerare.Next(1, 101); int slump_tal = 50

och kör programmet och gissa -5, 110, 40, 50 osv. Så kan du jämföra med vad programmet borde säga och vad den säger.

Permalänk
Medlem

Tack allihopa för er input, var tvungen att hämta mina barn från skolan och förskolan så har inte hunnit göra mer än det jag gjort. Jag ska sätta mig och titta på allt ni skrivit sen ta till era råd och se om jag klarar uppgiften :).

Permalänk
Medlem

Nu har jag ändrat om lite i mitt program, bytt namn på mina variabler samt lagt till en sak där nere för att få variabeln uppdaterar sig. Men jag har ändå inte fått till det..... Jag fattar inte vart jag ska lägga in den så den uppdaterar sig efter varje gissning...

using System;

namespace Uppgift_03
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Välkommen till spelet, gissa ett tal mellan 1 till 100");//Skriver välkomsttexten först

Random randomerare = new Random();
int slump_tal = randomerare.Next(1, 101);

Console.WriteLine("Gissa ett tal");
string str = Console.ReadLine();
int gissningar = Int32.Parse(str);

do {

if (gissningar < 100 || gissningar > 0) // Lägger in detta först så att om man gissar utanför 0-100 så blir det ogiltigt tal
{
Console.WriteLine("Du har skrivit in ett ogiltigt tal");
Console.ReadLine();
}

else if (gissningar > slump_tal)

{
Console.WriteLine("För högt, gissa igen!");
Console.ReadLine();
}

else if (gissningar < slump_tal)
{
Console.WriteLine("För lågt, gissa igen!");
Console.ReadLine();
}
gissningar = Int32.Parse(str);// jag testar att lägga in variabeln här så den kör igen dvs att variabeln uppdaterar sig

} while (gissningar != slump_tal);

Console.WriteLine("Grattis du gissade rätt!");// Jag hade lagt denna innanför loopen och har nu lagt den utanför för som jag förstått det så körs detta när det blir rätt för loopen kör så länge det är fel tal
Console.ReadLine();

Permalänk
Medlem

@nadje28: Du hade nästan rätt i detta inlägg, problemet där var bara att du deklarerat gissningar inne i loopen vilket gör den otillgänglig i loop-villkoret. Du behöver alltså bara flytta ut deklarationen (men inte tilldelningen) av gissningar till före loopen för att det ska fungera. Sen finns det lite detaljer som skulle kunna förbättras i den koden, men börja med att få logiken rätt först.

När det gäller variabler så måste du alltså ha koll på i vilket omfång (eng. scope) de är deklarerade:

int i; { // <- Nytt block i = 4; // i är deklarerad i ett yttre block och kan användas här. int j; // Lokal variabel i blocket. } // <- Slut på block, alla variabler deklarerade i blocket slutar existera. i = 5; // i hade värdet 4, nu får den värdet 5. j = 6; // Fel, j är inte deklarerad i detta omgång. do { // <- Nytt block int k; // Lokal variabel i blocket. } // <- Slut på block, k slutar existera. while (k == i); // Fel, k är inte deklarerad i detta omgång.

Permalänk
Medlem
Skrivet av nadje28:

Nu har jag ändrat om lite i mitt program, bytt namn på mina variabler samt lagt till en sak där nere för att få variabeln uppdaterar sig. Men jag har ändå inte fått till det..... Jag fattar inte vart jag ska lägga in den så den uppdaterar sig efter varje gissning...

using System; namespace Uppgift_03 { class Program { static void Main(string[] args) { Console.WriteLine("Välkommen till spelet, gissa ett tal mellan 1 till 100");//Skriver välkomsttexten först Random randomerare = new Random(); int slump_tal = randomerare.Next(1, 101); Console.WriteLine("Gissa ett tal"); string str = Console.ReadLine(); int gissningar = Int32.Parse(str); do { if (gissningar < 100 || gissningar > 0) // Lägger in detta först så att om man gissar utanför 0-100 så blir det ogiltigt tal { Console.WriteLine("Du har skrivit in ett ogiltigt tal"); Console.ReadLine(); } else if (gissningar > slump_tal) { Console.WriteLine("För högt, gissa igen!"); Console.ReadLine(); } else if (gissningar < slump_tal) { Console.WriteLine("För lågt, gissa igen!"); Console.ReadLine(); } gissningar = Int32.Parse(str);// jag testar att lägga in variabeln här så den kör igen dvs att variabeln uppdaterar sig } while (gissningar != slump_tal); Console.WriteLine("Grattis du gissade rätt!");// Jag hade lagt denna innanför loopen och har nu lagt den utanför för som jag förstått det så körs detta när det blir rätt för loopen kör så länge det är fel tal Console.ReadLine();

Jag la in [code] taggar, notera att det blir mycket lättare att läsa då.

Jag ser massor av Console.ReadLine() i din kod, vad är det du tror händer när det körs? Genom att svara på den frågan misstänker jag att vi kanske kommer få lite insikt i vart i tankarna som problemet ligger.

Visa signatur

Primär: R9 3900X | ASUS X570-F Gaming | NH-D15 | 64GB@3200MHz | RTX 3080 10GB | Seasonic 850W | Fractal Define R6 |
Gamla bettan: i5 750@3.8GHz | 8GB | HD5770 | Corsair VS 550W | FD R2 |

Permalänk
Medlem

Du kommer nog fastna på det här också

if (gissningar < 100 || gissningar > 0) // Lägger in detta först så att om man gissar utanför 0-100 så blir det ogiltigt tal

Läs ut den if-satsen högt: om gissningar är mindre än 100 eller gissningar är större än noll så har man skrivit in ett ogiltigt tal.

Visa signatur

Citera mig för svar.
Arch Linux