1754 - Munți: Difference between revisions
Dragos1234 (talk | contribs) Pagină nouă: Sursa: [https://www.pbinfo.ro/probleme/1892/snorocos] == Cerinţa == Se dă un număr natural '''n'''. Dacă numărul este norocos afișați cele '''n''' numere consecutive care adunate dau pătratul acestuia. == Date de intrare == Programul citește de la tastatură numărul '''n'''. == Date de ieșire == Daca '''n''' este norocos, programul va afișa pe ecran cele '''n''' numere consecutive care adunate dau '''n * n''', separate prin spații. In caz contrar, programul va... |
Dragos1234 (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
Sursa: [https://www.pbinfo.ro/probleme/ | Sursa: [https://www.pbinfo.ro/probleme/1754/munti] | ||
== Cerinţa == | == Cerinţa == | ||
Se dă un număr natural '''n'''. Dacă numărul este norocos afișați cele '''n''' numere consecutive care adunate dau pătratul acestuia. | Se dă un număr natural '''n'''. Dacă numărul este norocos afișați cele '''n''' numere consecutive care adunate dau pătratul acestuia. |
Revision as of 11:45, 1 April 2023
Sursa: [1]
Cerinţa
Se dă un număr natural n. Dacă numărul este norocos afișați cele n numere consecutive care adunate dau pătratul acestuia.
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Daca n este norocos, programul va afișa pe ecran cele n numere consecutive care adunate dau n * n, separate prin spații. In caz contrar, programul va afișa mesajul NU ESTE NOROCOS.
Restricţii şi precizări
- 1 ⩽ n ⩽ 1000
Exemplul 1
- Intrare
- 7
- Ieșire
- 4 5 6 7 8 9 10
Exemplul 2
- Intrare
- 8
- Ieșire
- NU ESTE NOROCOS
Rezolvare
<syntaxhighlight lang="python" line>
- 1892
def validate_n(n):
if isinstance(n, int) and 1 <= n <= 1000: return True else: return False
def main():
n = int(input("n: ")) if not validate_n(n): print("Numărul introdus trebuie să fie între 1 și 1000.") return if n % 2 == 1: k = (n+1)//2 while n > 0: print(k, end=' ') k += 1 n -= 1 else: print("NU ESTE NOROCOS")
main()
</syntaxhighlight>
Explicatie rezolvare
Acest program primește un număr întreg n de la utilizator și verifică dacă numărul se încadrează între 1 și 1000. Dacă n este un număr impar, programul va imprima primele n numere naturale impare consecutive începând cu (n+1)//2. În caz contrar, programul va afișa NU ESTE NOROCOS. Funcția validate_n este folosită pentru a verifica dacă n-ul introdus este un număr întreg între 1 și 1000.