Você está aqui: VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: VisuAlg Básico |
Um programa VisuAlg que solicita ao usuário que informe sua idade em anos, meses e dias e mostre sua idade em dias - Desafio de Programação Resolvido em VisuAlgQuantidade de visualizações: 252 vezes |
Pergunta/Tarefa: Escreva um programa VisuAlg que solicite ao usuário que informe sua idade em anos, meses e dias, ou seja, sua idade atual em anos e a quantidade de meses e dias decorridos desde seu aniversário. Seu programa deverá exibir uma saída parecida com: Informe sua idade em anos, meses e dias Anos: 25 Meses: 2 Dias: 12 Idade expressa em dias: 9197 Resposta/Solução: Veja a resolução comentada deste exercício usando VisuAlg: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- algoritmo "Converter anos, meses e dias em dias em VisuAlg" var // variáveis que vão guardar a idade em anos, meses e dias; anos, meses, dias: inteiro idade_dias: inteiro // guardará a idade em dias inicio escreval("Informe sua idade em anos, meses e dias") // obtém os anos escreva("Anos: ") leia(anos) // obtém os meses escreva("Meses: ") leia(meses) // obtém os dias escreva("Dias: ") leia(dias) // vamos calcular a idade em dias idade_dias <- (anos * 365) + (meses * 30) + dias // vamos exibir o resultado escreval("Idade expressa em dias: ", idade_dias) fimalgoritmo |
![]() |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Strings e Caracteres |
Exercícios Resolvidos de VisuAlg - Como retornar o código ASCII associado a um caractere em VisuAlg - Ler um caractere e retornar o código ASCII correspondenteQuantidade de visualizações: 758 vezes |
Pergunta/Tarefa: Escreva um programa VisuAlg que pede para o usuário informar um caractere (letra ou número) e mostre o código ASCII correspondente. Sua saída deverá ser parecida com: Informe um caractere: A Você informou o caractere: A O código ASCII correspondente é: 65 Veja a resolução comentada deste exercício em VisuAlg: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- algoritmo "Como retornar código ASCII em VisuAlg" var // variáveis usadas na resolução do problema ch: caractere codigo: inteiro inicio // vamos pedir para o usuário informar uma letra, símbolo ou pontuação escreva("Informe um caractere: ") leia(ch) // agora vamos obter o código ASCII correspondente codigo <- Asc(ch) // e mostramos o resultado escreval("Você informou o caractere: ", ch) escreval("O código ASCII correspondente é: ", codigo) fimalgoritmo O Código Padrão Americano para o Intercâmbio de Informação (do inglês American Standard Code for Information Interchange - ASCII, pronunciado [áski]) é um sistema de representação de letras, algarismos e sinais de pontuação e de controle, através de um sinal codificado em forma de código binário (cadeias de bits formada por vários 0 e 1), desenvolvido a partir de 1960, que representa um conjunto de 128 sinais: 95 sinais gráficos (letras do alfabeto latino, algarismos arábicos, sinais de pontuação e sinais matemáticos) e 33 sinais de controle, utilizando 7 bits para representar todos os seus símbolos. |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de VisuAlg - Como calcular e exibir os 50 primeiros números primos em VisuAlgQuantidade de visualizações: 447 vezes |
Pergunta/Tarefa: Um inteiro é um número primo se ele for divisível somente por 1 e por ele mesmo. Assim, 2, 3, 5 e 7 são primos, enquanto 4, 6, 8 e 9 não são. Note que o número 1 não é primo. Escreva um programa (algoritmo) VisuAlg que usa um laço PARA, ENQUANTO ou REPITA...ATE para calcular e exibir os 50 primeiros números primos. Sua saída deverá ser parecida com: 50 primeiros números primos: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 Veja a resolução comentada deste exercício usando VisuAlg: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- algoritmo "Como exibir os N primeiros números primos em VisuAlg" var // variáveis usadas na resolução do problema quantidade, contador, numero, j: inteiro primo: logico inicio quantidade <- 50 // quantidade de números primos contador <- 0 // quantidade de números primos encontrados numero <- 0 // inteiro inicial // Lembre-se! O número 1 não é primo escreval(quantidade, " primeiros numeros primos:") escreval() // laço while será executado até encontrar os 50 primeiros números primos enquanto contador < quantidade faca primo <- verdadeiro // se o valor de i for 7, a variável j do laço contará // de 2 até 7 / 2 (divisão inteira), ou seja, 3. Se o // módulo de 7 por qualquer um dos valores neste intervalo // for igual a 0, então o número não é primo para j de 2 ate Int(numero / 2) faca se numero mod j = 0 entao primo <- falso // não é primo interrompa fimse fimpara se ((primo = verdadeiro) e (numero > 1)) entao escreva(numero:6) contador <- contador + 1 // encontramos um número primo se contador mod 10 = 0 entao escreval() fimse fimse numero <- numero + 1 fimenquanto fimalgoritmo |
VisuAlg ::: Dicas & Truques ::: Matemática e Estatística |
Como resolver uma equação do segundo grau em VisuAlg - Como calcular Bhaskara em VisuAlgQuantidade de visualizações: 1648 vezes |
Como resolver uma equação do 2º grau usando VisuAlg Nesta dica mostrarei como encontrar as raízes de uma equação quadrática, ou seja, uma equação do 2º usando um algoritmo escrito na ferramenta VisuAlg, uma das preferidas para o aprendizado de algoritmos e lógica de programação. Definimos como equação do 2º grau ou equações quadráticas qualquer equação do tipo ax² + bx + c = 0 em que a, b e c são números reais e a ≠ 0. Ela recebe esse nome porque, no primeiro membro da igualdade, há um polinômio de grau dois com uma única incógnita. Note que, dos coeficientes a, b e c, somente o a é diferente de zero, pois, caso ele fosse igual a zero, o termo ax² seria igual a zero, logo a equação se tornaria uma equação do primeiro grau: bx + c = 0. Independentemente da ordem da equação, o coeficiente a sempre acompanha o termo x², o coeficiente b sempre acompanha o termo x, e o coeficiente c é sempre o termo independente. Como resolver uma equação do 2º grau Conhecemos como soluções ou raízes da equação ax² + bx + c = 0 os valores de x que fazem com que essa equação seja verdadeira. Uma equação do 2º grau pode ter no máximo dois números reais que sejam raízes dela. Para resolver equações do 2º grau completas, existem dois métodos mais comuns: a) Fórmula de Bhaskara; b) Soma e produto. O primeiro método é bastante mecânico, o que faz com que muitos o prefiram. Já para utilizar o segundo, é necessário o conhecimento de múltiplos e divisores. Além disso, quando as soluções da equação são números quebrados, soma e produto não é uma alternativa boa. Como resolver uma equação do 2º grau usando Bhaskara Como nosso algoritmo VisuAlg vai resolver a equação quadrática usando a Fórmula de Bhaskara, o primeiro passo é encontrar o determinante. Veja: \[\Delta =b^2-4ac\] Nem sempre a equação possui solução real. O valor do determinante é que nos indica isso, existindo três possibilidades: a) Se determinante > 0, então a equação possui duas soluções reais. b) Se determinante = 0, então a equação possui uma única solução real. c) Se determinante < 0, então a equação não possui solução real. Encontrado o determinante, só precisamos substituir os valores, incluindo o determinante, na Fórmula de Bhaskara: \[x = \dfrac{- b\pm\sqrt{b^2- 4ac}}{2a}\] Vamos agora ao código VisuAlg. Nossa aplicação vai pedir para o usuário informar os valores dos três coeficientes a, b e c e, em seguida, vai apresentar as raizes da equação: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- Algoritmo "Como resolver uma equação do 2º grau usando VisuAlg" Var // variáveis usadas na resolução do problema // os coeficientes a, b, c: real // as duas raizes, a imaginaria e o discriminante raiz1, raiz2, imaginaria, discriminante: real Inicio // vamos pedir para o usuário informar os valores dos coeficientes escreva("Valor do coeficiente a: ") leia(a) escreva("Valor do coeficiente b: ") leia(b) escreva("Valor do coeficiente c: ") leia(c) // vamos calcular o discriminante discriminante <- (b * b) - (4 * a * c) // a equação possui duas soluções reais? se discriminante > 0 então raiz1 <- (-b + raizq(discriminante)) / (2 * a) raiz2 <- (-b - raizq(discriminante)) / (2 * a) escreva("Duas raizes: x1 = ", raiz1, " e x2 = ", raiz2) senão // a equação possui uma única solução real? se discriminante = 0 então raiz1 <- -b / (2 * a) raiz2 <- -b / (2 * a) escreva("Duas raizes iguais: x1 = ", raiz1, " e x2 = ", raiz2) // a equação não possui solução real? senão raiz1 <- -b / (2 * a) raiz2 <- -b / (2 * a) imaginaria <- raizq(-discriminante) / (2 * a) escreva("Existem duas raízes complexas: ") escreva("x1 = ", raiz1, " + " ,imaginaria, " e x2 = ", raiz2, " - ", imaginaria) fimse fimse Fimalgoritmo Ao executar este código VisuAlg nós teremos o seguinte resultado: Valor do coeficiente a: 1 Valor do coeficiente b: 2 Valor do coeficiente c: -3 Existem duas raizes: x1 = 1.0 e x2 = -3.0 |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: VisuAlg Básico |
Exercícios Resolvidos de VisuAlg - Uma loja está concedendo desconto de 20% para clientes do sexo feminino com idade entre 18 e 35 anos (ambas incluídas)Quantidade de visualizações: 383 vezes |
Exercícios Resolvidos de VisuAlg - Uma loja está concedendo desconto de 20% para clientes do sexo feminino com idade entre 18 e 35 anos (ambas incluídas) Pergunta/Tarefa: Uma loja está concedendo desconto de 20% para clientes do sexo feminino com idade entre 18 e 35 anos (ambas incluídas). Para os demais clientes o desconto é 5% apenas. Leia o valor do produto, o nome, sexo e a idade do cliente e aplique o desconto correspondente. Sua saída deverá ser parecida com: Informe o valor do produto: 520 Informe o nome do cliente: FABRICIA DE CASTRO Informe a idade: 23 Informe o sexo: F FABRICIA DE CASTRO, você ganhou o desconto de 20% Valor a pagar: 416.0 Informe o valor do produto: 830 Informe o nome do cliente: OSMAR SLVA Informe a idade: 38 Informe o sexo: M OSMAR SLVA, você ganhou apenas o desconto de 5% Valor a pagar: 788.5 Veja a resolução deste exercício em VisuAlg: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- algoritmo "Ler o valor do produto, o valor do produto, o sexo..." var valor: real nome, sexo: caractere idade: inteiro inicio // vamos ler o valor do produto escreva("Informe o valor do produto: ") leia(valor) // agora vamos ler o nome do cliente escreva("Informe o nome do cliente: ") leia(nome) // agora vamos ler a idade escreva("Informe a idade: ") leia(idade) // e finalmente vamos ler o sexo do cliente escreva("Informe o sexo: ") leia(sexo) // vamos verificar se o cliente faz jus ao desconto // de 20% se ((idade >= 18) e (idade <= 35) e (sexo = "F")) entao valor <- valor - (valor * (20 / 100)) escreval(nome, ", você ganhou o desconto de 20%") escreval("Valor a pagar: ", valor) senao valor <- valor - (valor * (5 / 100)) escreval(nome, ", você ganhou apenas o desconto de 5%") escreval("Valor a pagar: ", valor) fimse fimalgoritmo |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: VisuAlg Básico |
Exercício Resolvido de VisuAlg - Escreva um programa VisuAlg que leia um número inteiro e informe se ele é par ou ímparQuantidade de visualizações: 913 vezes |
Pergunta/Tarefa: Escreva um algorítmo em VisuAlg que pede para o usuário informar um número inteiro. Depois da leitura do número digitado, informe se ele é par ou ímpar. Sua saída deverá ser parecida com: Informe um número: 14 O número é par Veja a resolução comentada deste exercício usando VisuAlg: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- Algoritmo "Um algorítmo para tstar se um número é par ou ímpar" Var // variáveis usadas na resolução do problema numero: inteiro Inicio // vamos pedir para o usuário informar o número escreva("Informe um número: ") leia(numero) // vamos testar se o número é par ou ímpar se numero mod 2 = 0 entao escreval("O número é par") senao escreval("O número é ímpar") fimse Fimalgoritmo Na versão 3.0.7.0 do VisuAlg nós podemos usar "mod" ou "%" para representar o operador de módulo. Por favor, verifique qual o operador suportado pela sua versão. |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: VisuAlg Básico |
Exercícios Resolvidos de VisuAlg - Escreva um programa VisuAlg que pergunte a velocidade de um carro. Caso ultrapasse 80km/h, exiba uma mensagem dizendo queQuantidade de visualizações: 14 vezes |
Pergunta/Tarefa: Escreva um programa VisuAlg que pergunte a velocidade de um carro. Caso ultrapasse 80km/h, exiba uma mensagem dizendo que o usuário foi multado. Nesse caso, exiba o valor da multa, cobrando R$ 5,00 por cada quilômetro acima da velocidade permitida. Sua saída deve ser parecida com: Velocidade do carro: 85 Você foi multado. A multa a ser paga é: 25.0 Velocidade do carro: 75 Você não foi multado Velocidade do carro: 110 Você foi multado. A multa a ser paga é: 150.0 Veja a resolução comentada deste exercício usando VisuAlg: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- algoritmo "Calcular a velocidade de um carro em VisuAlg" var // variáveis usadas na resolução do problema velocidade, multa: real // função principal do programa inicio // vamos pedir para o usuário informar a velocidade // do carro escreva("Informe a velocidade do carro: ") leia(velocidade) // vamos verificar se o usuário foi multado se (velocidade > 80) entao escreval("Você foi multado.") // vamos calcular a multa multa <- (velocidade - 80) * 5.0 escreval("A multa a ser paga é: ", multa) senao escreval("Você não foi multado") fimse escreval() fimalgoritmo |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: VisuAlg Básico |
Exercícios Resolvidos de VisuAlg - Escreva um programa VisuAlg para calcular e imprimir o número de lâmpadas necessáriasQuantidade de visualizações: 288 vezes |
Pergunta/Tarefa: Escreva um programa VisuAlg para calcular e imprimir o número de lâmpadas necessárias para iluminar um determinado cômodo de uma residência. Dados de entrada: a potência da lâmpada utilizada (em watts), as dimensões (largura e comprimento, em metros) do cômodo. Considere que a potência necessária é de 18 watts por metro quadrado. Sua saída deverá ser parecida com: Informe a potência da lâmpada (em watts): 100 Informe a largura do cômodo (em metros): 6 Informe o comprimento do cômodo (em metros): 4 Serão necessárias 4 lâmpadas. Veja a resolução completa para o exercício em VisuAlg, comentada linha a linha: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- algoritmo "Como calcular o número de lâmpadas necessárias" var // variáveis usadas na resolução do problema potencia_lampada, largura_comodo, comprimento_comodo: real area_comodo, potencia_total: real quant_lampadas: inteiro inicio // vamos ler a potência da lâmpada escreva("Informe a potência da lâmpada (em watts): ") leia(potencia_lampada) // vamos ler a largura do cômodo escreva("Informe a largura do cômodo (em metros): ") leia(largura_comodo) // agora vamos ler o comprimento do cômodo escreva("Informe o comprimento do cômodo (em metros): ") leia(comprimento_comodo) // agora vamos calcular a área do cômodo area_comodo <- largura_comodo * comprimento_comodo // calculamos a potência total necessária para iluminar // todo o cômodo potencia_total <- area_comodo * 18 // e finalmente calculamos a quantidade de lâmpadas necessárias quant_lampadas <- Int(potencia_total / potencia_lampada) // será necessário no mínimo uma lâmpada se quant_lampadas = 0 entao quant_lampadas <- quant_lampadas + 1 fimse // e mostramos o resultado escreva("Serão necessárias ", quant_lampadas, " lâmpadas.") fimalgoritmo |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercício Resolvido de VisuAlg - Um programa que lê três números inteiros e mostra o maiorQuantidade de visualizações: 1195 vezes |
Pergunta/Tarefa: Faça um algoritmo VisuAlg que solicita três números inteiros e mostra o maior deles. Exiba uma mensagem caso os três números não forem diferentes. Sua saída deverá ser parecida com: Informe o primeiro número: 34 Informe o segundo número: 83 Informe o terceiro número: 72 O segundo número é o maior Veja a resolução comentada deste exercício usando VisuAlg: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- Algoritmo "Um programa que lê três números inteiros e mostra o maior" Var // variáveis usadas na resolução do problema num1, num2, num3: inteiro Inicio // vamos solicitar os três números inteiros escreva("Informe o primeiro número: ") leia(num1) escreva("Informe o segundo número: ") leia(num2) escreva("Informe o terceiro número: ") leia(num3) // o primeiro número é o maior? se (num1 > num2) e (num1 > num3) entao escreva("O primeiro número é o maior") senao // o segundo número é o maior? se (num2 > num1) e (num2 > num3) entao escreva("O segundo número é o maior") senao // o terceiro número é o maior? se (num3 > num1) e (num3 > num2) entao escreva("O terceiro número é o maior") senao // os números não são diferentes escreva("Os três números não são diferentes") fimse fimse fimse Fimalgoritmo |
Vamos testar seus conhecimentos em Hidrologia |
Como é chamado o processo em que a água passa do estado líquido para o estado sólido no meio atmosférico? A) Infiltração. B) Condensação. C) Evapotranspiração. D) Transpiração. E) Precipitação. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Vidros Qual dos tipos abaixo não é um vidro: A) Soda-cálcico. B) Boro-silicato. C) Ao chumbo. D) Quartzitos. E) Alumínio borosilicato. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Hidrologia |
(CEBRASPE - 2008 - Perito PC AC) Conhecimentos de hidráulica, hidrologia e saneamento têm grande aplicação no funcionamento técnico das cidades, permitindo boa gestão dos serviços urbanos. Com base nesses tópicos do conhecimento, julgue o seguinte item. No escoamento superficial de uma bacia, o hidrograma unitário é a resposta da bacia a uma precipitação de volume unitário de duração conhecida. A) Verdadeiro B) Falso Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira |
O aço no edifício A estrutura de estabilização da moldura estrutural da edificação da figura a seguir, que é formada por paredes rígidas, feitas de aço, concreto ou alvenaria de concreto armado, pode ser chamada de: ![]() A) Estrutura contraventada. B) Moldura amarrada excentricamente. C) Moldura resistente a momentos. D) Paredes de cisalhamento. E) Nenhuma das alternativas anteriores. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em AutoCAD Civil 3D |
Conjuntos de Description Key no AutoCAD Civil 3D Quando estamos usando conjuntos de Description Key, qual parâmetro nos permite controlar automaticamente os parâmetros de alguns pontos? A) Location description (Descrição de localização) B) Marker style (Estilo de marcador) C) Raw description (Descrição crua) D) Full description (Descrição completa) Verificar Resposta Estudar Cards Todas as Questões |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de VisuAlg |
Veja mais Dicas e truques de VisuAlg |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |