joi, 9 ianuarie 2014

Funcia care afiseaza nr de cifre ale unui numar

#include <iostream>
using namespace std;
int s ( int n)
{
  int  nr=0 ;
    while(n)
    {
        nr=nr+1;
        n=n/10;
    }
    return nr;
}
int main()
{
     double n;
    cout<<"n="; cin>>n;
    cout<<"Numarul citit are" <<s(n)<<" cifre" <<endl;
    cout<<sizeof(int)<<endl;
    cout<<sizeof(n)<<endl;
    return 0;
}
 

Se considera un numar natural in baza 10. Se cere sa se scrie o functie care sa afiseze reprezentarea numarului dat in baza 2.Exemplu: Pentru n=10 reprezentarea numarului in baza 2 este 1010

using namespace std;
#include <iostream>
int n;
void baza2(int n)
{
int i=1,j,x[30],cifre;
 while(n!=0)
 {
 x[i]=n%2;
 n=n/2;
 i++;
 }
 cifre=i-1;
cout<<"Reprezentarea numarului in baza 2 este: ";
for(i=cifre;i>=1;i--) cout<<x[i]<<" ";
cout<<endl;
}
int main()

{



cout<<"Dati n = ";cin>>n;
baza2(n);
}






Să se determine cel mai mare divizor comun (c.m.m.d.c.)a doua numere întregi citite de la tastatura.

#include<iostream > 
using namespace std; 
int cmmdc(int a,int b) 
if(a==b) return a; 
else if(a>b) return cmmdc(a-b,b); 
else return cmmdc(a,b-a); 
int main() 
int x,y; 
cout<<"x=";cin>>x; 
cout<<"y=";cin>>y; 
cout<<"cmmdc este: "<<cmmdc(x,y); 
 }
 

Sa se afiseze toate numerele prime mai mici sau egale cu n .

#include <iostream > 
#include <math.h> 
using namespace std; 
int n; 
void numere_prime(int n) 
 int i,j,prim; 
 cout<<"Numerele prime mai mici sau egale decat "<<n<<" sunt "<<endl; 
 for(i=2;i<=n;i++) //parcurgem toate valorile pana la n 
 { 
 prim=1; // presupunem ca nu exista divizori 
 for(j=2;j<=i/2;j++) // ex: daca i=10 , j i-a toate valorile pana la i 
 if(i%j==0) prim=0; // inseamna ca are divizori si nu este prim 
 if(prim==1) cout<<i<<" "; //daca PRIM nu si-a schimbat valoarea inseamna ca NU ARE DIVIZORI 
 } 
int main() 
cout<<"Dati n = ";cin>>n; 
numere_prime(n); 
 
 

Sa se scrie cate o functie care sa determine: - cel mai mare divizor comun a doua numere intregi date ca parametri. - cel mai mic multiplu comun a doua numere intregi date ca parametri

#include <iostream >
using namespace std;
int cmmdc(int a, int b)
{
int r;
r=a%b;
while(r!=0)
{
a=b;
b=r;
r=a%b;
}
return b;
}
int cmmmc(int a, int b)
{
return(a*b/cmmdc(a,b));
}

int main(void)
{
int x,y,d,m;
cout<<"Dati primul numar ";cin>>x;
cout<<"Dati al doilea numar ";cin>>y;
d=cmmdc(x,y);
cout<<"C.m.m.d.c este "<<d<<endl;
m=cmmmc(x,y);
cout<<"C.m.m.m.c este "<<m<<endl;
}