Cześć i witaj.
Masz ochotę na kolejne wyzwanie?
Wiem że jestem.
Teraz, kiedy skończyliśmy rozmawiać o pętlach, zastosujmy je.
Spróbujmy to rozgryźć jak rozwiązać problem.
Więc w tym wyzwaniu będziesz utwórz odgadnięcie programu numer c.
Będzie całkiem fajnie.
To będzie mała gra.
To, co się wydarzy, jest twoje
program wygeneruje liczbę losową od 0 do 20.
Po wygenerowaniu tego liczba losowa, poprosisz użytkownika,
aby odgadł, co to jest.
Więc użytkownik powinien mieć tylko taką możliwość wprowadzać liczby od 0 do 20.
Jeśli spróbują odgadnąć, jak numer 50, masz zamiar wyświetlić
błąd i powiedzieć, hej, możesz wprowadź tylko cyfry od 0 do 20.
Więc to jest jeden warunek.
Ale gdy użytkownik faktycznie otrzyma plik zgadnij i jest to
prawidłowe przypuszczenie, powiesz użytkownikowi, czy czy nie, były zbyt wysokie lub zbyt niskie.
Albo jeśli mieli rację, ty wyświetlenie z informacją, że
mają rację i wygrają grę.
Teraz mają tylko pewne ile razy mogą odgadnąć
prawidłową liczbę.
Mogą tylko zgadywać liczba 5 razy.
Po pięciu razach przegrywają.
A więc o to chodzi w tej grze zgadywanie poprawnej liczby.
Dowolna liczba od 0 do 20, jak chcesz Sprawdź poprawność danych wejściowych użytkownika, aby upewnić się,
że wprowadzono wartość 0 od 20.
A jeśli w coś weszli i oni masz mniej niż 5 prób, powiesz im,
hej, to było za wysokie albo, hej, to było za niskie niż
liczba, którą powinni zgadnąć.
A to są podstawowe wymagania programu, podstawowa
gra typu zgadywanie liczb.
A teraz, jak wygląda wynik.
Aby dać ci wyobrażenie o tym, jak ja zaprojektowałeś to, możesz chcieć naśladować.
To. Kiedy po raz pierwszy uruchomiłem program, wyświetliłem małą wiadomość.
Powiedziałem, że to gra w zgadywanie, tylko po to, żeby wiedzieli, co się dzieje.
Wtedy powiedziałem im, że tak wybrał liczbę od 0 do
20, którą musisz odgadnąć.
Masz jeszcze pięć prób do odgadnięcia.
Następnie powiedziałem, aby zgadnąć.
Przypuszczali wprowadzić ich przypuszczenie.
Wpisali 12 i wydrukowałem przepraszam, 12 jest źle, mój numer
jest mniejszy.
A potem pokazałem cię pozostały cztery próby.
Potem przypuszczali 8, i powiedziałem, no cóż, 8 też jest błędne,
moja liczba jest mniejsza niż to.
A potem weszli na 3, powiedziałem, że oni pozostały 3 próby, weszli 4.
Powiedziałem, że 4 jest błędne.
A potem mieli 2 próby wyszedł, a oni w
końcu odgadli mój numer, który był 2.
Gdy odgadną prawidłową liczbę, Powiedziałem im gratulacje,
zgadłeś, więc wygrali ponieważ zostały im jeszcze 2 próby.
To podstawowy typ prostej gry gdzie będziesz musiał użyć
instrukcji if, idziesz trzeba używać pętli while.
Będziesz więc musiał użyć pliku pętli w tym,
ponieważ musisz ciągle prosić o dane wejściowe, aż użytkownik odgadł poprawnie lub do
momentu, gdy liczba prób przekroczy 5.
Więc jeden z najlepszych sposobów Uruchom taki program, aby zapisać,
jak idziesz stworzyć program na papierze.
Sugerowałbym, żebyś to zrobił ponieważ jeśli napiszesz, jak zamierzasz zaatakować problem
na papierze, to będzie łatwiejsze do rozwiązania.
Możesz to zapisać w formacie pseudokod, więc to
tylko język angielski, ale chcesz się zidentyfikować gdzie będziesz mieć
pętle i gdzie będziesz mieć if instrukcje do sprawdzenia warunków.
Bo jeśli na to spojrzysz danych wyjściowych, jest wiele warunków,
które musisz sprawdzić.
Pętla while sprawdzi w przypadku warunków lub pętli for
sprawdzi, czy tak jest kończy pętlę, jeśli odgadłeś poprawnie lub jeśli masz
więcej niż 5 prób.
Będziesz mieć warunki sprawdzić również to, co wpisali.
Więc będziesz mieć plik jeśli oświadczenie powiedzieć,
hej, właśnie wprowadziłeś liczbę.
A jeśli nie jest między 0 a 20 i może być tak, że możesz chcieć
mieć zagnieżdżoną pętlę dla tego przypadku.
Ponieważ chcesz ciągle pytać wprowadzić inny numer, aż
wprowadzą prawidłowy numer, nie jest to poprawna liczba, którą odgadłeś,
ale poprawna liczba.
Więc mogłem to zobaczyć zaprogramować zewnętrzną pętlę.
Pętla zewnętrzna byłaby tą pętlą poprosił użytkownika o wprowadzenie liczb, dopóki nie zgadną
prawidłową liczbę lub do czasu, gdy uda im się
osiągnąć liczbę prób.
Widziałem wewnętrzną pętlę, w której pyta, czy liczba jest nieprawidłowa między 0
a 20, pytają dalej użytkownika, aby wprowadzić prawidłowy numer.
A potem mogę zobaczyć, czy oświadczenia do po prostu sprawdź, czy
liczba jest zbyt niska, zbyt wysoka lub równa.
Ponieważ masz wiele wyjść warunki dla twojej zewnętrznej
pętli, niezależnie od tego, czy zgadłeś, czy nie poprawnie lub czy liczby
są równe, czy nie, to może być dobre przypadek użycia instrukcji break.
Ponieważ pamiętaj, używasz instrukcja break, gdy masz
wiele wyjść.
Więc mógłbyś coś mieć wewnątrz zewnętrznej pętli, która mówi,
że jeśli odgadną poprawnie, wyskocz.
A potem stan na zewnątrz pętla w pętli while lub w samej
pętli for, warunek x byłoby to, czy liczba prób
jest większa niż 5.
Więc to jest jedno podejście projektowe.
Wspomniałem o wielu rzeczach.
Pozostała Ci tylko jedna rzecz wszystko do Twojej dyspozycji.
Jeśli nauczyłeś się wszystkiego, o czym myślę z wyjątkiem tego generatora liczb losowych.
To jest nowe.
Wiesz, jak to zrobić, jeśli oświadczenia, umiesz
robić pętle, umiesz deklarować zmienne, znasz te wszystkie fajne rzeczy.
Wiesz, jak drukować dane wyjściowe wyświetlacz, ale nie wiesz, jak
zrobić generator liczb losowych.
Więc dam Ty masz do tego kod.
Musisz wygenerować liczbę losową.
Ponieważ za każdym razem, gdy uruchamiasz chcesz mieć nowy
numer, który mogą odgadnąć.
Tak więc, aby wygenerować liczbę losową od 0 do 20, oto
kroki, które musisz wykonać.
Najpierw musisz dołączyć 2 dodatkowe biblioteki, stdlib. h, czas. godz.
Więc chcesz dodać te include dyrektywy u góry pliku.
Sdtlib. h pozwoli ci korzystać funkcja srand, która umożliwia
generowanie liczb losowych.
Czas. h pozwala na udostępnienie pliku seed dla liczby losowej,
używając czasu, uzyskując aktualny czas.
Więc kiedy dołączamy dodatkowe biblioteki poza naszym programem, to po prostu
oznacza, że chcemy występować dodatkowe funkcje.
Nie rozmawialiśmy o wszystkich standardowe biblioteki, które są dostarczane
z c, ale są dostarczane z 2 ładnymi te, aby uzyskać aktualny czas,
a także wygenerować losowy numer, którego będziemy używać.
Więc najpierw uwzględniamy te 2 dyrektywy u góry.
Następnie utworzymy plik zmienna wewnątrz naszej
głównej funkcji o nazwie time_t, a ty mogę po prostu nazwać to t, możesz to dodać.
Po dodaniu zmiennej czasu, ty może zainicjować generator liczb
losowych za pomocą funkcji srand.
Więc mówisz srand.
Zapewnia to ziarno generator losowy, służy tylko do
jego inicjalizacji.
A tutaj po prostu skopiuj tę linię code srand ((unsigned), a następnie czas, a następnie
przekazujesz ampersand t.
Nawet nie musisz rozumieć co robi ten kod, po
prostu skopiuj go i wklej.
Ale generuje random, inicjalizuje generator
liczb losowych.
Po zainicjowaniu pliku generator liczb losowych,
musisz wygenerować liczbę.
A wszystko, co robisz, aby wygenerować plik numer
to mówisz rand, wywołujesz funkcję o nazwie rand i ty powiedz% 21, że to moduł, ponieważ chcesz, aby
znajdował się między 0 i 21, używasz zakodowanych na stałe 21.
Możesz przechowywać tę losową liczbę w liczbie całkowitej i to jest liczba, którą
zamierzasz porównać przeciwko, aby wyjść z pętli, niezależnie od tego, czy
odgadli poprawnie, czy nie.
Będzie to również liczba które porównujesz z uh, aby określić,
czy nie drukujesz za nisko lub za wysoko.
Więc to powinno być świetną zabawą.
Ponownie, wiele koncepcji, do których zmierzasz być narażone
na instrukcje if, konstrukcje zapętlające, przerwanie instrukcja, wewnętrzne i zewnętrzne pętle,
zagnieżdżone pętle, dużo fajnych rzeczy.
Więc powodzenia, baw się dobrze i przedstawię rozwiązanie w
następnym wykładzie. Dziękuję Ci.