diff --git a/vector/odd-even.c b/vector/odd-even.c new file mode 100644 index 0000000..154f386 --- /dev/null +++ b/vector/odd-even.c @@ -0,0 +1,67 @@ +#include +#include + +void printArray(int array[], int size) +{ + for (int i = 0; i < size; i++) + { + printf("%d, ", array[i]); + } +} + +int main() +{ + int quant = 0; + printf("Quantidade de números para armazenar:"); + if (scanf("%d", &quant) != 1) + { + return EXIT_FAILURE; + } + + int numbers[quant]; + for (int i = 0; i < quant; i++) + { + printf("Digite um número:"); + if (scanf("%d", &numbers[i]) != 1) + { + return EXIT_FAILURE; + } + } + + printArray(numbers, quant); + + int qOdd = 0, qEven = 0; + for (int i = 0; i < quant; i++) + { + if (numbers[i] % 2 == 0) + { + qEven++; + } + else + { + qOdd++; + } + } + + int odds[qOdd], evens[qEven]; + for (int i = 0, io = 0, ie = 0; i < quant; i++) + { + if (numbers[i] % 2 == 0) + { + evens[ie] = numbers[i]; + ie++; + } + else + { + odds[io] = numbers[i]; + io++; + } + } + + printf("\nNúmeros pares:"); + printArray(evens, qEven); + printf("\nNúmeros Impares:"); + printArray(odds, qOdd); + + return EXIT_SUCCESS; +}