Questão 28: crescente
Voltar
Defina uma função int crescente (int a [], int i, int j)
que testa se os elementos do vetor a
, entre as posições i
e j
(inclusive) estão ordenados por ordem crescente. A função deve retornar 1 ou 0 consoante o vetor esteja ou não ordenado.
Exemplo
> int a[7] = {1,2,3,4,3,2,1};
> crescente(a, 0, 3)
(int) 1
> crescente(a, 0, 4)
(int) 0
Resolução
int crescente (int a[], int i, int j) {
int k, cresc = 1;
for(k = i; k < j && cresc; k++)
if(a[k + 1] < a[k])
cresc = 0;
return cresc;
}