47 23 12 17 30
Intrăm în for. i=1. (1<5=>i<n).
Continuăm for-ul (s-a respectat condiția). p=i=1. (1>0=>p>0 și
23<47=>X[p]<X[p-1]). Intrăm în while (s-au respectat condițiile).
aux=X[p]=X[1]=23. X[p]=X[1]=X[p-1]=X[1-1]=X[0]=47. X[p-1]=X[1-1]=X[0]=aux=23. Postdecrementăm
p. (0=0=>p≤0 și răspuns nedeterminat). Ieșim din while (răspuns negativ).
23 47 12 17 30
Postincrementăm i. (2<5=>i<n). Continuăm
for-ul (s-a respectat condiția). p=i=2. (2>0=>p>0 și
12<47=>X[p]<X[p-1]). Intrăm în while (s-au respectat condițiile).
aux=X[p]=X[2]=12. X[p]=X[2]=X[p-1]=X[2-1]=X[1]=47. X[p-1]=X[2-1]=X[1]=aux=12. Postdecrementăm
p. (1>0=>p>0 și 12<23=>X[p]<X[p-1]). Continuăm while-ul (s-au
respectat condițiile). aux=X[p]=X[1]=12. X[p]=X[1]=X[p-1]=X[1-1]=X[0]=23. X[p-1]=X[1-1]=X[0]=aux=12.
Postdecrementăm p. (0=0=>p≤0 și răspuns nedeterminat). Ieșim din while
(răspuns negativ).
12 23 47 17 30
Postincrementăm i. (3<5=>i<n).
Continuăm for-ul (s-a respectat condiția). p=i=3. (3>0=>p>0 și
17<47=>X[p]<X[p-1]). Intrăm în while (s-au respectat condițiile).
aux=X[p]=X[3]=17. X[p]=X[3]=X[p-1]=X[3-1]=X[2]=47. X[p-1]=X[3-1]=X[2]=aux=17. Postdecrementăm
p. (2>0=>p>0 și 17<23=>X[p]<X[p-1]). Continuăm while-ul (s-au
respectat condițiile). aux=X[p]=X[2]=17. X[p]=X[2]=X[p-1]=X[2-1]=X[1]=23. X[p-1]=X[2-1]=X[1]=aux=17.
Postdecrementăm p. (1>0=>p>0 și 17>12=>X[p]≥X[p-1]). Ieșim din
while (nu s-a respectat a doua condiție).
12 17 23 47 30
Postincrementăm i. (4<5=>i<n).
Continuăm for-ul (s-a respectat condiția). p=i=4. (4>0=>p>0 și
30<47=>X[p]<X[p-1]). Intrăm în while (s-au respectat condițiile).
aux=X[p]=X[4]=30. X[p]=X[4]=X[p-1]=X[4-1]=X[3]=47. X[p-1]=X[4-1]=X[3]=aux=30. Postdecrementăm
p. (3>0=>p>0 și 30>23=>X[p]≥X[p-1]). Ieșim din while (nu s-a
respectat a doua condiție).
12 17 23 30 47
Postincrementăm i. (5=5=>i≥n). Ieșim
din for (nu s-a respectat condiția).
#include
<iostream>
using namespace std;
int main()
{
int n,X[100];
cin>>n;
for (int i=0;i<n;++i)
cin>>X[i];
for (int i = 1 ; i < n ; i ++)
{
int p=i;
while (p>0&&a[p]<a[p-1])
{
int aux=a[p];
a[p]=a[p-1];
a[p-1]=aux;
p--;
}
}
for (int i=0;i<n;++i)
cout<<X[i]<<' ';
}
Comentarii
Trimiteți un comentariu