You are on page 1of 2

S2.

1.a) 20950
b) 20408 20608 40802
c)
#include <iostream>
using namespace std;
int main()
{
unsigned int n,m,c;
cin>>n;
m=0;
do
{
c=c%10; n=n/10;
if(c==0)
c=2;
else

if(c%2==0)
c=0;
m=m*10+c;
}while(n!=0)
cout<<m;
return 0;
}
d) cat timp n!=0 executa
.......
#

2. struct specie{
unsigned short int cod,nrExemplare,varsta[100];
}s[10];
3. for(unsigned int i=1;i<n;i++)
for(unsigned int j=1;j<m;j++)
a[i][j]=a[i-1][j]+a[i][j-1];

S3. 1. void(unsigned int n)


{
unsigned int a,b=1;
for(a=n;a>b;a--)
if(a*b==n)
{
cout<<"("<<a<<" "<<b<<")"<<" ";
b++;
}
}

2. #include <iostream>
#include <cstring>
using namespace std;
int main()
{
char text[100];
cin.get(text,100);
for(unsiged int i=0;i<strlen(text);i++)
{
if(text[i]=='-')
{
int j=i;
while(text[j]!=' ')
j++;
strcpy(text+i,text+j);
}
}
cout<<text;
return 0;
}

3.a)
#include <iostream>
#inlude <fstream>
using namespace std;
int main()
{
ifstream fin("bac.in");
unsigned int a[4]={0},x,i1=1,i2=2,i3=3;
while(fin>>x)
{
if(x%100==20)
{
if(x>a[i3])
{ a[i1]=a[i2]; a[i2]=a[i3]; a[i3]=x);}
else
if(x>a[i2])
{ a[i1]=a[i2]; a[i2]=x; }
else
if(x>a[i1])
a[i1]=x;
}
cout<<a[i1]<<" "<<a[i2]<<" "<<a[i3];
return 0;
}
b) construind un vector cu un spatiu de 3 numere avand initial toate
valoarea 0, putem compara elementele ce indeplinesc conditia cu elementele din
vector,inlocuindu le astfel incat ordinea sa fie mereu crescatoare;
acest algoritm este eficient deoarece elementele ce indeplinesc conditia
sunt direct ordonate astfel incat la final cele mai mari 3 numere sa fie afisate;

You might also like