Ir ao conteúdo

Posts recomendados

Postado

1 - Faça um algoritmo que o usuário entre com vários números inteiros e positivos e imprima o produto dos números ímpares e a soma dos números pares.

 

o primeiro SE e o SENAO  estão dando errado.!!

algoritmo "semnome"

var
    numero,numero2:inteiro
    somaPar,armazenaPar:inteiro
    produtoImpar:inteiro
inicio
        enquanto verdadeiro faca
             escreva("Digite um número:")
             leia(numero)
             
             SE numero = 0 ENTAO
                escreva("Até a próxima!!")
                interrompa
             FIMSE
             
             escreva("Digite outro número:")
             leia(numero2)
             SE (numero mod 2 = 0) e (numero2 mod 2 != 0) ENTAO
                   escreval("Você digitou um número par e um número ímpar")
             SENAO (numero mod 2 != 0) e (numero2 mod 2 = 0) ENTAO
                   escreval("Você digitou um número ímpar um número par")
             fimse
             SE (numero mod 2 = 0) e (numero2 mod 2 = 0) ENTAO
                  escreval("Soma de Pares:")
                  somaPar <- numero + numero2
                  escreval(numero,"+",numero2,"=",somaPar)
             SENAO
                  escreval("Multiplicação de números ímpares")
                  produtoImpar <- numero * numero2
                  escreval(numero,"X",numero2," =",produtoImpar)
             FIMSE
        fimenquanto
fimalgoritmo

 

  • Membro VIP
Postado
6 horas atrás, dereguejhoson disse:

o primeiro SE e o SENAO  estão dando errado.!!

 

O que está dando errado? Seria bom citar... :)

 

Vamos lá:


Rodei aqui e deu o seguinte erro:

image.png

 

O erro apresentado não foi muito claro, mas parece que algo estranho rolou ANTES de chegar no entao... Oh! Lá... não existe o operador != no VisualG, se estiver se referindo a "diferente", use <>. Testa aí!

 

 

ADENDO:

 

Sobre o enunciado:

6 horas atrás, dereguejhoson disse:

1 - Faça um algoritmo que o usuário entre com vários números inteiros e positivos e imprima o produto dos números ímpares e a soma dos números pares.

 

De onde você tirou que tem que tratar com "pares de números"? Reveja a interpretação do enunciado. É ele que define o que deve ser feito.

 

 

No aguardo.

 

  • Curtir 1
Postado

@Simon Viegas Quando eu digitar 2 numeros par ele vai somar , e quando eu digitar 2 numeros impares ele vai multiplicar , e quando ele aparecer um numero par e um numero impar , ele só deveria aparecer a mensagem : esse é um número par e um numero par, e o loop vai continuar até eu digitar 0.

 

Agora mostra o erro que não acha o "FIMSE".

 

algoritmo "semnome"
var
    numero,numero2:inteiro
    somaPar,armazenaPar:inteiro
    produtoImpar:inteiro
inicio
        enquanto verdadeiro faca
             escreva("Digite um número:")
             leia(numero)

             SE numero = 0 ENTAO
                escreva("Até a próxima!!")
                interrompa
             FIMSE

             escreva("Digite outro número:")
             leia(numero2)
             SE (numero mod 2 = 0) e (numero2 mod 2 <> 0) ENTAO
                   escreval("Você digitou um número par e um número ímpar")
             SENAO (numero mod 2 <> 0) e (numero2 mod 2 = 0) ENTAO
                   escreval("Você digitou um número ímpar um número par")
             FIMSE
             SE (numero mod 2 = 0) e (numero2 mod 2 = 0) ENTAO
                  escreval("Soma de Pares:")
                  somaPar <- numero + numero2
                  escreval(numero,"+",numero2,"=",somaPar)
             SE (numero mod 2 <> 0) e (numero2 mod 2 <> 0) ENTAO
                  escreval("Multiplicação de números ímpares")
                  produtoImpar <- numero * numero2
                  escreval(numero,"X",numero2," =",produtoImpar)
             FIMSE
        fimenquanto
fimalgoritmo

 

  • Membro VIP
Postado
Em 16/10/2020 às 16:58, dereguejhoson disse:

@Simon Viegas Quando eu digitar 2 numeros par ele vai somar , e quando eu digitar 2 numeros impares ele vai multiplicar , e quando ele aparecer um numero par e um numero impar , ele só deveria aparecer a mensagem : esse é um número par e um numero par, e o loop vai continuar até eu digitar 0.

 

Veja:

Em 15/10/2020 às 16:18, Simon Viegas disse:

De onde você tirou que tem que tratar com "pares de números"?

 

Continuamos sem uma resposta... Então, a questão não seria explicar qual o comportamento que deseja, mas sim qual seria a relação disso com o enunciado.

 

 

Temos:

Em 15/10/2020 às 09:04, dereguejhoson disse:

1 - Faça um algoritmo que o usuário entre com vários números inteiros e positivos e imprima o produto dos números ímpares e a soma dos números pares.

 

Percebe? Não tem qualquer relação com "pares de números".

 

 

Para adiantar, vamos lá... seria algo como: se fosse inserido, por exemplo: 42, 83, 34, 7, 97, 64, 41 e 4, ele iria querer que exibisse o resultado de 83*7*97*41 ("produto dos números ímpares") e 42+34+64+4 (soma dos números pares). É isso, pelo menos acho que é.

 

Se tiver dúvidas sobre o entendimento, pare para entender. Enquanto não entender o problema, não faz nem sentido tentar resolver. (Como vai resolver algo que não se saber o que é? :))

 

 

 

 

Sobre:

Em 16/10/2020 às 16:58, dereguejhoson disse:

Agora mostra o erro que não acha o "FIMSE".

 

Nesse caso foi explícito... está faltando um fimSe para o terceiro se.

 

Mas lembrando...: esse algoritmo não tem relação com o problema proposto.

 

 

A dica é simples: sempre para entender o que está acontecendo. No caso, primeiro precisa entende qual é o problema (ele quer um produto e uma soma. Acho que já entendemos). Já no caso do teu código (mesmo não sendo para o contexto), o erro diz que está faltando um fimSe, logo poderia ser algo relacionado aos se... por aí vai. Claro que nem sempre é tão direto, mas o ponto central é isso mesmo: apenas pare para entender.

 

Pronto. Corrija seu código atual, apenas como didática. Agora implemente um novo que "multiplique todos os ímpares" e "some todos os pares".....

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...