Buscar

Comandos básicos (entrada, saída, atribuição e declaração) - Desafio


Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

Muitas linguagens de programação possuem funções para inverter um número já pronto na 
linguagem. O nosso desafio é encontrar uma solução utilizando os comandos de entrada, saída 
e atribuição para que faça a inversão de um número inteiro de 4 dígitos. 
 
O valor lido deve estar armazenado em uma única variável e, ao final, deverá ser impressa 
como saída somente uma variável com o valor invertido, e não 4 variáveis separadas. A 
inversão deverá ser desenvolvida utilizando comandos aritméticos, resto da divisão e divisão 
inteira. 
Exemplo: 
 
Valor normal: 4567 
Valor invertido: 7654 
 
a) Declare as variáveis necessárias e seus tipos para resolver o problema apresentado. 
Todos os valores da tabela devem ser atribuídos para as variáveis para serem utilizadas 
nos cálculos. 
b) Identifique e descreva quais são os comandos de entrada necessários para solucionar 
o problema apresentado (representar em pseudolinguagem e fluxograma). 
c) Analise o problema e descreva a sequência correta dos comandos de atribuições e 
cálculos necessários para a solução do problema apresentado (para inverter o número). 
(Representar em pseudolinguagem e fluxograma.) 
d) Identifique e descreva quais são os comandos de saída necessários para solucionar o 
problema apresentado (representar em pseudolinguagem e fluxograma). 
 
 
Padrão de resposta esperado 
 
a) Declare as variáveis necessárias e seus tipos para resolver o problema 
apresentado. Todos os valores da tabela devem ser atribuídos para as variáveis 
para serem utilizadas nos cálculos 
 
Uma proposta de variáveis: 
número, valor_auxiliar, unidade, centena, dezena, milhar, numero_invertido: 
inteiro 
 
b) Identifique e descreva quais são os comandos de entrada necessários para 
solucionar o problema apresentado (representar em pseudocódigo e 
pseudolinguagem). 
 
Solução do problema em pseudolinguagem: 
 
Leia (numero) 
 
Solução do problema em fluxograma: 
 
 
 
c) Analise o problema e descreva a sequência correta dos comandos de atribuições 
e cálculos necessários para a solução do problema apresentado (para inverter o 
número). (Representar em pseudocódigo e pseudolinguagem.) 
 
Solução do problema em pseudolinguagem: 
 
valor_auxiliar <- numero 
milhar <- valor_auxiliar div 1000 
valor_auxiliar <- valor_auxiliar mod 1000 
centena <- valor_auxiliar div 100 
valor_auxiliar <- valor_auxiliar mod 100 
dezena <- valor_auxiliar div 10 
valor_auxiliar <- valor_auxiliar mod 10 
unidade <- valor_auxiliar 
numero_invertido <- (unidade * 1000) + (dezena * 100) + (centena * 
10) + (milhar * 1) 
 
Solução do problema em fluxograma: 
 
 
d) Identifique e descreva quais são os comandos de saída necessários para 
solucionar o problema apresentado (representar em pseudocódigo e 
pseudolinguagem). 
 
Solução do problema em pseudolinguagem: 
 
Escreva (" O valor invertido é = “ , numero_invertido) 
 
Solução do problema em fluxograma: 
 
 
Observação: o aluno poderá desenvolver o algoritmo na íntegra (não é 
obrigatório). A seguir, é apresentada uma possível solução. 
 
 
Solução completa em pseudolinguagem: 
 
Algoritmo "inverter" 
Var 
 
numero, valor_auxiliar, unidade, centena, dezena, milhar, numero_invertido 
: inteiro 
 
Inicio 
 
Escreva("Digite um valor inteiro com 4 dígitos:" ) 
Leia (numero) 
valor_auxiliar <- numero 
milhar <- valor_auxiliar div 1000 
valor_auxiliar <- valor_auxiliar mod 1000 
centena <- valor_auxiliar div 100 
valor_auxiliar <- valor_auxiliar mod 100 
dezena <- valor_auxiliar div 10 
valor_auxiliar <- valor_auxiliar mod 10 
unidade <- valor_auxiliar 
numero_invertido <- (unidade * 1000) + ( dezena * 100) + (centena * 10) 
+ (milhar * 1) 
Escreva(" O valor invertido é = " , numero_invertido) 
 
Fimalgoritmo 
 
A solução completa do problema em pseudolinguagem:

Mais conteúdos dessa disciplina