Foto de Camila M.
Camila há 5 anos
Enviada pelo
Site

Não sei por onde começar na resolução desses 2 exercícios,

1. Dadas n sequências de números inteiros, cada qual terminada por zero, calcular a soma dos números pares de cada sequência. 2. Dado um número inteiro positivo n , determinar todos os inteiros entre 1 e n que são comprimento de hipotenusa de um triângulo retângulo com catetos inteiros.

Matemática Algoritmos Geral
2 respostas
Professora Claudia S.
Respondeu há 5 anos
Contatar Claudia

) Indiquemos as operações de trocas com uma seta (?). Uma maneira seria: 7 = 2+5 ? 10 = 2+8 ? 16 = 12+4 ? 48. b) Como n = (n ? 1) + 1, é possível decrescer uma unidade de n, transformado-o em 1 ·(n ? 1) = n ? 1. Assim, uma boa estratégia seria criarmos um número maior que 2014 e depois usarmos a operação anterior para decrescermos uma unidade de cada vez até obtermos o número 2014. Para obter um número maior que 2014, faça: 7 = 2+5 ? 10 = 5+5 ? 25 = 12+13 ? 156 = 100+56 ? 5600. Basta agora decrescermos uma unidade 5600?2014 = 3586 vezes. Certamente existem maneiras mais rápidas que usam menos vezes a operação descrita. Uma delas seria: 7 = 2+5 ? 10 = 9+1 ? 9 = 4+5 ? 20 = 7+13 ? 91 = 38+53 ? 2014.

 

Um professor já respondeu

Envie você também uma dúvida grátis
Ver resposta

Envie sua pergunta

Professora Gleice M.
Identidade verificada
  • CPF verificado
  • E-mail verificado
Respondeu há 5 anos
Contatar Gleice

Questão 1)

De acordo com o enunciado, o usuário fornece n sequências de valores inteiros terminadas pelo valor zero informando também o valor n. Para cada sequência fornecida precisamos calcular a média dos seus elementos pares. Um primeiro esboço de algoritmo, portanto, poderia ser:

  1. leia n
  2. para i variando de 1 até n faça
    1. calcule a média dos pares de uma sequência terminada por zero

Em essência é isto que precisamos fazer. É necessário, contudo, detalhar um pouco mais a operação do cálculo da média dos pares que ainda é uma operação um tanto abstrata. Como calculamos esta média? Temos que calcular uma somatória de termos lidos aos quais aplicamos o filtro "é par", isto é, só nos interessam os elementos pares da sequência cujo término é sinalizado pelo valor zero e, uma vez calculado tal somatória, dividir o seu valor pelo número de termos acumulados (cuidado aqui para não efetuar uma divisão por zero!) e apresentar o resultado ao usuário.

Para o cálculo da somatória precisamos de uma variável (s) para acumular as somas sucessivas e um contador (k) para contabilizar os termos acumulados da somatória. Um termo a ser acumulado é o elemento da lista (elem) que passa pelo filtro "é par". O esboço de uma estratégia de cálculo da média desejada para uma particular sequência de valores, portanto, poderia ser:

     s <- 0

     k <- 0

           leia elem

        enquanto elem diferente de zero faça

          se elem é par
             então

          s <- s + elem

          k <- k + 1

         leia elem

             se k for igual a zero
         então

              apresente "sequencia sem elementos pares"

         senão

             apresente s/k

===========================================================================

Questão 2)

 

  leia n, cateto1, cateto2, hipotenusa;
  leia achou;

  apresente "Digite o comprimento maximo da hipotenusa

  para hipotenusa = 1; hipotenusa <= n; hipotenusa++
    achou = FALSO;
   
    para cateto1 = 1; cateto1 < hipotenusa && !achou; cateto1++
      cateto2 = cateto1; 
      enquanto cateto1 * cateto1 + cateto2 * cateto2 < hipotenusa * hipotenusa
	cateto2++;
      Se cateto1  * cateto1 + cateto2 * cateto2 == hipotenusa * hipotenusa
	
	achou = VERDADEIRO;

Espero ter ajudado. =)
Para qualquer dúvida sobre implementação, me contacta.

 

Um professor já respondeu

Envie você também uma dúvida grátis
Ver resposta

Aprenda do seu jeito, no seu ritmo

Minerva IA
do Profes
Respostas na hora
100% no WhatsApp
Envie suas dúvidas pelo App
Escaneie o QR Code para baixar