TOPIC

Estou com problemas. Runtime Erro

Ramon Silva asked 1 year ago

Algem pode me ajudar? Pois estou tentando por horas solucionar onde está o erro. Porém eu consigo executar normalmente, mas quando coloco na URI não dar certo. Aparece uma mensagem de "Runtime erro". Aqui está meu codigo

#include <stdio.h>
#include <stdlib.h>
#define TAM 10^5

void comparaPar(int* vetor[], int tamanho);
void comparaImpar(int* vetor[], int tamanho);

int main(){

    int n, num, i, cont1=0, cont2=0, vetor[TAM], vetor2[TAM];

    scanf("%d", &n);

    for(i=0; i < n; i++){
        scanf("%d", &num);

        if(num % 2 == 0){
            vetor[cont1] = num;
            cont1++;
            comparaPar(&vetor, cont1);
        }else{
            vetor2[cont2] = num;
            cont2++;
            comparaImpar(&vetor2, cont2);
        }
    }

    for(i=0; i < cont2; i++){
        vetor[cont1] = vetor2[i];
        cont1++;
    }

    printf("\n\n");
    for(i=0; i < cont1; i++){
        printf("%d\n", vetor[i]);
    }
    return 0;
}

void comparaPar(int* vetor[], int tamanho){
    int aux, i, j;
    for(i=0; i < tamanho; i++){
        for(j=i; j < tamanho; j++){
            if(vetor[i] > vetor[j]){
                aux = vetor[i];
                vetor[i] = vetor[j];
                vetor[j] = aux;
            }
        }
    }
}

void comparaImpar(int* vetor[], int tamanho){
    int aux, i, j;
    for(i=0; i < tamanho; i++){
        for(j=i; j < tamanho; j++){
            if(vetor[i] < vetor[j]){
                aux = vetor[i];
                vetor[i] = vetor[j];
                vetor[j] = aux;
            }
        }
    }
}

Remember not post solutions. Your post may be reviewed by our moderators.

  • feodorv replied 1 year ago

    #define TAM 10^5

    Hm, can you print this value on the screen? Is it 100000 or not? Why not simply

    #define TAM 100000