0030 - AfisareMultipli
Cerință
Scrieți definiția completă a funcției Python sub care primește doi parametri n și k și determină afișarea pe ecran, în ordine descrescătoare, a primelor n numere naturale nenule divizibile cu k.
Restricții de precizări
- numele funcției va fi sub
- funcția va avea exact doi parametri, în ordinea: n, respectiv k
- 0 < n ≤ 50, 0 < k ≤ 20
- cele n numere vor fi afișate pe aceeași linie, separate prin câte un spațiu
Exemplu
Dacă n = 3 și k = 5, apelul subprogramului va afișa pe ecran: 15 10 5
Important
Soluţia propusă va conţine doar definiţia funcţiei cerute. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.
Rezolvare
Rezolvare ver. 1
<syntaxhighlight lang="python" line="1" start="1">
- Definim funcția sub care primește doi parametri n și k
- și afișează primele n numere divizibile cu k în ordine descrescătoare.
def sub(n, k):
i = k * n while n > 0: print(i, end=' ') i -= k n -= 1
- Program principal
if __name__ == '__main__':
# Citim valorile n și k de la tastatură n = int(input("Introduceți numărul de elemente: ")) k = int(input("Introduceți divizorul: ")) # Verificăm restricțiile impuse în cerință if n <= 0 or n > 50: print("Eroare: n trebuie să fie între 1 și 50.") elif k <= 0 or k > 20: print("Eroare: k trebuie să fie între 1 și 20.") else: # Apelăm funcția sub și afișăm rezultatul print("Datele de intrare sunt corecte.") sub(n, k)
</syntaxhighlight>