Sa se afiseze toate numerele naturale prime/palindrom/perfecte/patrate perfecte cuprinse intre
doua valori p si q.
Răspunsuri la întrebare
#include <iostream>
using namespace std;
int main()
{
int p, q, i, j, prim, inv=0, x, divizori, patrat_perfect;
cout<<"p="; cin>>p;
cout<<"q="; cin>>q;
cout<<"nr. prime:";
for(i=p;i<=q;i++){
prim=1;
for(j=2;j<=i/2;j++)
if(i%j==0)
prim=0;
if(prim) cout<<i<<' ';
}
cout<<'\n';
cout<<"nr. palindrom:";
for(i=p;i<=q;i++)
{
x=i; inv=0;
while(x){
inv=inv*10+x%10;
x=x/10;
}
if(inv==i)
cout<<i<<' ';
}
cout<<'\n';
cout<<"nr. perfecte:";
for(i=p;i<=q;i++)
{
divizori=0;
for(j=1;j<=i/2;j++)
if(i%j==0)
divizori=divizori+j;
if(divizori==i)
cout<<i<<' ';
}
cout<<'\n';
cout<<"patrate perfecte:";
for(i=p;i<=q;i++){
patrat_perfect=0;
for(j=1;j<=i;j++)
if(j*j==i)
patrat_perfect=1;
if(patrat_perfect)
cout<<i<<' ';
}
return 0;
}