Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: Vastauksen arvoinen kysymys?

crafn [04.07.2005 16:13:12]

#

Minä olen tehnyt (tekemässä) tämmöistä peliä: Tässä voi ostaa taavaroita jolla sitten voi taistella.

#include<stdlib.h>
#include<time.h>
#include<iostream.h>

using namespace std;
int elama = 100;
int iskuh;
int poweri = 10;
int valinta;
int aseet;
char vaseet[1];
int raha = 150;


int main(){

    srand(time(0));

                   while (1)
                   {
                    iskuh = rand() % poweri;
                    system("CLS");
                    cout << "Sinulla on " << raha << " e\n";
                    cout << "1 = Kauppaan\n 2 = Taistelemaan\n";
                    cin >> valinta;

                    switch (valinta)
                    {
                           case 1: system("CLS");
                                   cout << "Mita haluaisit ostaa?\n";
                                   cout << "1 = Miekka 100 e \n";
                                   cout << "2 = Pyssykka 200 e \n";
                                   cin >> aseet;


                                   if (aseet == 1 && raha - 100 > 0)
                                   {
                                             raha = raha - 100;

                                   }
                                   if (aseet == 2 && raha - 200 > 0)
                                   {
                                             raha = raha - 200;
                                   }
                                   break;


                           case 2:
                                   system("CLS");
                                   cout << "Minka aseen valitset?\n";
                                   cout << aseet;
                                   system("PAUSE>NUL");
                                   break;

                    }

                    }

return 0;
}

ongelma on siinä etten tiedä miten saisi nähdä ostetut tavarat.
Olisin kiitollinen jos joku vaivautuisi vastaamaan minulle :D

Heikki [04.07.2005 16:31:46]

#

No no no....


Ensinnäkin, ostotapahtumassahan sinä vain vähennät rahaa etkä pistä mihinkään tietoa ostetuista tavaroista. Se miten tämän tekisit on toteutuskysymys, voit tehdä vaikka yksinkertaisesti int Tavarat[10]; taulukon, jossa jokaisessa solussa on tavaran id-numero ja aina tavaraa ostaessa kirjoitat id:n taulukkoon, sitten vaikka näin:

for (int i=0; i<10; i++) {
  switch(Tavarat[i]) {
    case 1: cout << "Miekka"; break;
    case 2: cout << "Kirves"; break;
    default: cout << "Tuntematon ase";
  }

Toki toteutustapoja on paljon enemmänkin eikä tuo kertomani ole mitenkään järkevin mutta helpoin ehkä.

Ps. Globaaleja muuttujia tulisi välttää
Pss. Käytä #include <iostream> ja <time> kun kerran käytät std-nimiavaruutta
Psss. Yksisoluinen charritaulu voisi olla ihan char vaseet;

crafn [04.07.2005 17:17:47]

#

Kiitos vastauksesta :D

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta