2799 - Add One: Diferență între versiuni

De la Universitas MediaWiki
Linia 32: Linia 32:
<syntaxhighlight lang="python" line="1" start="1">
<syntaxhighlight lang="python" line="1" start="1">
def validare(n):
def validare(n):
     return n.isdigit() and 1 <= int(n) <= 32
     return n.isdigit() and 1 <= int(n) <= 10000





Versiunea de la data 22 aprilie 2023 15:58

Cerință

Se citește un număr n. Să se calculeze n+1, folosind doar operatori pe biți.

Date de intrare

Programul citește de la tastatură numărul n.

Date de ieșire

Programul va afișa pe ecran numărul p, reprezentând valoarea lui n+1.

Restricții de precizări

  • 1 ⩽ n ⩽ 10000

Exemplul 1

Intrare
5
Ieșire
Datele introduse corespund restricțiilor impuse.
6

Exemplul 2

Intrare
2
Ieșire
Datele introduse corespund restricțiilor impuse.
3

Rezolvare ver. 1

def validare(n):
    return n.isdigit() and 1 <= int(n) <= 10000


def add(n):  # calculăm n+1 folosind doar operatori pe biți
    p = (n ^ 1) | 1
    print("Valoare lui n+1 =", p)


if __name__ == "__main__":
    n = input("Introduceti valoarea lui n: ")
    if validare(n):
        n = int(n)

        print("Datele introduse corespund restricțiilor impuse.")
        add(n)

    else:
        print("Datele introduse nu corespund restricțiilor impuse.")