👤

16. Două numere întregi x şi y sunt prietene, dacă şi numai dacă suma divizorilor numărului x este egală cu suma divizorilor numărului y. Scrieți un program care afişează toate numerele prietene din intervalul [a,b]. Exemplu: dacă a=10 şi b=25 numerele prietene sunt (10, 17), (14, 15), (14,23), (15, 23), (16,25). Dar in limbaj pseudocod.Va rog ​urgenttttttt

Răspuns :

Răspuns:

Funcție sumă_divizori(n):

Suma <- 1 // Adăugăm 1 pentru că 1 este întotdeauna divizorul lui n

Pentru fiecare divizor d de la 2 până la √n:

Dacă n este divizibil cu d:

Suma <- Suma + d

Altfel dacă n / d este diferit de d: // Pentru a evita dublarea divizorilor

Suma <- Suma + n / d

Întoarce Suma

Funcție numere_prietene(a, b):

Pentru fiecare x de la a până la b:

y <- suma_divizori(x) - x // Calculăm suma divizorilor lui x și scădem x pentru a obține y

Dacă y > x și suma_divizori(y) - y == x:

Afișează x și y ca numere prietene