Informática, perguntado por karynascp81, 9 meses atrás

Buscar divisível por Programe uma função buscarDivisivelPor que recebe dois parâmetros, um array de números e um número de teste, retornando como resposta o primeiro número do array que seja divisível pelo número dado e diferente de zero. Caso nenhum número do array passe no teste, retorne o texto "Nenhum número válido encontrado!". Lembre de usar o operador “%” para testar se um número é divisível por outro. function buscarDivisivelPor(array, num) { // Escreva abaixo o seu código: }


karynascp81: fiz esse código porém não funcionou:
function buscarDivisivelPor(array, num)
{ for(var i = 0; i < array.length; i++){

if(array[i]% num != 0)

{
console.log("Nenhum número válido encontrado!")
}

}
joaquimnff: Eu acho que tem algum bug, pois se chamar array. o length não se auto completa.
joaquimnff: Não sei o erro ainda....
joaquimnff: function buscarDivisivelPor(array, num)
{
for(var i = 0; i < array.length; i++)
{
if((array[i] % num ) == 0 && array[i] != 0)
{
console.log(array[i])
return array[i]
}
else
{
var msg = "Nenhum número válido encontrado!"
return msg
}
}
}
joaquimnff: Resposta finalllllllllllll
joaquimnff: function buscarDivisivelPor(array, num)
{
for (var i = 0; i < array.length; i++)
{
if ((array[i] % num ) == 0 && array[i] != 0)
{
return array[i]
}
}
return resp = "Nenhum número válido encontrado!"
}
mathmendes: function buscarDivisivelPor(array, num){
// Escreva abaixo o seu código:
for( var i = 0 ; i< array.length; i++){
if(array[i]!=0 && array[i]%num==0){
return array[i]
break
}else if(i == array.length || num == 100){
return "Nenhum número válido encontrado!"
}
}
}
voxtone: for (var i = 0; i < array.length; i ++){
if (array[i] % num == 0 && array[i] != 0){
return array[i]
break
}
}
return "Nenhum número válido encontrado!"
carloscandele: muito obrigado, deu certo.

Soluções para a tarefa

Respondido por mathmendes
20

Resposta:

function buscarDivisivelPor(array, num){

 // Escreva abaixo o seu código:

  for( var i = 0 ; i< array.length; i++){

    if(array[i]!=0 && array[i]%num==0){

      return array[i]

      break

    }else if(i == array.length || num == 100){

      return "Nenhum número válido encontrado!"

    }

  }

}

Explicação

O num tem que ser diferente de 100.


elaiinesimionato: Obrigado. Ajudou muito
giselyanonima: eu não entendi o motivo do diferente de 100
downloadpcdesktop: nem eu
aceroacevedoangelica: function buscarDivisivelPor(array, num)
{
// Escreva abaixo o seu código:
for(var i = 0; i < array.length; i++) {
if(array[i] % num == 0 && array[i] != 0)
{
return array[i];
}
}
return "Nenhum número válido encontrado!";
}
guimontenegro23: Por que funcionou se o enunciado não diz nada sobre o num ser diferente de 100??
raianavoiolla: O meu nao esta funcionando com essa resposta
raianavoiolla: Nao esta funcionando com nenhuma das respostas ate agora compartilhadas
Respondido por danielboliveira
4

Resposta:

function buscarDivisivelPor(array, num) {

 for (var i = 0; i <= array.length; i++) {

   if ((array[i] % num == 0) && (array[i] != 0))

     return array[i];

   else if (i == array.length)

     return 'Nenhum número válido encontrado!';

 }

}

Explicação:

O if vai verificar se dentro dos indices do array, existe algum número com mod em na variavel num que retorne 0, pois sabemos que qualquer numero que seja divisivel por outro, resto é zero, depois ele vai verificar se existe dentro do array um numero que seja 0, se ambos as declarações forem verdadeiras, ele vai retornar o número do array que foi divísivel.

Em seguida se ele ver que terminou de varrer o array comparando a var i com o tamanho do indice e não houve nenhum número divisível, ele retorna 'Nenhum número válido encontrado'.

Espero que tenham entendido.

Perguntas interessantes