Sunteți pe pagina 1din 9

Probleme Info

1. Se consider un numr natural x, mai mic decat 255. S se construiasc un vector


n care se memoreaz succesiunea de 0 i 1 care nseamn reprezentarea n baz
2 a numrului dat. Utiliznd vectorul construit, s se afieze numrul x in baza 2.
#include<iostream>
using namespace std;
int main()
{
int v[100],n,i=1,d,x;
cout<<"n=";cin>>n;
while(n!=0)
{
v[i]=n%2;
n=n/2;
i++;x=i-1;
}
for(i=x;i>=1;i--)
{
cout<<v[i];
}
cout<<endl<<"Ionut e cel mai tare!";
}

2. Fie un vector x de numere ntregi. S se formeze un vector y de numere ntregi, n


care y[i] s fie restul mparirii lui x[i] la suma cifrelor lui x[i].

#include<iostream>
using namespace std;
int main()
{
int x[100],y[100],i,n,s,d;
cout<<"n=";cin>>n;
for(i=1;i<=n;i++)
{
cout<<"x["<<i<<"]=";
cin>>x[i];
}
for(i=1;i<=n;i++)
{
d=x[i];s=0;
while(d!=0)
{
s=s+d%10;
d=d/10;
}
y[i]=x[i]%s;
cout<<"y["<<i<<"]="<<y[i]<<endl;
}
cout<<endl<<"Ionut e cel mai tare!";
}
3. S se scrie un program care citete un numr ntreg n i apoi afieaz pe ecran:
1

12
123
..
1 2 3 .. n
1 2 3 .. n
..
123
12
1
#include<iostream>
using namespace std;
int main()
{
int n,i,x;
cout<<"n=";cin>>n;
for(i=1;i<=n;i++)
{
x=0;
while(x!=i)
{
x++;cout<<x<<" ";
}
cout<<endl;
}
for(i=n;i>=1;i--)
{
x=0;
while(x!=i)
{
x++;cout<<x<<" ";
}
cout<<endl;
}
cout<<endl<<"Ionut e cel mai tare!";
}

4. Dintr-un vector de n elemente, s se elimine elementul aflat n poziia k (k citit de


la tastatur) i s se afieze vectorul rezultat dup eliminare.
#include<iostream>
using namespace std;
int main()
{
int n,i,v[100],k,x;
cout<<"n=";cin>>n;

cout<<"k=";cin>>k;
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
}
for(i=1;i<=n;i++)
{
if(i==k)
{
x=i;
for(i=x;i<=n-1;i++)
{
v[i]=v[i+1];
}
n--;
}
}
for(i=1;i<=n;i++)
{
cout<<v[i]<<endl;
}
cout<<endl<<"Ionut e cel mai tare!";
}

5. Se consider un ir de n elemente. S se insereze ntre primele dou elemente


consecutive media lor aritmetic i s se afieze vectorul rezultat
#include<iostream>
using namespace std;
int main()
{
int n,i,v[100],x;
cout<<"n=";cin>>n;
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];

}
for(i=n+1;i>=3;i--)
{
v[i]=v[i-1];
}
v[2]=(v[1]+v[3])/2;
n++;
for(i=1;i<=n;i++)
{
cout<<v[i]<<endl;
}
cout<<endl<<"Ionut e cel mai tare!";
}

6. S se construiasc un vector n care se memoreaz toate numerele de patru cifre


care au cel puin un zero i suma tuturor cifrelor egal cu 17. S se afieze
vectorul construit.
#include<iostream>
using namespace std;
int main()
{
int v[1000],j=1000,x=9999,s,i=1,n,d,k;
while(j!=x)
{
d=j;s=0;k=0;
while(d!=0)
{
s=s+d%10;
if(d%10==0)
k++;
d=d/10;
}

if((k>=1)&&(s==17))
{
v[i]=j;
i++;
n=i-1;
}
j++;
}
for(i=1;i<=n;i++)
cout<<"v["<<i<<"]="<<v[i]<<endl;
cout<<endl<<"Ionut e cel mai tare!";
}

7. S se scrie un program care afieaz cte numere pozitive de rang impar exist
ntr-un vector cu n numere ntregi introduse de la tastatur.
#include<iostream>
using namespace std;
int main()
{
int v[100],n,i,s=0;
cout<<"n=";cin>>n;
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
if((v[i]>=0)&&(v[i]%2==1))
s++;
}
cout<<"In vector exista "<<s<<" numere pozitive de rang impar.";
cout<<endl<<"Ionut e cel mai tare!";
}

8. S se memoreze ntr-un vector cele mai mici ase numere naturale de cinci cifre
care au suma cifrelor mai mare dect 19, apoi s se afieze vectorul obinut, suma
i produsul elementelor vectorului.
#include<iostream>
using namespace std;
int main()
{
int v[100],j=10000,x=99999,s,i=1,n=0,d,sum=0,prod=1;
while(n!=6)
{
d=j;s=0;
while(d!=0)
{
s=s+d%10;
d=d/10;
}
if(s>19)
{
v[i]=j;
i++;
n++;
sum=sum+j;
prod=prod*j;
}
j++;
}
for(i=1;i<=n;i++)
cout<<"v["<<i<<"]="<<v[i]<<endl;
cout<<"Suma este:"<<sum<<endl;
cout<<"Produsul este:"<<prod<<endl;

cout<<endl<<"Ionut e cel mai tare!";


}

9. S se scrie un program care construiete i afieaz doi vectori: unul care conine
primele n numere naturale pare i unul care conine primele n numere naturale
impare.
#include<iostream>
using namespace std;
int main()
{
int n,i,v[100],x,a=0,b=0,j;
cout<<"n=";cin>>n;
x=1;cout<<"Primele "<<n<<" nr pare sunt:"<<endl;i=1;
for(x=1;x<=3*n;x++)
{
if(x%2==0)
{
v[i]=x;
i++;
}
}
for(i=1;i<=n;i++)
cout<<"v["<<i<<"]="<<v[i]<<endl;
x=1;cout<<"Primele "<<n<<" nr impare sunt:"<<endl;j=1;
for(x=1;x<=3*n;x++)
{
if(x%2==1)
{
v[j]=x;
j++;
}
}
for(j=1;j<=n;j++)
cout<<"v["<<j<<"]="<<v[j]<<endl;
cout<<endl<<"Ionut e cel mai tare!";
}

10. Se consider un vector de n elemente, numere ntregi. S se construiasc un alt


vector care s conin toate elementele strict pozitive ale vectorului dat. S se
afieze vectorul construit.
#include<iostream>
using namespace std;
int main()
{
int n,i,v[100],j=1;
cout<<"n=";cin>>n;
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
}
for(i=1;i<=n;i++)
{
if(v[i]>=0)
{
v[j]=v[i];
j++;
}
}
n=j-1;
cout<<"Numerele pozitive sunt:"<<endl;
for(j=1;j<=n;j++)
{
cout<<"v["<<j<<"]="<<v[j]<<endl;
}
cout<<endl<<"Ionut e cel mai tare!";
}