maximul unui vector

Se citeste un vector cu n componente numere intregi.Se cere sa se afiseze valoarea maxima folosind metoda divide et impera #include<iostream.h>int v[100],n; int max(int i,int j){int a,b;if(i==j) return v[i];else { a=max(i,(i+j)/2); b=max((i+j)/2+1,j); if(a>b) return a; else return b; }} void main(){cout<<“n=”;cin>>n;for(int i=0;i<n;i++){ cout<<“v[“<<i<<“]=”; cin>>v[i]; }cout<<“maximul este:”<<max(0,n-1);} {joscommentenable}

cautare binara

Cautare binara Se citeste un vector cu n componente numere intregi,ordonate crescator si o valoare intreaga x.Sa se decida daca x se gaseste sau nu printre componentele vectorului #include<iostream.h> int v[100],n,x; void caut(int i,int j) { if(x==v[(i+j)/2]) cout<<“gasit”<<” “<<“indice “<<(i+j)/2; else if(i<j) if(x<v[(i+j)/2]) caut(i,(i+j)/2 -1); else caut((i+j)/2+1,j); else cout<<“nu s-a gasit”; } void main() { … Read more

vector cu elemente distincte

Se citeste un vector cu n componente numere intregi. Sa se verifice daca toate elementele sale sunt elemente distincte. #include<iostream> int v[10],n,i,j,gasit; using namespace std; int main() { cout<<“n=”;cin>>n; for(i=0;i<n;i++) { cout<<“v[“<<i<<“]=”; cin>>v[i]; } gasit=0; for(i=0;i<n && !gasit;i++) for(j=i+1;j<n && !gasit;j++) if(v[i]==v[j]) gasit=1; if(gasit) cout<<“elementele nu sunt distincte”; else cout<<“elementele sunt distincte”; return 0; }

maximul unui vector

Se citeste un vector cu componente numere intregi.Se cere sa se afiseze cel mai mare element (maximul unui vector). #include <iostream> int v[10],n,i,max; using namespace std; int main() { cout<<“n=”;cin>>n; for(i=0;i<n;i++) { cout<<“v[“<<i<<“]=”; cin>>v[i]; } max=v[0]; for(i=1;i<n;i++) if(v[i]>max) max=v[i]; cout<<“max=”<<max; return 0; }

cmmdc

Să se scrie un program care să determine cel mai mare divizor comun a două numere naturale. Numerele se citesc de la tastatură. CEL MAI MARE DIVIZOR COMUN – ALGORITMUL LUI EUCLID (metoda impartirilor succesive) #include <iostream> using namespace std; int main(){ int a,b,r;cout<<“a=”;cin>>a;cout<<“b=”;cin>>b;r=a%b;while(r){a=b;b=r;r=a%b;}cout<<“cmmdc: “<<b; return 0;} CEL MAI MARE DIVIZOR COMUN – ALGORITMUL LUI NICOMAHUS … Read more

descompunea in factori primi

Realizati un program care descompune in factori primi un numar n citit de la tastatura #include <iostream> using namespace std; int main() { int n,d=2,p; cout<<“n=”;cin>>n; while(n>1) { p=0; while(n%d==0) { p=p+1; n=n/d; } if(p) cout<<d<<” la puterea “<<p<<endl; d=d+1; } return 0; }  

numarul de aparitii a unei cifre intr-un numar

Scrieti un program care afiseaza numarul de aparitii a unei cifre x intr-un numar n;de ex daca citim n=2232 si x=2 se afiseaza numarul 3. #include <iostream> using namespace std; int main() { int n,n1,nr,x; cout<<“n=”;cin>>n; cout<<“x=”;cin>>x; nr=0; n1=n; do { if(n1%10==x) nr++; n1=n1/10; }while(n1); cout<<“cifra “<<x<<” apare de “<<nr<<” ori”; return 0; }  

Trecerea unui numar din baza 10 in baza b

Sa se scrie un program tcare realizeaza trecerea unui numar din baza 10 in baza b, unde b se citeste de la tastatura #include <iostream> using namespace std; int main() { long n,n1,b,aux,nr; aux=nr=0; cout<<“n=”;cin>>n; cout<<“b=”;cin>>b; n1=n; do { aux=aux*10+n1%b; n1=n1/b; } while(n1!=0); cout<<aux<<endl;; do { nr=nr*10+aux%10; aux=aux/10; } while(aux); cout<<“numarul “<<n<<” in baza “<<b<<” este: … Read more

Suma cifrelor unui numar

Calculati suma cifrelor unui numar x citit de la tastatura #include <iostream> using namespace std; int main() { int s; long d,x; cout<<“x=”;cin>>x; d=x; s=0; while(d) { s=s+d%10; d=d/10; } cout<<“s=”<<s; return 0; }