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

Python nie rozumiem kodu

VPS Starter Arubacloud
+1 głos
295 wizyt
pytanie zadane 2 maja 2022 w Python przez niezalogowany

Nie rozumiem działania poniższego kodu.

Mógłby mi ktoś wytłumaczyć krok po kroku jak działa ten program?

number = 76542

reverse_number = 0

print("Given number ",number)
while number > 0 :
    reminder = number % 10
    reverse_number = (reverse_number * 10) + reminder
    number = number // 10

print("Reverse Number ",reverse_number)

 

 

 

komentarz 2 maja 2022 przez Oscar Nałogowiec (29,340 p.)
Uzupełniające pytanie z matemetyki:

A czy wiesz na czym polegają pozycyjne systemy liczbowe oraz jak wygląda operacja dzielenia z resztą?
komentarz 2 maja 2022 przez Wiciorny Ekspert (277,460 p.)

@Michal123456, jeśli nie jesteś autorem kodu, a zapewne nie jesteś powinieneś się zapoznać z językiem z którym pracujesz, a nie oczekiwać że ktoś będzie robił coś-> czego tobie najwyraźniej się nie chce.

Inna sprawa, że program nie jest skomplikowany i wymaga od Ciebie podstaw poznania 

  1. operatorów arytmetycznych 
  2. operacji np. modulo
  3. podstaw programowania w pythonie i np. pętli 
komentarz 3 maja 2022 przez VBService Ekspert (255,800 p.)

@Michal123456, Zapisz sobie ten kod np. tak

 

[ on-line ]

number = 176542

reverse_number = 0
reminder = 0
space = len(str(number))

 
print(f"Given number: {number}", "\n")
while number > 0:

    print(f"Before:  reminder={reminder}  reverse_number={reverse_number:<{space}}  number={number}")
    
    reminder = number % 10
    reverse_number = (reverse_number * 10) + reminder
    number = number // 10

    print(f" After:  reminder={reminder}  reverse_number={reverse_number:<{space}}  number={number}", "\n")
    
 
print(f"Reverse Number: {reverse_number}")

 

 

Jakie są operatory w Pythonie? ]

komentarz 3 maja 2022 przez niezalogowany
Jedyne czego nie rozumiem w tym programie to dlaczego wyniki działań w zmiennej reverse_number są doklejane dzięki czemu wychodzi liczba odwrotna a nie sumowane.
komentarz 3 maja 2022 przez niezalogowany
Rozumiem liczba w number jest dzielona przez 10 dzięki czemu jest coraz mniejsza jest wyciągana z niej reszta  a w zmiennej reverse_number powstaje z każdym przebiegiem pętli nowa liczba aż do 7.
1
komentarz 3 maja 2022 przez Oscar Nałogowiec (29,340 p.)

@Michal123456, ponieważ poprzednia wartość tej zmiennej jest mnożona przez 10 czyli przesunieta o jedną cyfrę w lewo. Tworzy to miejsce na kolejną cyfrę.

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

+1 głos
1 odpowiedź 371 wizyt
pytanie zadane 14 maja 2022 w Python przez thesolitaryofchoice Początkujący (490 p.)
0 głosów
1 odpowiedź 198 wizyt
pytanie zadane 14 maja 2022 w Python przez thesolitaryofchoice Początkujący (490 p.)
0 głosów
1 odpowiedź 347 wizyt
pytanie zadane 15 marca 2022 w Python przez Tankista Początkujący (280 p.)

92,979 zapytań

141,943 odpowiedzi

321,189 komentarzy

62,308 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 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...