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

Ocena kodu, pierwsze szlify

VPS Starter Arubacloud
–1 głos
191 wizyt
pytanie zadane 15 grudnia 2016 w Python przez golishaq Użytkownik (660 p.)

Witam wszystkich, jestem świeżynką na forum. Wcześniej do czynienia z programowanie miałem  w technikum i na studiach. Coś wiem, coś kojarzę ale dużo rzeczy z głowy wyleciało więc postanowiłem zrobić restart i odświeżyć wiedzę. Planuje przyłożyć się do Pythona i C#. A potem webdev/aplikacje webowe , mobilne albo cross-platform (Xamarin?). Unity mi się podobało więc gamedev też niewykluczony (zwłaszcza że grałem niemal nałogowo jak miałem czas, więc "rynek" znam)

Na początku tego tygodnia zacząłem przerabiać książkę "Python dla każdego" M.Dawsona i dotarłem do końca 3 rozdziału. Ostatnie zadanie polega na przerobieniu przykładowego kodu programu gdzie zgadujemy liczbę wylosowaną przez komputer na wersję, gdzie komputer zgaduje liczbę podaną przez nas.

Wersja kodu z książki.

liczba = random.randint(1,100)
ask = int(input("Podaj liczbe"))
count = 1
#pętla zgadywania:
while ask != liczba:
    if ask > liczba:
        print("Za duża...")
    else:
        print("Za mała...")

    ask = int(input("Podaj liczbe"))
    count += 1
print("Gratuluje!, Wylosowana liczba to", liczba
      , "\nPotrzebowałeś", count, "prób.")

Wersja z ćwiczenia przerobiona przeze mnie. Najprościej wg mnie było wykorzystać metodę "dziel i rządź" i taki algorytm starałem się zastosować. 100% wymyślania, żadnej pomocy Google'a. Teraz myślę co tu do tego kodu jeszcze dodać, jak przeprowadzić testy żeby wychwycić czy jest błąd, czy użyć innej metody.

liczba = random.randint(1,100) 
x = liczba  #zmienna pomocnicza
ask = int(input("Podaj liczbe 1-100 \n"))
count = 1
top = 100 # najwyższa wartość

#pętla zgadywania:
while ask != liczba:
    if ask < liczba:
        top = liczba
        liczba //= 2
    else:
        liczba = liczba + ((top - liczba)//2)
    count += 1
print("Twoja licza to", ask, "\nMoja to", x, "\nPotrzebowalem", count, "prób")

 

1 odpowiedź

0 głosów
odpowiedź 16 grudnia 2016 przez operator Stary wyjadacz (10,920 p.)
Super, ze komentujesz kod. To się szanuje. Zawsze warto pisać oczekiwany wynik.

Podobne pytania

0 głosów
2 odpowiedzi 241 wizyt
pytanie zadane 2 stycznia 2019 w Python przez Piotr Jasiński Bywalec (2,120 p.)
+2 głosów
2 odpowiedzi 366 wizyt
+1 głos
1 odpowiedź 274 wizyt
pytanie zadane 8 maja 2020 w Python przez wojtek_suchy Mądrala (6,880 p.)

92,452 zapytań

141,262 odpowiedzi

319,077 komentarzy

61,854 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.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...