Ominide 1952 punti

Numeri difettivi, lievemente difettivi, perfetti e abbondanti


Questo programma in C++ permette di determinare, dato un numero intero, se esso si tratta di un numero difettivo, lievemente difettivo, perfetto o abbondante.
Un numero
[math]N[/math]
si dice difettivo se la somma dei suoi divisori escluso
[math]N[/math]
è minore di
[math]N[/math]
; lievemente difettivo se la somma dei suoi divisori escluso
[math]N[/math]
è uguale a
[math]N-1[/math]
; perfetto se la somma dei suoi divisori è uguale a
[math]N[/math]
; oppure abbondante se la somma dei suoi divisori (sempre escluso
[math]N[/math]
) risulta essere maggiore di N.
Testo del codice

#include<iostream>
#include<cstdlib>
#include<math.h>

using namespace std;

int main(){
int N;
int A;
int B;
int K;
int S;
int T;
cout <<"Inserisci un numero intero."<<endl;
cin >> N;
T = N;
S = 0;
K = 1;
while(K < N){
if(N % K == 0){
S = K+S;
K = K+1;
}else{
K = K+1;
}
}
A = N-1;
if(S < A){
cout <<T<<" e' un numero difettivo!"<<endl;
}else if(S == A){
cout <<T<<" e' un numero lievemente difettivo!"<<endl;
}else if(S == N){
cout <<T<<" e' un numero perfetto!"<<endl;
}else{
cout <<T<<" e' un numero abbondante!"<<endl;
}
system("PAUSE");
}

Hai bisogno di aiuto in Informatica?
Trova il tuo insegnante su Skuola.net | Ripetizioni
Potrebbe Interessarti
Registrati via email