Permalänk
Medlem

c++ gissa tal , (nybörjare)

tjosan , jo har börjat pilla med lite c++ och googlat runt efter olika roliga exemplar och övningar och börjat med " Gissa Tal " precis så hade tänkt mig att istället för att man ska kunna gissa hel villt tills man får rätt tal , så kan man " köpa " antal gissningar så kanske spelaren har ett basbelopp osv. 1 gissning kostar så och så.

--------------------------------------------------------------------------------------------

Min kod än så länge.

// Gissa talet.

// Börjar med att inkludera de bibliotek jag behöver för att kunna köra programmet.

#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;

int main()
{
while(true)
{
cout << " Hur monga tal vill du leka med 0 -> ??? "; // Skriver ut till spelaren text.
int mest; // saetter heltal , tilldelar mest
cin >> mest; // Spelaren for skriva in då hur monga tal han vill gissa imellan.

srand( (unsigned)time( NULL ) ); //Random sats
int x; // Sätter heltal , i detta fal x
for (x = 0; x < 15; x++) // for , x tilldelas värdet 0 , så länge x är mindre än 15 öka med ++ operatorn.
{
rand();
}
x = (int) mest * rand() / (RAND_MAX + 1.0);

cout << " Let the game begin " << endl;
cout << " Gissa talet 0 till " << mest << " | " << endl;

int ant = 0;
while(true){
int shots;
cin >> shots;
ant++;

// Här kommer IF satserna

if(shots == x){ // <- Om x är lika med det rätta svaret så ska den skriva ut " grattis " typ.
cout << " WHEEEEHO, u made my day ), talet var " << x << " men tog " << ant << " gånger =P " << endl;
break;
}

if(shots > x)
cout << " BEEEEP ... prova lagre tal .... forsok igen." << endl;
if(shots < x)
cout << " BEEEEP ... prova hogre tal .... forsok igen. " << endl;
}
cout << " Lira en jaekel till ? [j = JA | N = NEJ] ";
int val;
int j;
cin >> val;

if(val == j)
return 0;
system("cls");
}

return 0;
}

// vet att det inte är 100% än men bygger fortfarande på det så ni vet ^^

Permalänk

Jättekul, men vad är idén med tråden? Hade väntat mig en fråga av nåt slag. Vill du att vi ska leta buggar?

Permalänk
Medlem
Permalänk
Medlem

En sak som du kan förbätta är if-satserna. Istället för

if(shots == x)
{
...
}
if(shots > x)
{
...
}
if(shots < x)
{
...
}

så borde du använda else:

if(shots == x)
{
...
}
else if(shots > x)
{
...
}
else
{
...
}

Men som sagt, vad är syftet med tråden?

Permalänk
Medlem

hehe kanske formulerade fel då , tänkte fråga hur man kunde göra om man ska skapa en if sats där man kan köpa gissningar ,

en gissning kan kosta 10kr , så får man välja mellan 1,5,10 osv.

Permalänk

int pengar = 100; int gissningar; when(pengar > 0) { cout << "\nHur många gissningar vill du köpa? "; cin >> gissningar; if((gissningar*10) > pengar) { cout << "\nsorry, du hade inte tillräckligt med pengar."; exit(1); //eller break; eller liknande, beror ju på... } else pengar -= (gissningar * 10); when(gissningar > 0) { cout << "\nvilket tal gissar du på? "; cin >> gissningstal; // sen lite kod som kontrollerar talet osv.. } }

Ungefär så, behövs nog ändras lite och så.
Sen kan man ju göra något typ:
int pengar = (mest * 40); //eller liknande
sen måste du inkludera <cstdlib> om du ska använda exit(1); ,,,ifall du inte visste det
Och \n = newline

Permalänk
Medlem

Ett tips är att lägga koden i [code] taggen, då blir det lättare för oss o läsa.