• Matéria: Informática
  • Autor: kennedyp69p7z
  • Perguntado 7 anos atrás

Essa segue a mesma lógica da anterior, grato pela ajuda.

Anexos:

Respostas

respondido por: jvsilvictorox7rfj
1


SEGUE O CÓDIGO EQUIVALENTE EM C:


#include <stdio.h>

int main()
{
   
    int A[] = {2,4,1,4,6,12,21,6,10,12,23,3};
    int i , j , k , x;
   
    int n = (sizeof(A)/sizeof(A[0])); //Calcula quantidade de valores em A
 
    for(i = 1 ; i < n ; i++)
    {
        k = i;
        x = A[i];
       
        for(j = i+1 ; j <= n; j++)
        {
            if(A[j] < x)
            {
                k = j;
                x = A[j];
            }
        }
       
        A[k] = A[i];
        A[i] = x;
    }
 
  
    return 0;
}





kennedyp69p7z: ah certo, obrigado.
jvsilvictorox7rfj: A é um vetor, então tem que ir imprimindo posição por posição
jvsilvictorox7rfj: A menos que fosse um vetor de 'char', aí vc pode usar printf("%s",A). Mas sendo de inteiros, não dá.
kennedyp69p7z: obtive esse resultado :
A = [ 1 ] [ 3 ] [ 4 ] [ 4 ] [ 6 ] [ 6 ] [ 10 ] [ 12 ] [ 12 ] [ 12 ] [ 1 ] [ 23 ] [ 12 ] [ 16 ] [ 24 ] [ 16 ] [ 6422300 ] [ 3723264 ] [ 6422368 ] [ 4199048 ] [ 21 ] [ 11275496 ]
jvsilvictorox7rfj: printf("A = ");
for(i = 0 ; i < n ; i++)
{
printf(" [ %d ]", A[i] );
}
jvsilvictorox7rfj: Corrigi um detalhezinho... testa agora. Aqui mostrou certinho
jvsilvictorox7rfj: A = [ 2 ] [ 1 ] [ 3 ] [ 4 ] [ 4 ] [ 6 ] [ 6 ] [ 10 ] [ 12 ] [ 12 ] [ 21 ] [ 23 ]
kennedyp69p7z: vc usa o mingw tbm ? estou tendo diferentes resultados
A = [ 2 ] [ 1 ] [ 3 ] [ 4 ] [ 4 ] [ 6 ] [ 6 ] [ 10 ] [ 12 ] [ 12 ] [ 12 ] [ 1 ] [ 23 ] [ 12 ] [ 16 ] [ 24 ] [ 16 ] [ 6422300 ] [ 3993600 ] [ 6422368 ] [ 4199048 ] [ 21 ] [ 11144424 ]
kennedyp69p7z: acabei de perceber que era o meu compilador que estava dando erro.
jvsilvictorox7rfj: Eu tô usando um Compilador Online, pq não mexo com C já faz uns 6 anos kkk
Perguntas similares