Probleme C++ 1
Probleme C++ 1
#include<iostream.h>
int n,s,u;
main ()
{
cout<<"n=";
cin>>n;
while(n!=0)
{
u=n%10;
n=n/u;
s=s+u; //
}
}
prime intre ele
#include<iostream.h>
int m,n;
main()
{
cout<<"m=";
cin>>m;
cout<<"n=";
cin>>n;
while(m!=n)
if(m>n)
m=m-n;
else
n=n-m;
if(m==1)
cout<<"numere prime intre ele";
else
cout<<"cmmdc este"<<m;
}
produsul cifrelor unui numar
#include<iostream.h>
int n,p=1,u;
main ()
{
cout<<"n=";
cin>>n;
while(n!=0)
{
u=n%10;
n=n/u;
p=p*u; //
}
}
Toti divizorii unui numar
#include<iostream.h>
int nr,d;
main()
{
cout<<"nr";
cin>>nr;
for(d=1;d<=nr/2;d++)
if(nr%d==0)
cout<<d<<" ";
cout<<nr;
}
i++;
}
if(i>0)
cout<<d<<"^"<<i<<endl;
d++;
}
}
Sirul lui Fibonacci al n-lea nr
#include<iostream.h>
int a,b,c,n,i;
main()
{
cout<<"n";
cin>>n;
a=b=c=1;
for(i=3;i<=n;i++)
{
c=a+b;
a=b;
b=c;
}
cout<<"termenul este"<<c;
}
Cautarea binara
#include<iostream.h>
int a[100],c,n,i,j,st,dr,x,gasit,mij,t;
main()
{
cout<<"x";
cin>>x;
cin>>n;
for(i=0;i<n;i++)
{
cout<<"a["<<i<<"]";
cin>>a[i];
}
for(st=0,dr=n-1,gasit=0;!gasit&&st<=dr; )
{
mij=(st+dr)/2;
if(a[mij]==x)
gasit=1;
else
if(a[mij]<x)
st=mij+1;
else
dr=mij-1;
}
if(gasit==1)
cout<<"x se gaseste pe poz"<<mij+1;
}
Stergerea maximului
for(i=0;i<n;i++)
if(a[i]>max)
max=a[i];
cout<<max;
for(i=0;i<n;i++)
if(a[i]==max)
{
for(j=i;j<n-1;j++)
a[j]=a[j+1];
n--;
i--;
}
for(i=0;i<n;i++)
cout<<a[i]<<" ";
sortare
#include<iostream.h>
int a[100],c,n,i,j,t;
main()
{
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a["<<i<<"]";
cin>>a[i];
}
for(i=1;i<=n;i++)
cout<<a[i];
for (i=0; i<n-1; i++)
for (j=i+1; j<n; j++)
{
if(a[i]>a[j])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
for(i=1;i<=n;i++)
cout<<a[i];
}
}
Inser medie
#include<iostream.h>
int c,n,i,cc;
float med,a[10];
main()
{
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a[i]";
cin>>a[i];
}
c=n;
n=n+(n-1);
cc=n;
for(i=c;i>=1;i--)
{
a[cc]=a[i];
cc=cc-2;
}
for(i=1;i<n;i=i+2)
{
med=float(a[i]+a[i+2])/2;
a[i+1]=med;
}
for(i=1;i<=n;i++)
cout<<a[i]<<endl;
}
//interschimbati elementele vectorului primul cu ulti.. apoi
stergeti toate val =x citit de la tast
#include<iostream.h>
int a[100],c,n,aux,i,x,j,mij;
main()
{
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a["<<i<<"]";
cin>>a[i];
}
for(i=1;i<=n;i++)
cout<<a[i];
cout<<endl;
c=n;
mij=n/2;
for(i=1;(i<=n)&&(c>=n/2);i++,c--)
{
aux=a[i];
a[i]=a[c];
a[c]=aux;
}
for(i=1;i<=n;i++)
cout<<a[i];
cout<<"x";
cin>>x;
for(i=1;i<=n;i++)
if(a[i]==x)
{
for(j=i;j<=n-1;j++)
a[j]=a[j+1];
n--;
i--;
}
for(i=1;i<=n;i++)
cout<<a[i]<<" ";
}
Pal
#include<iostream.h>
int c,n,i,cc,j=1,med,s,a[10],b[100],o;
main()
{
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a[i]";
cin>>a[i];
}
for(i=1;i<=n;i++)
{
c=a[i];
while(c)
{
o=o*10+c%10;
c=c/10;
}
if(a[i]==o)
{
b[j]=a[i];
j++;
}
}
cc=j;
for(j=1;j<cc;j++)
{
s=s+b[j];
}
med=s/cc;
cout<<med;
}
Creasta
#include<iostream.h>
int main()
{
int a[100],i,n,ok;
cout<<"n= ";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
ok=1;
i=1;
while(a[i]<a[i+1]&&i<n)
i++;
if(i==n)
ok=0;
else
{
while(a[i]>a[i+1]&&i<n)
i++;
if(i<n)
ok=0;
}
if(ok==1)
cout<<"creasta";
else
cout<<"nu este creasta";
}
Permutare spre dr
#include<iostream.h>
using namespace std;
int v[1000],i,n,j,t;
main()
{
cout<<"n=";
cin>>n;
for(i=0;i<n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
cout<<v[j]<<" ";
cout<<endl;
t=v[0];
for(j=0;j<=n-2;j++)
v[j]=v[j+1];
v[n-1]=t;
}
}
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
}
cout<<"Pozitia numarului de sters: ";
cin>>p;
for(i=p;i<n;i++)
v[i]=v[i+1];
n--;
cout<<"Vectorul fara elementul de pe
pozitia"<<p<<":"<<endl;
for(i=1;i<=n;i++)
cout<<v[i]<<" ";
cout<<endl;
}
Platouri
#include<iostream.h>
int a[100],n,i,inlant,cif,u,c,p,plat,cresc,desc,ok;
main()
{
cout<<"n=";
cin>>n;
for(i=0;i<n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
for(i=0;i<n;i++)
if(a[i]==a[i+1])
{
plat++;
ok=1;
for(;ok==1;i++)
if(a[i]!=a[i+1])
ok=0;
}
cout<<"nr platouri "<<plat+1;
}
Trepte
#include<iostream.h>
int a[100],n,i,tre,ok;
main()
{
cout<<"n="; //Determinati numarul de trepte. O treapta
este o succesiune de unul sau mai multe elemente egale.
cin>>n;
for(i=0;i<n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
tre=1;
for(i=0;i<n;i++)
{
tre++;
ok=1;
while(ok==1)
{
if(a[i]==a[i+1])
{
ok=1;
tre--;
}
else
ok=0;
i++;
}
}
cout<<"trepte"<<tre;
pal
#include<iostream.h>
int c,n,i,cc,j=0,med,s,a[10],b[100],o;
main()
{
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a[i]";
cin>>a[i];
}
for(i=1,c=0;i<=n;i++,o=0)
{
c=a[i];
while(c!=0)
{
o=o*10+c%10;
c=c/10;
}
if(a[i]==o)
{
//cout<<"pal"<<a[i]<<endl;
s=s+a[i];
j++;
}
}
//cout<<"s="<<s<<endl;
med=s/j;
cout<<"med"<<med;
}
Cmmdc
#include<iostream.h>
int n,i,a[10],m,p,ok;
main()
{
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a[i]";
cin>>a[i];
}
m=a[1];
for(i=1;i<=n;i++)
{
p=a[i];
while(m!=p)
if(m>p)
m=m-p;
else
p=p-m;
}
cout<<"cmmdc"<<m;
}
Cmmmc:
#include<iostream.h>
int n,i,a[10],m,p,ok,pr=1,cmmmc;
main()
{
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a[i]";
cin>>a[i];
}
m=a[1];
for(i=1;i<=n;i++)
{
pr=pr*a[i];
p=a[i];
while(m!=p)
if(m>p)
m=m-p;
else
p=p-m;
}
cout<<"cmmdc"<<m<<endl;
cmmmc=pr/m;
cout<<"cmmmc"<<cmmmc;
}
Impare
#include<iostream.h>
int a[100],i,n,x,ok,o,c,j;
main()
{
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a[i]";
cin>>a[i];
}
ok=0;
for(i=1;i<=n&&ok!=1;i++)
{
x=a[i];
while(x!=0)
{
o=o*10+x%10;
x=x/10;
}
if(a[i]==o)
ok=1;
}
if(ok==1)
cout<<"exista palindrom";
for(i=1;i<=n;i++)
{
if(a[i]%2!=0)
{
for(j=i;j<=n-1;j++)
a[j]=a[j+1];
n--;
i--;
}
}
for(i=1;i<=n;i++)
cout<<a[i];
}
Inserare 1 daca 0
#include<iostream.h>
int n,i,a[10],m,p,ok,pr=1,cmmmc,j;
main()
{
cin>>n;
for(i=0;i<n;i++)
{
cout<<"a["<<i<<"]";
cin>>a[i];
}
for(i=0;i<n;i++)
{
if(a[i]==0)
{
for(j=n;j>i;j--)
a[j]=a[j-1];
a[i+1]=1;
n++;
}
}
for(i=0;i<n;i++)
cout<<a[i];
}
Sortarea met bulelor
#include<iostream.h>
int a[10],i,n,aux,ok;
main()
{
cin>>n;
for(i=0;i<n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
do
{
ok=1;
for(i=0;i<n-1;i++)
if(a[i]>a[i+1])
{
aux=a[i];
a[i]=a[i+1];
a[i+1]=aux;
ok=0;
}
}
while(ok==0);
for(i=0;i<n;i++)
cout<<a[i];
}
Sortare prin selectie
#include<iostream.h>
int a[10],i,n,aux,pmin,min,j;
main()
{
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
for(i=1;i<=n;i++)
{//cautam min de la poz i in colo
min=a[i];
pmin=i;
for(j=i+1;j<=n;j++)
if(min>a[j])
{
min=a[j];
pmin=j;
}
aux=a[i];
a[i]=a[pmin];
a[pmin]=aux;
}
for(i=1;i<=n;i++)
cout<<a[i];
}
Ineterclasare
#include<iostream.h>
int a[10],b[10],c[10],i,j,m,n,k,kk;
main()
{
cout<<"n=";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
cout<<"m=";
cin>>m;
for(j=1;j<=m;j++)
{
cout<<"b["<<j<<"]=";
cin>>b[j];
}
for(k=1,i=1,j=1;i<=n&&j<=m;k++)
{
if(a[i]<b[j])
{
c[k]=a[i];
i++;
}
else
{
c[k]=b[j];
j++;
}
}
if(i<=n)
while(i<=n)
{
c[k]=a[i];
i++;
k++;
}
else
while(j<=m)
{
c[k]=b[j];
j++;
k++;
}
kk=k-1;
for(k=1;k<=kk;k++)
cout<<c[k]<<" ";
}
Elem commune
#include<iostream.h>
int a[10],b[10],c[10],i,j,m,n,k,kk;
main()
{
cout<<"n=";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
cout<<"m=";
cin>>m;
for(j=1;j<=m;j++)
{
cout<<"b["<<j<<"]=";
cin>>b[j];
}
for(k=1,i=1,j=1;i<=n&&j<=m;)
{
if(a[i]==b[j]&&c[k-1]!=a[i])
{
c[k]=a[i];
i++;
j++;
k++;
}
else
if(a[i]<=b[i])
i++;
else
j++;
}
kk=k-1;
for(k=1;k<=kk;k++)
cout<<c[k]<<" ";
}
if(a[i]!=b[j])
{
c[k]=a[i];
k++;
i++;
j++;
}
else
if(a[i]<b[j]&&c[k]!=a[i])
while(a[i]<b[j]&&c[k-1]!=a[i])
{
c[k]=a[i];
k++;
i++;
}
else
while(a[i]>b[j])
{
c[k]=b[j];
k++;
j++;
}
}
#include<iostream.h>
int a[10],b[10],c[10],n,m,i,j,k,kk;
main()
{
cout<<"nr elemente= ";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
cout<<"m";
cin>>m;
for(i=1;i<=m;i++)
{
cout<<"b["<<i<<"]=";
cin>>b[i];
}
for(j=k=i=1;i<=n&&j<=m;)
{
if(a[i]<b[j])
while(a[i]<b[j])
{
k++;
c[k]=a[i];
i++;
}
i--;
if(a[i]>b[j])
while(a[i]>b[j])
{
c[k]=b[j];
j++;
k++;
}
j--;
}
for(;i<=n;i++)
{
c[k]=a[i];
k++;
}
for(;j<=m;j++)
{
c[k]=b[j];
k++;
}
kk=k-1;
for(k=1;k<=kk;k++)
cout<<c[k]<<endl;
}