1) Sa se scrie un subprogram care sa returneze numarul de cifre ale unui numar natural n, dat ca parametru.
#include<iostream>2) Sa se scrie un subprogram care verifica daca un numar natural este prim.
#include<math.h>
using namespace std;
int cifre(int n)
{int i=0;
while(n)
{i++;
n=n/10;}
return i;
}
int main()
{int n;
cin>>n;
cout<<cifre(n);
}
#include<iostream>3) Sa se scrie un subprogram care verifica daca un numar natural este deosebit.
#include<math.h>
using namespace std;
char* prim(int n)
{int d,ok=1;
for(d=2;d<=n/2;d++)
if(n%d==0)
ok=0;
if(ok)
return "DA";
else return "NU";
}
int main()
{int n;
cin>>n;
cout<<prim(n);
}
#include<iostream>4) Sa se scrie un subprogram care returneaza cmmdc a doua numere intregi a si b.
using namespace std;
int deosebit(int n)
{int i,s=0;
for(i=1;i<=n/2;i++)
if(n%i==0) s=s+i;
if(s==n) return 1;
else return 0;
}
int main ()
{int n;
cin>>n;
if(deosebit(n)==1) cout<<"DA";
else cout<<"NU";
return 0;
}
#include<iostream>5) Sa se scrie un subprogram care sa afiseze toti divizorii comuni a doua numere naturale a si b.
#include<math.h>
using namespace std;
int cmmdc(int a, int b)
{int c;
while(b)
{c=a%b;
a=b;
b=c;
}
return a;
}
int main()
{int a,b;
cin>>a>>b;
cout<<cmmdc(a,b);
}
#include<iostream>
#include<math.h>
using namespace std;
void divizori(int a, int b)
{int d,m;
m=a;
if(b<a)m=b;
for(d=1;d<=m;d++)
if(a%d==0 && b%d==0)
cout<<d<<";";
}
int main()
{int a,b;
cin>>a>>b;
divizori(a,b);
}