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
  • 0

Pierwsze programy


Shai332

Pytanie

Opublikowano

Witam, dopiero uczę się programować w C++ i jestem ciekaw czy dobrze mi idzie i chciałbym otrzymać ocenę od profesjonalistów/bardziej obeznanych w tym temacie.

 

Gra która losuje liczb, a ty musisz ją zgadnąć:

Kod: 

#include <iostream>
#include <cstdlib>
#include <time.h>
#include <stdio.h>

using namespace std;

int liczba, strzal, ile_prob=0;
int main()
{
    cout << "Witaj! Pomyslalem sobie ilczbe od 1 do 100, zgadnij jaka to liczba!" << endl;
    srand(time(NULL));
    liczba = rand()%100+1;
    while(strzal!=liczba)
    {
        ile_prob++;
        cout << "Zgadnij jaka: (To twoja " << ile_prob << " proba):";
        cin >> strzal;

        if (strzal==liczba)
        cout << "Udalo sie! Wygrales w " << ile_prob << " probie!" << endl;

        else if (strzal<liczba)
        cout << "To za malo!" << endl;

        else if (strzal>liczba)
        cout << "To za duzo!" << endl;
    }

    cout << "Aby zamknac gre kliknij dowolny klawisz!";
    getchar(); getchar();
    return 0;
}

 

Maszyna losująca do dużego totka:

Kod: 

#include <iostream>
#include <windows.h>
#include <time.h>
#include <stdio.h>

using namespace std;

int liczba;
int main()
{
    cout << "W kasecie maszyny losujacej znajduje sie 49 kolejno ulozonych kul. Zwalniamy blokade. Zaczynamy losowanie Duzego Totka!" << endl;
    Sleep (3000);
    cout << endl;
    srand (time(NULL));

    for (int i=1; i<=6; i++)
    {
    liczba = rand ()%49+1;
    Sleep(1000);
    cout<<liczba <<"\a"<<endl;
    }

    cout << "Dziekujemy za ogladanie losowania! Zapraszamy ponownie!" << endl;
    getchar();
    return 0;
}

 

Jeżeli czas pozwoli będę dodawał więcej programów :)

Pokémon Polish Community

Pokémonowy serwer Discord!

2 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

Opublikowano

A co mi tam, pomarudzę sobie.

#include <iostream>
#include <cstdlib>
#include <time.h> //ctime
#include <stdio.h> //cstdio

using namespace std; //generalnie rzecz biorąc, w tak prostych programach nie ma przeciwskazań by tego nie używać aczkolwiek namespace std ma całe mnóstwo nazw
                     //które mogą kolidować z funkcjami w Twoim programie, dlatego z reguły się tego unika
                     //najlepiej używaj tego TYLKO wtedy, kiedy DOSKONALE wiesz co robisz

int liczba, strzal, ile_prob=0; //przypisałeś wartość tylko do zmiennej ile_prob, poza tym, zmienne globalne, które nie mają inicjalizatorów, będą inicjalizowane zerami
int main()
{
    cout << "Witaj! Pomyslalem sobie ilczbe od 1 do 100, zgadnij jaka to liczba!" << endl;
    srand(time(NULL)); //to jest sposób z C a nie z C++, użyj #include <random> i generatora z tej biblioteki
    liczba = rand()%100+1;
    while(strzal!=liczba)
    {
        ile_prob++;
        cout << "Zgadnij jaka: (To twoja " << ile_prob << " proba):";
        cin >> strzal; //wpisanie czegokolwiek innego niż liczba spowoduje 'undefined behaviour'

        if (strzal==liczba)
        cout << "Udalo sie! Wygrales w " << ile_prob << " probie!" << endl; //używaj indentacji po if'ach i else, kod będzie czytelniejszy

        else if (strzal<liczba)
        cout << "To za malo!" << endl;

        else if (strzal>liczba)
        cout << "To za duzo!" << endl;
    }

    cout << "Aby zamknac gre kliknij dowolny klawisz!";
    getchar(); getchar(); //cin.get() zamiast getchar(), dodatkowo możesz użyć cin.ignore() by zignorować znak nowej linii, który jest w buforze po podaniu liczby
    return 0;
}
//C++ ma składnię w języku angielskim, dlatego też, w celu poprawienia czytelności, powinieneś używać nazw zmiennych po angielsku
#include <iostream>
#include <windows.h> //#include <thread> do sleep'a
#include <time.h> //ctime <-- to jest C a nie C++
#include <stdio.h> //cstdio <-- to jest C a nie C++

using namespace std;

int liczba;
int main()
{
    cout << "W kasecie maszyny losujacej znajduje sie 49 kolejno ulozonych kul. Zwalniamy blokade. Zaczynamy losowanie Duzego Totka!" << endl;
    Sleep (3000); //zamiast sleepa:
/*
    using namespace std::chrono_literals;
    std::this_thread::sleep_for(3s);
*/
    cout << endl;
    srand (time(NULL)); //#include <random> i generator z tej biblioteki

    for (int i=1; i<=6; i++)
    {
    liczba = rand ()%49+1; //indentacja bloków czyni kod czytelniejszym
    Sleep(1000); //std::this_thread::sleep_for(1s); <-- oczywiście z #include <thread> i using namespace std::chrono_literals;
    cout<<liczba <<"\a"<<endl;
    }

    cout << "Dziekujemy za ogladanie losowania! Zapraszamy ponownie!" << endl;
    getchar(); //std::cin.get()
    return 0;
}
//Program nie ma zabezpieczenia przed wielokrotnym wylosowaniem tej samej liczby, chyba nie o to chodziło ;)

 

YOU MUST DIE

- Ganon, Koridai

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...