Ir para conteúdo
BigCouve

Problema com algoritmo

Recommended Posts

Bom dia pessoal,

 

Me deparei com uma questão do curso a distância que faço e não consigo entender a lógica por trás dela, alguém poderia me passar a colinha? :sweat_smile:, anexarei o que fiz +/- mas não cheguei onde queria

Ruby_Problem.PNG

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por LarissaL
      O programa é:
      Seu trabalho é fazer um programa que, dada o
      horário (hora e minuto) pelo usuário, mostre se
      o relógio está feliz ou não.
    • Por lucascsaalvine
      Boa tarde pessoal, 
       
      Estou com um problema que é: 
      depois de criar a nuvem de palavras (cloud_tag) esta gerando com todos os artigos, pronomes (lixo) que estao no texto
      constructor(props) {. super(props);. . let data_words = [];. . for(let i in props.words) {. let item = props.words[i];. data_words.push({"text": item[0],"value": item[1]*4}). }. . this.state = {. data: data_words. }. }. Alguem pode me ajudar com alguma solucao para isso? 
      Eu tentei algumas coisas com o `splice()`, mas nao deu muito certo nao.
       
      Obrigado....
       
       
       
       
    • Por bertelliedgard
      Estou estudando Python há algum tempo através de um livro que propõe o seguinte exercício:
       
      Alguém pode me ajudar com este exercício?
    • Por Maroto
      Olá, pessoas.
       
      To com um problema nesse exercício. Esse programa deve receber os itens de uma receita digitados por usuário e salvá-los dentro de um vetor, sempre verificando se o item digitado já não consta. Caso conste, deve exibir um alert( ) informando ao usuário que dado item já foi computado anteriormente, senão, deve gravar o item no vetor e repetir esse ciclo até a condição do primeiro for ser saciada.
       
      O problema é que quando o usuário digitar um valor que já existe no vetor ingredientes [ ] e o alert( ) do segundo for é exibido, após fechá-lo, o programa não dá continuidade, ou seja, no meu entender, deveria atribuir o valor false para variável verifica, com isso sair do segundo for, em seguida, ler a terceira condição:
       
      //Condicional decrementa a variável contador1, caso o item digitado seja repetido e após a primeira iteração. if (contador1 != 1 && verifica == false) { contador1--; verifica = true; }  
      Abaixo deixo o código completo.
       
      <script> //Vetor que guarda os itens. var ingredientes = []; //Variável que guarda quantos itens serão adicionados no vetor ingredientes. var quantidade = parseInt(prompt("Quantos ingredientes você vai adicionar?")); //Variável de verificação. var verifica = true; //Laço para guardar os itens s no vetor. for (var contador1 = 1; contador1 <= quantidade; contador1++){ var item = prompt("Informe o "+contador1+"º item: "); /*Laço que verifica se o item digitado já existe ou não no vetor ingredientes. Caso exista, exibe alerta e muda o valor da variável de verificação para false.*/ for (var contador2 = 0; contador2 < ingredientes.length || verifica != true; contador2++){ if (item == ingredientes[contador2]) { alert("Item já adicionado!"); verifica = false; } } //Condicional que quarda o item digitado na primeira iteração. if (contador1 == 1 && verifica == true){ ingredientes.push(item); } //Condicional que guarda o item após a primeira iteração e caso ele não seja repetido. if (contador1 != 1 && verifica == true){ ingredientes.push(item); } //Condicional decrementa a variável contador1, caso o item digitado seja repetido e após a primeira iteração. if (contador1 != 1 && verifica == false) { contador1--; verifica = true; } } console.log(ingredientes); </script>  
       
    • Por Maroto
      Olá, pessoas.
       
      Criei um programa com fins de estudo no visualg, cuja finalidade é preencher uma matriz com valores aleatórios e, em seguida, conferir e armazenar numa segunda atriz se o valores gerados são pares ou ímpares. Todavia o programa fica dando um erro ("Access violation at address xxxx in module" visualg30.exe). Não sei se eu que estou errando na lógica, se meu pc está quebrado ou se é um bug do visualg. 

      Abaixo deixo meu código para quem puder me ajudar. Obrigado :)
       
      Var // Seção de Declarações das variáveis matriz1: vetor [0..2, 0..2] de inteiro matriz2: vetor [0..2, 0..2] de caractere // Procedimento que gera valores inteiros aleatorios para preencher a matriz1. procedimento preencheMatriz var // Variaveis contadoras i1, i2: inteiro inicio para i1 de 0 ate 1 passo 1 faca para i2 de 0 ate 2 passo 1 faca aleatorio on leia (matriz1[i1,i2]) limpatela aleatorio off fimpara fimpara // Imprimindo a matriz na tela para i1 de 0 ate 1 passo 1 faca para i2 de 0 ate 2 passo 1 faca escreva (matriz1[i1,i2]) fimpara escreval ("") fimpara fimprocedimento // Procedimento que verifica se os valores das posições da matriz1 são pares // ou ímpares. procedimento verificaParImpar var i1, i2: inteiro inicio para i1 de 0 ate 1 passo 1 faca para i2 de 0 ate 2 passo 1 faca se (matriz1[i1, i2] MOD 2=0) entao matriz2[i1,i2] <- "par" escreva(matriz2[i1,i2], " ") senao matriz2[i1,i2] <- "ímpar" escreva(matriz2[i1,i2], " ") fimse fimpara escreval(" ") fimpara fimprocedimento Inicio // Seção de Comandos, procedimento, funções, operadores, etc... preencheMatriz verificaParImpar Fimalgoritmo  
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.