1.
p1: maxi=1; afisam 7; n=7;
I=2; 2<=7? DA
2<7? DA
maxi=2; afisam *2
p2: i=3; 3<=7? DA
4<2? NU
Afisam 4
P3: i=4; 4<=7? DA
52<4? NU
Afisam 52
P4: i=5; 5<=7? DA
34<52? DA
Maxi=3; afisam *34
P5: i=6; 6<=7? DA
45<34? NU
Afisam 45
P6: i=7; 7<=7? DA
3<45? DA
Maxi=4; Afisam *3
Afisam 4;
a) 7*2452*3445*34
b) 2 11 14 21 34 39 50
2. d) 4
Aplicam algoritmul cautarii binare, si prima data verifica numarul din mijloc, adica 73, acesta
este mai mic decat 98 deci merge in partea dreapta. Verifica numarul 95 , care este mai mic decat 98
deci merge tot in dreapta. Verifica 96 care este tot mai mic si apoi il gaseste pe 98. Deci pana sa il
gaseasca pe 98 verifica 3 numere, acesta fiind al patrulea.
3. vectorul initial:
634126479
1. 3 6 4 1 2 6 4 7 9
2. 3 4 6 1 2 6 4 7 9
3. 3 4 1 6 2 6 4 7 9
4. 3 4 1 2 6 6 4 7 9
5. 3 4 1 2 6 4 6 7 9
6. 3 1 4 2 6 4 6 7 9
7. 3 1 2 4 6 4 6 7 9
8. 3 1 2 4 4 6 6 7 9
9. 1 3 2 4 4 6 6 7 9
10. 1 2 3 4 4 6 6 7 9
Deci sunt necesare 10 interschimbari.
4. A=(5,12,17,21,22,23,34,45) - in ordine crescatoare
B=(1,3,8,12,13,39) - in ordine crescatoare
C=(1,3,5,8,12,12,13,17,21,22,23,34,39,45)
Pentru a-l gasi pe al 7-lea element ( adica 13) se compara al 3-lea element din A (adica 17) cu al 5-lea
element din B (adica 13) .
5. p1: i=1; 1<=7? DA
a[1]=10-1+2= 11
p2: i=2; 2<=7? DA
a[2]=10-2+2=10
p3: i=3; 3<=7? DA
a[3]=10-3+2=9
p4: i=4; 4<=7? DA
a[4]=10-4+2=8
p5: i=5; 5<=7? DA
a[5]=10-5+2=7
p6: i=6; 6<=7? DA
a[6]=10-6+2=6
p7: i=7; 7<=7? DA
a[7]=10-7+2=5
p8: i=8; 8<=7? NU
i=1; 1<=7? DA
1<4? DA
a[1] = 11 + 5 = 16
p9: i=2; 2<=7? DA
2<4? DA
a[2]= 10 + 6 = 16
p10: i=3; 3<=7? DA
3<4? DA
a[3] = 9 + 7 = 16
p11: i=4; 4<=7? DA
4<4? NU
a[4]= 8 -8 = 0
p12: i=5; 5<=7? DA
5<4? NU
a[5]= 7- 16 = -9
p13: i=6; 6<=7? DA
6<4? NU
a[6] = 6 – 16 = -10
p14: i=7; 7<=7? DA
7<4? NU
a[7] = 5 – 16= -11
p15: i=8; 8<=7? NU
Valoarea lui a[6] este -10.
6. p1: i=1; 1<=7? DA
c=11
a[1]=17
a[7]=11;
p2: i=2; 2<=7? DA
c=12
a[2]=16
a[6]=12;
p3: i=3; 3<=7? DA
c=13
a[3]=15
a[5]=13;
p4: i=4; 4<=7? DA
c=14
a[4]=14
a[4]=14;
p5: i=5; 5<=7? DA
c=13
a[5]=15
a[3]=13;
p6: i=6; 6<=7? DA
c=12
a[6]= 16
a[2]=12;
p7: i=7; 1<=7? DA
c=11
a[7]=17
a[1]=11;
Vectorul dupa executarea instructiunilor este : 11 12 13 14 15 16 17
7. #include <iostream>
using namespace std;
int main()
{
int n, v[101], i, d, ok, a=0;
cin>>n;
for(i=1; i<=n; i++)
{
cin>>v[i];
d=2; ok=1;
while(d<=v[i]/2&&ok==1)
{
if(v[i]%d==0)
ok=0;
d++;
}
if(ok==1)
cout<<i<<" ", a=1;
}
if(a==0)
cout<<"NU EXISTA";
}
8. #include <iostream>
using namespace std;
int main()
{
int a[101], b[101], c[201], i, n, m, k, j;
cin>>n;
for(i=1; i<=n; i++)
cin>>a[i];
cin>>m;
for(i=1; i<=m; i++)
cin>>b[i];
for(i=1; i<n; i++)
for(j=i+1; j<=n; j++)
if(a[i]<a[j])
swap(a[i],a[j]);
i=1; j=1; k=1;
while(i<=n&&j<=m)
if(a[i]>b[j])
c[k++]=a[i++];
else
c[k++]=b[j++];
while(i<=n)
c[k++]=a[i++];
while(j<=m)
c[k++]=b[j++];
for(i=1; i<=m+n; i++)
cout<<c[i]<<' ';
}
9. #include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream f("[Link]");
int x, maxi=0, fr[1000001]={0}, v[1000001], i=0, j=0;
while(f>>x)
{
i++;
fr[x%10]++;
if(maxi<fr[x%10])
maxi=fr[x%10], v[1]=i, j=1;
if(maxi==fr[x%10])
v[++j]=i;
}
x=j;
for(i=0; i<=9; i++)
if(fr[i]==maxi)
for(j=1; j<=x; j++)
cout<<v[j]<<' ';
}