Home › Fóruns › Programação Básica › Dúvidas sobre Algoritmos (Visualg)
- Este tópico contém 8 respostas, 5 vozes e foi atualizado pela última vez 3 anos, 9 meses atrás por Tutora Mayla.
-
AutorPosts
-
-
16 de fevereiro de 2021 às 10:11 #60920William Wagner de MeloParticipante
Olá, a todos !
Sei que estou “no Lugar errado”, mas não pude encontrar o Link sobre Algoritmos (Visualg) e por isso estou aqui. Gostaria de pedir a Ajuda de vocês com essas 02 DÚVIDAS:1- Como fazer para “forçar uma Resposta Numérica” em um Formato Específico ? Por exemplo:
Eu digitei o seguinte comando no Visualg:Escreva (“Informe o Ano Atual com 04 Dígitos: “)
Leia (Ano_atual)Obs: Eu queria criar uma Repetição, caso seja Informado o Ano com apenas 2 Dígitos.
2- Também no Visualg, ao fazer o Cálculo da Área de um Círculo usando a Fórmula – Area = (Pi * R ^2), eu NÃO PRECISEI informar o Valor de PI. Alguém sabem me dizer o motivo ?
Agradeço a todos, desde já. Muito obrigado !
-
16 de fevereiro de 2021 às 11:29 #60940Neilson Delgado de FreitasParticipante
Bom dia, William. Posso lhe responder a segunda. Pi é uma das constantes matemáticas que já estão inseridas na biblioteca básica do VisualG (como 3,14159265358979).
Pode testar com escreva(Pi) e você vê que ele já lhe informa.-
18 de fevereiro de 2021 às 13:32 #61127William Wagner de MeloParticipante
Salve, Neilson!
Ok, eu fico no aguardo. Muito obrigado !!!
-
-
18 de fevereiro de 2021 às 12:21 #61123José Vinícius Silva FerreiraParticipante
William, pra vc criar uma repetição no seu programa, vai precisar das estruturas de controle de repetição. Provavelmente quando chegar nessa aula, vc vai conseguir fazer o que deseja. A estrutura adequada para esse problema, pelo que eu acho, é o enquanto.
-
18 de fevereiro de 2021 às 13:30 #61126William Wagner de MeloParticipante
Salve, José !
Hummmmmm, entendo. Mas como ficaria a expressão?Enquanto (Ano_atual = 4) faca.
Seria isso?
-
-
18 de fevereiro de 2021 às 15:33 #61142José Vinícius Silva FerreiraParticipante
programa
{funcao inicio()
{
// Variáveis inteiras
inteiro ano_atual, ano_nasc, idade
ano_atual = 2021// Saída e entrada de dados
escreva(“Em que ano você nasceu? “)
leia(ano_nasc)// Estrutura de repetição
enquanto (ano_nasc < 1900 ou ano_nasc > ano_atual) {
escreva(“Ano inválido! Tente novamente: “)
leia(ano_nasc)
}idade = ano_atual – ano_nasc
escreva(“Você tem ” + idade + ” anos de idade!”)
}
}Fiz esse pequeno exemplo para mostrar como seria mais ou menos, Basicamente, temos aí a entrada de dados onde será informado o ano de nascimento. Quando o usuário digitar o ano_nasc, ele vai ser avaliado no bloco enquanto. Caso ano_nasc seja menor que 1900 ou maior que ano_atual, o bloco do enquanto vai ser executado repetidas vezes, até que vc digite um ano válido(um ano entre 1900 e 2021). Teste e veja se entende a lógica.
Por que escolhi um ano entre 1900 e 2021? 1900 pois caso fosse menos, a idade seria de mais de 120 anos, então 1900 foi o mínimo. Já 2021 pq é o ano atual, então teria que ser o valor máximo.
Espero ter ajudado, qualquer coisa é só chamar!
-
18 de fevereiro de 2021 às 20:34 #61181William Wagner de MeloParticipante
Boa noite, José !
Ah, ok, essa sua ideia foi muito boa. No entanto, o que eu gostaria era que quando o Usuário digitasse o Ano com apenas “02 Dígitos”, por exemplo, 94, o programa desse uma mensagem de Erro, pedindo para que ele Digitasse o Ano com 04 Dígitos, entendeu?
-
-
18 de fevereiro de 2021 às 21:46 #61190Michel SouzaParticipante
Olá Willian, aqui no Estudonauta você não vai encontrar links para questões de Algoritmos(VisualG), isso é no Curso em Vídeo (são empresas diferentes).
Bom respondendo sua 1º dúvida, eu criei um exemplo, espero que ajude a sanar suas dúvidas e que seja isso que procura. Qualquer melhora será bem vinda.Algoritmo “Cálculo_Idade”
//Descrição: Programa para Calcular a idade, fazendo repetição caso o ano digitado seja diferente de 4 dígitos
//Autor(a): Michel J. S
Var
//declara o ano atual como caractere
ano_atual: Caractere
//declara o nascimento e a idade como inteiro
ano_nasc, idade: InteiroInicio
//Pedir para digitar o ano atual
EscrevaL (“—————————————–“)
Escreva(“Informe o ano atual (4 Dígitos (YYYY)): “)
Leia(ano_atual)
//Condição ano_atual diferente de 4 números
Se (compr(ano_atual) <> 4) entao //verifica o comprimento do ano atual
//Repete estrutura ate ano_atual = 4
Repita
EscrevaL (“ERRO, Informe o Ano Atual com 4 DÍGITOS”)
EscrevaL()
EscrevaL (“————————————-“)
Escreva(“Informe o ano atual (4 Dígitos (YYYY)): “)
Leia(ano_atual)
ate (compr(ano_atual) = 4)) //caso a condição seja verdadeira termina a repetição
FimSe //termina a estrutura de repetição
//Pedir para digitar o ano de nascimento
Escreva(“Digite o ano de nascimento: “)
Leia(ano_nasc)
//Converter um valor (caractere) para inteiro, para que possa ser feito o calculo da idade
idade <- Caracpnum(ano_atual) – ano_nasc
//Mostrar o Resultado na tela
EscrevaL(“Sua idade em “, ano_atual, ” é de “, idade, ” anos”)
Fimalgoritmo -
22 de fevereiro de 2021 às 22:34 #61598Tutora MaylaMestre
Willian, as respostas de seus colegas foram muito boas, gostaria de adicionar uma ideia para a verificação do ano.
Além de ser possível verificar o comprimento utilizando uma variável do tipo caractere, é possível apenas verificar se o número na variável do tipo inteiro é menor que 100, já que só será um número de 2 dígitos se for menor que 100. E para saber se o número é um ano válido pode usar a condição sugerida pelo aluno José.
Pesquise sobre o bloco repita ate(do while) do VisualG. Na aula M03A10 o professor Guanabara ensina o faca enquanto que é o equivalente no PortugolStudio, veja essa aula e tente imaginar como isso ajudaria no seu problema.Seria algo como esse pseudocódigo
faca digite ano com 4 dígitos se ano < 100 diga erro enquanto ano < 100
Esse bloco se é apenas para imprimir uma mensagem de erro, o laço é para que o valor só seja aceito quando cumprir a exigência.
Quanto a sua dúvida sobre Pi imagino que tenha sido respondida pelo aluno Neilson. Mas se ainda houver dúvida basta falar que tento explicar de outra forma.Gostaria de ressaltar que a tutoria do Estudonauta é para duvidas referentes ao Estudonauta, não tiramos dúvidas sobre o Curso em Video.
Espero ter ajudado, quaisquer outras dúvidas basta entrar em contato. Bons estudos!
-
-
AutorPosts
- Você deve fazer login para responder a este tópico.