Kurzusok
/
Python
Python
/
Feladatok
/
Esőcseppek
Esőcseppek

Esőcseppek

Könnyű

Bevezetés

Az Esőcseppek a FizzBuzz kihívás egy kicsit összetettebb változata, ami egy klasszikus állásinterjú-kérdés.

Utasítások

A feladatod, hogy egy számot a hozzá tartozó esőcsepphangokká alakíts.

Ha egy adott szám:

  • osztható 3-mal: az eredményhez fűzd hozzá a „Pling” szöveget.
  • osztható 5-tel: az eredményhez fűzd hozzá a „Plang” szöveget.
  • osztható 7-tel: az eredményhez fűzd hozzá a „Plong” szöveget.
  • nem osztható 3-mal, 5-tel vagy 7-tel: az eredmény a szám legyen stringként.

Példák

  • A 28 osztható 7-tel, de 3-mal vagy 5-tel nem, így az eredmény "Plong" lenne.
  • A 30 osztható 3-mal és 5-tel, de 7-tel nem, így az eredmény "PlingPlang" lenne.
  • A 34 nem osztható 3-mal, 5-tel vagy 7-tel, így az eredmény "34" lenne.
Note

Az egyik gyakori módja annak, hogy ellenőrizzük, hogy egy szám maradék nélkül osztható-e egy másikkal, az, hogy a maradékot vagy a modulust nullával hasonlítjuk össze. A legtöbb programozási nyelv biztosít operátorokat vagy függvényeket ezek egyikéhez (vagy mindkettőhöz).

Hogyan épül fel ez a feladat Pythonban

Ezt a feladatot a legjobb a Python % (modulo) operátorával megoldani, amely a pozitív egész számok osztásának maradékát adja vissza. Ennek van egy metódusmegfelelője: az operator.mod() az operator modulban.

A Python ezen kívül további „maradék” metódusokat kínál a math modulban. math.fmod() úgy viselkedik, mint a %, de lebegőpontos számokon működik. math.remainder() egy „nullához legközelebbi lépés” algoritmust valósít meg az osztás maradékának kiszámítására. Bár arra biztatunk, hogy ismerkedj meg ezekkel a metódusokkal, egyik sem fog pontosan megegyezni a % eredményével, ezért ebben a feladatban nem javasoljuk a használatukat.

A beépített divmod() függvény szintén a % operátorral megegyező maradékot ad, ha két pozitív egész számmal használod, de egy tuple-t ad vissza, amelyet ki kell csomagolni.

Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
Python Exercism

Készen állsz elkezdeni a(z) Esőcseppek feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Python nyelvet 17 fogalom146 feladat segítségével, valódi emberi mentorálással, mindez ingyen.

Mélyelemzés: Esőcseppek!

Fedezz fel megoldásokat: funkcionális pipeline-okat, mátrixszorzást, egy makróval előre kiszámított táblázatalapú megoldást, egy objektumorientált megközelítést, a Python és a TCL lenyűgöző felhasználását, valamint egy vállalati kiadást.