👤

Se citesc n numere naturale. Afisati cele mai mari 2numere citite ce sunt numere perfecte

Răspuns :

Am considerat ca numar perfect e acel numar care e egal cu suma divizorilor lui, in afara de el insusi, deci sper ca la asta te-ai referit :).
In C++
:
#include <iostream>

using namespace std;

int main()
{
    int n, max1=-1, max2=-1;
    cin >> n;
    for (int i=0; i<n; i++)
    {
        int x; cin >> x;
        int S=0, OK=0;
        for (int j=1; j<=x/2; j++)
            if (x%j==0) S+=j;
        if (S==x) OK=1;
        if (OK&&x>max1)
        {
            max2 = max1;
            max1= x;
        }
        else if (OK && x>max2)
            max2=x;
    }
    cout << max1 << " " << max2;
    return 0;
}

In pseudocod:
intreg n, max1<- -1, max2<- -1
citeste n
pentru i<-1, n executa:
   intreg x, S<-0, OK<-0
   citeste x
   pentru j<-1,x/2 executa:
      daca x%i=0 atunci: S <- S+i
   daca S=x atunci: OK <- 1
   daca OK=1 && x>max1 atunci:
      max2 <- max1
      max1 <- x
   altfel daca OK=1 && x>max2
      max2 <- x
scrie max1, " ", max2


Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile disponibile v-au fost utile și inspiraționale. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, suntem aici pentru a vă ajuta. Ne face plăcere să vă revedem și vă invităm să adăugați site-ul nostru la favorite pentru acces rapid!


Ez Studiers: Alte intrebari