Probleme C++
Probleme C++
{
int n, d, x, nr,i,k=0;
fin>>n;
for(i=1;i<=n;i++)
{
fin
>>x;
d=2;
nr=0;
while(x>1 && nr<=2)
{ while(x%d==0 && nr<=2) { nr++;
x=x/d;
}
d++;
}
if(nr==2) k++;
}
fout<<k;
fin.close();
fout.close();
return 0;
}
Gnom
sort.
#include<fstream>
using namespace std;
ifstream fin("date.in");
ofstream fout("date.out");
int main()
{
int
i,n,a[100];
fin>>n;
for(i=1;i<=n;i++) fin>>a[i];
for(i=1;i<n;i++)
if(a[i]>a[i+1])
{ int aux=a[i];
a[i]=a[i+1];
a[i+1]=aux;
if(i>1)i=i
2;
}
for(i=1;i<=n;i++) fout<<a[i]<<" "
;
fin.close();
fout.close();
return 0;
}
Cautarea binara.
#include<fstream>
using namespace std;
ifstream fin("dateo.in");
ofstream fout("dateo.out");
int main()
{
int x,i,n,a[100],s,d,m,gasit=0;
fin>>n;
for(i=1;i<=n
;i++) fin>>a[i];
fin>>x;
s=1; d=n;
while(s<=d && !gasit)
{
m=(s+d)/2;
if(a[m]==x) gasit=1;
else if(a[m]<x) s=m+1;
else d=m
1;
}
if(gasit) fout<<m;
else fout<<"Nu se gaseste";
fin.close();
fout.close();
return 0;
}
Bubble
sort.
#include<fstream>
using namespace std;
ifstream fin("date.in");
ofstream fout("date.out");
int main()
{
int i,ok,n,a[100];
fin>>n;
for(i=1;i<=n;i++) fin>>a[i];
do { ok=1;
for(i=1;i<n;i++)
if(a[i]>a[i+1])
{ int aux=a[i];
a[i]=a[i+1];
a[i+1]=aux;
ok=0;
}
}
while(!ok);
for(i=1;i<=n;i++) fout<<a[i]<<" ";
fin.close();
fout.close();
return 0;
}
a[j]=aux;
}
for(i=1;i<=n;i++) fout<<a[i]<<" ";
fin.close();
fout.close();
return 0;
}
Sa se elimine dintr
un numar natural n toate cifrele pare.
#include<iostream>
using namespace std;
int main()
{
int n,r;
cout<<"n="; cin>>n;
r=0;
while(n>0)
{
if(n%10%2!=0) r=r*10+n%10;
n=n/10;
}
while(r>0)
{
n=n*10+r%10;
r=r/10;
}
cout<<n;
}
#include<iostream>
using namespace std;
int main()
{
int n,r;
r=0;
cout<<"n="; cin>>n;
while(n>0)
{
r=r*10+n%10;
n=n/10;
}
cout
<<"rasturnatul este "<<r;
return 0;
}
r=0;
while(n>0)
{
r=r*10+n%10;
n=n/10;
}
r=r/10;
while(r>0)
{
n=n*10+r%10;
r=r/10;
}
cout<<n;
return 0;
}
cin>>n;
for(x=2;x<=n/2;x++)
{
p=1;
for(d=2;d<=x/2;d++)
if(x%d==0) p=0;
y=n
x;
for(d=2;d<=y/2;d++)
if(y%d==0) p=0;
if(p) { cout<<x<<" "<<y<<endl;
ok=1;
}
}
if(!ok) cout<<"imposibil";
return 0;
}
Un num
ar se numeste perfect daca este egal cu suma divizorilor sai mai mici
decat el, de exemplu 6=1+2+3. Sa se afiseze toate numerele perfecte
mai mici sau egale cu un numar n citit de la tastatura.
#include<iostream>
using namespace std;
int main()
{
int
n,s,d,x;
cin>>n;
for(x=1;x<=n;x++)
{
s=0;
for(d=1;d<x;d++)
if(x%d==0) s=s+d;
if(s==x) cout<<x<<" ";
}
return 0;
}
Sa se afiseze numer
ele mai mici sau egale cu n care au proprietatea sa atat ele cat si
rasturnatul lor sunt numere prime.
Exemplu: 13 este prim si la fel 31.
#include<iostream>
using namespace std;
int main()
{
int n, x, y,p,d,r;
cout<<"n="; cin>>n;
for(x=2;x<=n;x++
)
{
p=1;
for(d=2;d<=x/2;d++)
if(x%d==0) p=0;
if(p==1)
{
r=0;
y=x;
while(y>0)
{ r=r*10+y%10;
y=y/10;
}
for(d=2;d<=r/2;d++)
if(r%d==0) p=0;
if(p==1) cout<<x<<" ";
}
}
return 0;
}
#include<io
stream>
using namespace std;
int main()
{
int a,b,c,min;
cout<<"a="; cin>>a;
cout<<"b="; cin>>b;
cout<<"c="; cin>>c;
while(a!=b || a!=c || b!=c)
{
min=a;
if(b<min) min=b;
if(c<min) min=c;
if(a!=min) a=a
min;
if(b!=min) b=b
min;
if(c!=m
in) c=c
min;
}
cout<<a;
return 0;
}
k++;
}
x++;
}
return 0;
}
Se citeste un numar natoral n. Afisati cifrele distincte ale lui n (in orice
ordine). Exemplu: Cifrele distincte ale lui 234542 sunt 2, 3, 4 si 5.
#include<iostream>
using na
mespace std;
int main()
{
int n,r,c;
cout<<"n="; cin>>n;
while(n>0)
{
c=n%10;
cout<<c;
r=0;
while(n>0)
{
if(n%10!=c) r=r*10+n%10;
n=n/10;
}
n=r;
}
return 0;
}
sau
#include<iostream>
using namespace std;
int main()
{
int n,c,g,
m;
cin>>n;
for(c=0;c<=9;c++)
{
m=n;
g=0;
while(m>0)
{
if(m%10==c) g=1;
m=m/10;
}
if(g) cout<<c<<" ";
}
return 0;
}
}
if(p) cout<<i<<" ";
}
return 0;
}
cout<<n/p<<" "<<n%p;
return 0;
}
}
}
cout<<cmax<<" "<<m;
return 0;
}
r=r*10+minn%10;
minn=minn/10;
}
while(r>0)
{
maxx=maxx*10+r%10;
r=r/10;
}
cout<<maxx;
}
Se citeste un numar natural n.Afisati cel mai mic palindrom mai mare
decat n. Exemplu: daca n=1232 se va afisa 1331.
#include<iostream>
using namespace std;
int main()
{
int n,x,r,y;
cin>>n;
x=n+1;
do
{
y=x;
r=0;
while(y>0)
{ r=r*10+y%10;
y=y/10;
}
if(x!=r)
x++;
}
while(x!=r);
cout<<x;
return 0;
}
{
si=si+x
%10;
x=x/10;
}
y=j;
sj=0;
while(y>0)
{
sj=sj+y%10;
y=y/10;
}
if(si==sj) cout<<i<<" "<<j<<endl;
}
return 0;
}
1==0 || x
1==1) p1=0;
else for(d=2;d<=(x
1)/2;d++)
if((x
1)%d==0) p1=0;
p2=1;
for(d=2;d<=(x+1)/2;d++)
if((x+1)%d==0) p2=0;
if(p1==1 && p2==1) cout<<x<<" ";
}
return 0;
}
int main()
{
int n,i,x,s,k=0;
cout<<"n="; cin>>n;
for(i=1;i<=n;i++)
{
cout<
<"x="; cin>>x;
s=0;
while(x)
{
s=s+x%10;
x=x/10;
}
if(s==i) k++;
}
cout<<k;
return 0;
}