Boa tarde, gostaria de uma ajudar, pois não estou conseguindo arruma o código.
Simule no Dev C++ a execução do programa abaixo destacando a sua saída. Depois de executado
transformar o programa em uma função que resolve o problema, passando a sequência de números
por parâmetro.
#include <stdio.h
int main()
{
int n, inic, fim, i, aux, para, a[100];
printf("Digite n: ");
scanf("%d", &n);
printf("n = %d\n", n);
printf("Digite uma sequencia de %d numeros.\n", n);
for (i = 0; i < n; i++) {
scanf("%d", &a);
printf("%d ", a);
}
printf("\n");
inic = 0;
fim = n - 1;
aux = a[inic];
while (inic < fim) {
para = 0;
while ((inic < fim) && !para) {
if (a[fim] <= aux)
para = 1;
else
fim = fim - 1;
}
if (para) {
a[inic] = a[fim];
inic = inic + 1;
para = 0;
while ((inic < fim) && !para) {
if (a[inic] <= aux)
inic = inic + 1;
else
para = 1;
}
if (para) {
a[fim] = a[inic];
fim = fim - 1;
}
}
for (i = 0; i < n; i++)
printf("%d ", a);
printf("\n");
}
a[inic] = aux;
for (i = 0; i < n; i++)
printf("%d ", a);
printf("\n");
return 0;
}
Dados:
10 3 6 12 13 7 15