• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

C++ liczby pseudolosowe OSX

Aruba Cloud - Virtual Private Server VPS
0 głosów
867 wizyt
pytanie zadane 30 sierpnia 2016 w C i C++ przez Szymon Ciamaga Obywatel (1,980 p.)

Witam wszystkich mam problem z 4 odcinkiem C++ a mianowicie program nie chodzi do końca jak powinien kombinowałem pisałem od nowa itd ale dalej nie chodzi proszę o pomoc. Pracuje na MacBooku OSX El capitan i korzystam z Xcode  ;)

#include <iostream>
#include "cstdlib"
#include "ctime"
using namespace std;

int liczba, strzal;

int main() {
    cout << "Pomyślalem sobie liczbę z zakresu od 0 do 100:" << endl;
    srand(time(NULL));
    liczba = rand()%100+1;
    cout << liczba << endl;
    cin >> strzal;
    
    while(strzal!=liczba) {
        cout << "zgadnij jaka to liczba";
        cin >> strzal;
        
        if(strzal==liczba)
            cout << "Gratuluje wygrałeś"<< endl;
        
        else if(strzal<liczba)
            cout << "To za mało";
        
        else if(strzal>liczba)
            cout << "to za dużo";
    }
    return 0;
}

 

komentarz 30 sierpnia 2016 przez bimbrownik Mądrala (5,180 p.)
Kilka rad - po każdym komunikacie powinieneś zrobić endl lub spację, żeby dało się to czytać. Pierwsze wczytanie zmiennej "strzał" jest niepotrzebne. Do tego powinieneś nazywać zmienne po angielsku oraz nie tworzyć ich globalnie.
1
komentarz 30 sierpnia 2016 przez unknown Nałogowiec (39,560 p.)
Używaj biblioteki random zamiast przestarzałego rand.
komentarz 30 sierpnia 2016 przez Szymon Ciamaga Obywatel (1,980 p.)
już tak zrobiłem
komentarz 30 sierpnia 2016 przez jpacanowski VIP (101,940 p.)

ale dalej nie chodzi proszę o pomoc

Nie chodzi, no ale co... ?

Pracuje na MacBooku OSX El capitan i korzystam z Xcode  ;)

Co ma do tego OS X ? ;)

komentarz 30 sierpnia 2016 przez QizmoPL Stary wyjadacz (11,440 p.)

 jpacanowski inne biblioteki, nie zawsze ale sie zdarza 

komentarz 30 sierpnia 2016 przez draghan VIP (106,230 p.)
Nie no, losowanie powinno działać, bo jest w standardzie. :) Chociaż informacja o systemie i kompilatorze JEST zasadna - na Windowsie i MinGW na przykład nie działa zbyt dobrze std::rand. :)

3 odpowiedzi

+2 głosów
odpowiedź 30 sierpnia 2016 przez criss Mędrzec (172,590 p.)
wybrane 30 sierpnia 2016 przez Szymon Ciamaga
 
Najlepsza
#include "cstdlib"
#include "ctime"

Dlaczego "" ?

"" znaczy "szukaj względem katalogu projektu"

<> znaczy "szukaj w katalogach podanych kompilatorowi w opcjach projektu (zakładka zwykle nazywa się include dirs etc.)

Poza tym: precyzuj o co ci chodzi. Samo "nie działa pomusz" to troche mało.

komentarz 30 sierpnia 2016 przez Szymon Ciamaga Obywatel (1,980 p.)
Po odpaleniu programu program piszę "Pomyślalem sobie liczbę z zakresu od 0 do 100:" i podaje odpowiedź. Program powinien się jeszcze odrazu zapytać "zgadnij jaka to liczba" ale pyta dopiero jak wpiszę jakąkolwiek liczbę inną niż została wylosowana bo jak wpiszę tę liczbę, którą wylosował program się kończy.
komentarz 30 sierpnia 2016 przez draghan VIP (106,230 p.)

Trochę więcej uwagi przy kodzie, kolego. ;)

Sam kazałeś zaraz po wypisaniu wylosowanej liczby wczytywać wartość do zmiennej strzal, dopiero później program wpada (lub nie) w pętlę.

komentarz 30 sierpnia 2016 przez Szymon Ciamaga Obywatel (1,980 p.)
Faktycznie.. Masakra dziękuje teraz jest wszystko tak jak powinno być ;)
komentarz 30 sierpnia 2016 przez draghan VIP (106,230 p.)
Na zdrowie. :) Następnym razem postaraj się sam znaleźć problem. Siedzenie "do upadłego", aż się znajdzie swój błąd, jest najbardziej dydaktyczną metodą z możliwych.
1
komentarz 30 sierpnia 2016 przez smh Obywatel (1,940 p.)
W przypadku braku pliku w folderze z projektem "" zachowa się jak <>.
komentarz 30 sierpnia 2016 przez criss Mędrzec (172,590 p.)
@smh - o, dzięki, tego nie wiedziałem
komentarz 1 września 2016 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Miałem to napisać, ale smh mnie uprzedził :)
komentarz 2 września 2016 przez criss Mędrzec (172,590 p.)
No tak ze 2 dni XD
komentarz 2 września 2016 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Nom :D
+1 głos
odpowiedź 1 września 2016 przez hubercik Użytkownik (560 p.)
edycja 1 września 2016 przez hubercik

Witaj :) Piszę tak samo na macu - musiałem szukać w necie, np stackoverflow rozwiązań i się udawało :D - pewnie będziesz zmuszony do szukania jeszcze kilka razy - polecam uczyć się angielskiego(doszkalać) - ale to tylko taka rada, teraz spróbuję Ci pomóc :)

popraw komendę z : 

srand(time(NULL));

na : 

srand((unsigned int)time(NULL))

Powinno działać, pozdrawiam i powodzenia ! :)

Ps. <ctime> , <cstdlib> - biblioteki są zamykane w takie "nawiasy" ostre || w Xcode działa też biblioteka <time.h>  ^.^ wydaje mi się także, iż losowanie następuje od 1 do 100 a nie od 0 do 100 :)

0 głosów
odpowiedź 30 sierpnia 2016 przez Kasztan Dyskutant (8,080 p.)
Jaki sens ma przepisywanie kody z kursu ?

Jeszcze źle.
komentarz 30 sierpnia 2016 przez Szymon Ciamaga Obywatel (1,980 p.)
nie przepisywałem go z kursu robiłem to mniej więcej sam gdy czegoś do końca nie rozumiałem odpalałem film
komentarz 30 sierpnia 2016 przez Kasztan Dyskutant (8,080 p.)
OK OK na SPOJu masz fajne zadanie

Podobne pytania

0 głosów
0 odpowiedzi 518 wizyt
0 głosów
3 odpowiedzi 1,065 wizyt
pytanie zadane 12 stycznia 2017 w C i C++ przez pokrywa1 Użytkownik (990 p.)
0 głosów
1 odpowiedź 518 wizyt
pytanie zadane 27 stycznia 2018 w C i C++ przez luksonik Nowicjusz (120 p.)

93,264 zapytań

142,260 odpowiedzi

322,234 komentarzy

62,582 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...