Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Moja "gra" w C++.


Rekomendowane odpowiedzi

Opublikowano

Witam. Dzisiaj zaprezentuję wam moją "grę" w C++. Polega ona na zgadnieciu wylosowanej liczby. Jestem początkującym programistą. Wszystkie pochwały i krytyki mile widziane.
 
PS. Nie wiem dlaczego, gdy odpalam program, za pierwszym razem zawsze losuje liczbe 41...

 

 

 

#include <iostream>
#include <conio.h>
#include <ctime>
#include <cmath>
#include <stdlib.h>
#include <time.h>

using namespace std;

void Start();
void Gra();

int liczba, wylosowana, szanse, maxlos, wybor;

void Start() 
{	
	cout << "Wyierz poziom trudnosci:\n";
	cout << "1. Bardzo Latwy [0 - 50]\n";
	cout << "2. Latwy [0 - 100]\n";
	cout << "3. Sredni [0 - 500]\n";
	cout << "4. Trudny [0 - 1000]\n";
	cout << "5. Expert [0 - 5000]\n";
	cout << "6. UFO [0 - 10000]\n";
	cout << "0. Exit\n\n";

    cout << "Twoj wybor: ";
	cin >> wybor;                 
	cout << "\n";

	switch (wybor) 
	{
		case 0:
		{
			exit(0);
		}
		case 1:
		{
			maxlos = 50;  
			break;
	    }
		case 2:
		{
			maxlos = 100;
			break;
		}
		case 3:
		{
			maxlos = 500;
			break;
		}
		case 4:
		{
			maxlos = 1000;
			break;
		}
		case 5:
		{
			maxlos = 5000;
			break;
		}
		case 6:
		{
			maxlos = 10000;
			break;
		}
		default:
		{
			cout << "Nieznana funkcja!\n";
			getch();
			exit(0);
		}
	}

	szanse = 10;
	wylosowana = rand() % maxlos; 
	Gra();
}

void Gra() 
{
	if (szanse == 0) 
	{
		cout << "KONIEC GRY...\n";
		cout << "Ta liczba to: " << wylosowana << "\n\n";
		getch();
		Start();
	}
	
	cout << "Wpisz liczbe: ";
	cin >> liczba;
	
	if((liczba > maxlos) || (liczba < 0)) 
	{ 
		cout << "BLAD: Liczba nie miesci sie w przedziale 0 - " << maxlos << "\n\n";
		Gra();
	}
	if(liczba == wylosowana)
	{
		cout << "** WYGRANA! **\n\n";
		getch(); 
		Start();
	} 
	if(liczba > wylosowana) 
	{
		cout << "Zbyt duza liczba\n";
		szanse = szanse - 1;
		cout << "Pozostale szanse: " << szanse << "\n\n";
		Gra();
	} 
	if(liczba < wylosowana) 
	{
		cout << "Zbyt mala liczba\n";
		szanse = szanse - 1;
		cout << "Pozostale szanse: " << szanse << "\n\n";
		Gra();
	}
}

int main() 
{
	cout << "*** LOSOWANKO ***\n";
	cout << "Celem tej gry jest zgadniecie\n";
	cout << "wylosowanej liczby. Program \n";
	cout << "poinformuje cie gdy liczba \n";
	cout << "bedzie za mala lub za duza. \n";
	cout << "Masz 10 szans na odgadniecie. \n\n";
	Start();
	return 0;
}

 

 

Opublikowano

Ustaw: srand(time(null));
I na przyszłość: Nie dodawaj takich projektów bo takiego "chłamu" jest masa na forum. Pracuj dalej, ale zachowaj swoje początkowe projekty dla siebie.

 

REPREDATOR <- Szybszy :-D

Opublikowano

A tak na serio to popracuj trochę, rozbuduj go, zrób przyjazne gui. Ile się uczysz C++ jeśli można spytać?

3587513.png


Potrzebujesz pomocy? Pisz śmiało na PW/Skype/Gadu-Gadu!


(albo napisz na forum... ^.^)

Opublikowano

trudny poziom nie wcale taki trudny ,bo da sie go latwo opanowac  ;)
 
 

        
int ...,mn,mx;

...

wylosowana = rand() % maxlos; 
	mx=maxlos;
	mn=0;
	Gra();

...

liczba=mn+(mx-mn)/2; 
if(liczba>wylosowana)mx=liczba;
if(liczba<wylosowana)mn=liczba;

...

100% trafnosci w poziomach od 1-4

 

lv 1 - max 5 losowan

lv 2 - max 6 losowan

lv 3 - max 8 losowan

lv 4 - max 9 losowan

lv 5 - max 13 losowan

lv 6 - max 14 losowan

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...