amoreto Posted March 13, 2018 at 11:21 PM Report #609770 Posted March 13, 2018 at 11:21 PM Citação Seja uma dada sequência (array) de números inteiros ordenada por ordem não decrescente. Pretende-se determinar se a sequência é uma sequência contínua de números. Implemente uma função inteira eficiente (utilize um algoritmo em lógica negativa) e eficaz que verifica se uma sequência com n elementos (sendo n > 1) define uma sequência contínua de números. Considere o resultado da função do tipo: 1 para verdadeiro e 0 para falso. int SequentialSequence (int array[], int n) { int i = 0, result; if (n < 2) result = 0; while(i < n) { if (array[i + 1] > array[i] && ((array[i + 1] - array[i]) == 1)) result = 1; else result = 0; Sum++; i++; } return result; } Como faço para que o result seja 1 depois de verificado todos os elementos? acho que é isso que o programa pede! E como faço para o código estar com lógica negativa? Abraços
HappyHippyHippo Posted March 14, 2018 at 10:27 AM Report #609773 Posted March 14, 2018 at 10:27 AM int sequencial(int array[], size_t length) { if (length < 2) return 0; for (int i = 1; i < length - 1; ++i) if (array[i] - array[i - 1] != 1) // validação pela negativa return 0; return 1; } IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
amoreto Posted March 14, 2018 at 09:28 PM Author Report #609783 Posted March 14, 2018 at 09:28 PM 10 horas atrás, HappyHippyHippo disse: int sequencial(int array[], size_t length) { if (length < 2) return 0; for (int i = 1; i < length - 1; ++i) if (array[i] - array[i - 1] != 1) // validação pela negativa return 0; return 1; } Obrigado! Abraço
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now