Boa noite! Posso estar equivocado, mas observando a resolução do exercício 4 percebi uma fala na logica da função: A variável menor inicializada com o valor 0 só é alterada porque o array dado possui um valor negativo [5, 37, 18, 59, 12, -5]. Caso o array seja composto apenas por números positivos, maiores que zero, essa variável não sofrerá alteração já que não atente a condicional (arr[i] < menor).