2799 - Add One

De la Universitas MediaWiki

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

Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." Programul va afișa pe ecran numărul p, reprezentând valoarea lui n+1. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."

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  # Verificăm dacă input-ul este un număr valid între 1 și 10000.


def add(n):  
    p = (n ^ 1) | 1  # Calculăm valoarea lui n+1 folosind doar operatori pe biți.
    print("Valoarea lui n+1 =", p)  # Afișăm rezultatul.


if __name__ == "__main__":
    n = input("Introduceți valoarea lui n: ")  # Citim valoarea lui n de la tastatură.
    if validare(n):  # Verificăm dacă valoarea introdusă corespunde restricțiilor impuse.
        n = int(n)  # Convertim valoarea lui n într-un număr întreg.

        print("Datele introduse corespund restricțiilor impuse.")
        add(n)  # Apelăm funcția add cu valoarea lui n.

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