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

liczba setek, dziesiątek i jedności pobranej liczby

VPS Starter Arubacloud
+2 głosów
1,262 wizyt
pytanie zadane 28 października 2021 w Python przez K0jt3K Początkujący (280 p.)

Witam ma do zrobienia następujące zadanie: 

Pobrać od użytkownika liczbę w zakresie 0 – 999 (w przypadku niespełnionego warunku wypisać stosowny komunikat). W programie wyświetlić sumę cyfr oraz liczbę: jedności, dziesiątek i setek składających się na podaną liczbę (podpowiedź: w zadaniu wykorzystać operator reszty z dzielenia)

Mam już funkcje licząca sumę lecz nie wiem jak zrobić rozbicie na setki dziesiatki i jednosci. Działało dla liczb 3 cyfrowych lecz dla 2 cyfrowych juz nie. Chodzi mi o to, że gdy liczba wynosi np. 287 to będzie, ze setki to 2 dziesiatki to 8, a jednosci to 7. Natomiast gdy liczba bedzie np. 65 to setki to bedzie 0, dziesiatki to 6, a jednosci to 5. PLS HELP

komentarz 28 października 2021 przez VBService Ekspert (251,250 p.)
Proszę, pokaż kody jaki już masz.
komentarz 29 października 2021 przez K0jt3K Początkujący (280 p.)

 

print(f"Podaj liczbe z zakresu 0 - 999.")
liczba = int(input("Twoja liczba: "))
def suma(liczba):
    s = 0
    for i in str(liczba):
        s += int(i)
    return s
def podzial(liczba):
    tab = []
    if liczba > 99:

 

1
komentarz 29 października 2021 przez K0jt3K Początkujący (280 p.)

@VBService, 

print(f"Podaj liczbe z zakresu 0 - 999.")
liczba = int(input("Twoja liczba: "))
while liczba not in range(0,1000):
    liczba = int(input("Nieprawidlowa wartosc, Podaj liczbe w zakresie 0 – 999: "))
def suma(liczba):
    s = 0
    for i in str(liczba):
        s += int(i)
    return s
def podzial(liczba):
   setki = int(liczba/100%10)
   dziesiatki = int(liczba/10%10)
   jednosci = liczba%10
   print(f"Setki: {setki}, dziesiątki: {dziesiatki}, jedności {jednosci}!")
print(f"Suma cyft to: {suma(liczba)}")
podzial(liczba)

Teraz mam taki i już działa.

1 odpowiedź

+2 głosów
odpowiedź 29 października 2021 przez Inn Gaduła (4,300 p.)
wybrane 29 października 2021 przez K0jt3K
 
Najlepsza
number = int(input("Podaj liczbe w zakresie 0 – 999: "))
while number not in range(0,1000):
    number = int(input("Nieprawidlowa wartosc, Podaj liczbe w zakresie 0 – 999: "))
    
print("Suma cyfr - {}".format(sum([int(x) for x in str(number)])))
print("Jednosci - {}".format(number%10))
print("Dziesiatki - {}".format(int(number/10%10)))
print("Setki - {}".format(int(number/100%10)))

 

1
komentarz 29 października 2021 przez K0jt3K Początkujący (280 p.)
Dzięki wielkie za pomoc! :)

Podobne pytania

0 głosów
3 odpowiedzi 3,389 wizyt
0 głosów
2 odpowiedzi 3,487 wizyt
0 głosów
0 odpowiedzi 329 wizyt
pytanie zadane 31 maja 2021 w Python przez graj23x Obywatel (1,590 p.)

92,455 zapytań

141,263 odpowiedzi

319,099 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!

...