Răspuns :
/* Sa se afiseze toate numerele mai mici sau egale decat n ce au suma cifrelor numar prim.*/
#include <iostream.h>
int sumCif(int n) {
int s=0;
while (n) {
s+=n%10;
n/=10;
}
return s;
}
int estePrim(int n) {
int ok=1, i=2;
if (n<2) return 0;
else if (n==2) return 1;
else while (ok && (i<=n/2)) {
if (n%i==0) ok=0;
i++;
}
return ok;
}
int main() {
int n;
cout<<"n=";
cin>>n;
if (n>=2) for (int i=2; i<=n; i++) {
int s=sumCif(i);
if (estePrim(s)) cout<<" "<<i; }
else cout<<"Dati un numar mai mare decat 2";
return 0;}
#include <iostream.h>
int sumCif(int n) {
int s=0;
while (n) {
s+=n%10;
n/=10;
}
return s;
}
int estePrim(int n) {
int ok=1, i=2;
if (n<2) return 0;
else if (n==2) return 1;
else while (ok && (i<=n/2)) {
if (n%i==0) ok=0;
i++;
}
return ok;
}
int main() {
int n;
cout<<"n=";
cin>>n;
if (n>=2) for (int i=2; i<=n; i++) {
int s=sumCif(i);
if (estePrim(s)) cout<<" "<<i; }
else cout<<"Dati un numar mai mare decat 2";
return 0;}
#include<iostream>
using namespace std;
int prim(int n)
{
if(n == 0 || n == 1) return 0;
for(int d=2; d*d<=n; d++)
if(n % d == 0) return 0;
return 1;
}
int s(int n)
{
int sm = 0;
while(n) sm += n % 10, n /= 10;
return sm;
}
int main()
{
int n;
cin >> n;
for(int i=2; i<=n; i++)
prim(s(i)) ? cout << i << ' ' : true;
return 0;
}
using namespace std;
int prim(int n)
{
if(n == 0 || n == 1) return 0;
for(int d=2; d*d<=n; d++)
if(n % d == 0) return 0;
return 1;
}
int s(int n)
{
int sm = 0;
while(n) sm += n % 10, n /= 10;
return sm;
}
int main()
{
int n;
cin >> n;
for(int i=2; i<=n; i++)
prim(s(i)) ? cout << i << ' ' : true;
return 0;
}
Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de ajutor, nu ezitați să ne contactați. Vă așteptăm cu drag data viitoare și vă încurajăm să ne salvați în lista de favorite!