E-Book 650 Dicas e Truques de Python - PDF com 1.200 páginas
Você está aqui: VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Laços

Como testar se um número é perfeito usando VisuAlg - Exercícios Resolvidos de VisuAlg

Quantidade de visualizações: 520 vezes
Pergunta/Tarefa:

Escreva um algoritmo VisuAlg que pede para o usuário informar um número inteiro e informa se este número é um número perfeito.

Um número perfeito é aquele cuja soma dos seus divisores, exceto ele próprio, é igual ao número. Por exemplo, o número 6 é perfeito, pois 1 + 2 + 3 = 6.

Sua saída deverá ser parecida com:

Informe um número inteiro: 6
O número informado é um número perfeito.
Resposta/Solução:

Veja a resolução completa para o exercício em VisuAlg, comentada linha a linha:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

Algoritmo "Como testar se um número é perfeito em VisuAlg"

Var
  // Variáveis usadas na resolução do problema
  numero: inteiro // número informado pelo usuário
  soma: inteiro // vai guardar a soma dos dígitos
  i: inteiro // para controlar o laço

Inicio
  // inícia a soma como zero
  soma <- 0

  // vamos pedir para o usuário informar o valor inteiro
  escreva("Informe um número inteiro: ")
  // lê o número informado
  leia(numero)

  // um laço que começa em 1 e até o número informado - 1
  para i de 1 até numero - 1 faça
    // o número é divisível pelo valor de i?
    se numero mod i = 0 então
      soma <- soma + i // aumenta a soma
    fimse
  fimpara

  // a soma é igual ao número informado?
  se soma = numero então
    escreva("O número informado é um número perfeito.")
  senão
    escreva("O número informado não é um número perfeito.")
  fimse

Fimalgoritmo


Link para compartilhar na Internet ou com seus amigos:

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 correspondente

Quantidade de visualizações: 463 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
Resposta/Solução:

Veja a resolução comentada deste exercício em VisuAlg:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

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 ::: Estruturas de Controle

Exercícios Resolvidos de VisuAlg - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equilátero

Quantidade de visualizações: 281 vezes
Pergunta/Tarefa:

Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra:

A < (B + C), B < (A + C) e C < (A + B).

Escreva um programa VisuAlg que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais).

Sua saída deverá ser parecida com:

Informe o primeiro lado do triângulo: 30
Informe o segundo lado do triângulo: 40
Informe o terceiro lado do triângulo: 60
O triângulo é escaleno
Resposta/Solução:

Veja a resolução comentada deste exercício usando VisuAlg:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

algoritmo "Testar o tipo de um triângulo em VisuAlg"

var
  // variáveis usadas na resolução do problema
  lado_a, lado_b, lado_c: inteiro

inicio
  // vamos ler o primeiro lado do triângulo
  escreva("Informe o primeiro lado do triângulo: ")
  leia(lado_a)

  // vamos ler o segundo lado do triângulo
  escreva("Informe o segundo lado do triângulo: ")
  leia(lado_b)

  // vamos ler o terceiro lado do triângulo
  escreva("Informe o terceiro lado do triângulo: ")
  leia(lado_c)

  // os lados informados formam um triângulo?
  se ((lado_a < (lado_b + lado_c)) e (lado_b < (lado_a + lado_c)) e 
    (lado_c < (lado_a + lado_b))) entao
    // é um triângulo equilátero (todos os lados iguais)?
    se ((lado_a = lado_b) e (lado_b = lado_c)) entao
      escreval("O triângulo é equilátero")
    senao
      // é isósceles (dois lados iguais e um diferente)?
      se ((lado_a = lado_b) ou (lado_a = lado_c) ou (lado_c = lado_b)) entao
        escreval("O triângulo é isósceles")
      senao
        // é escaleno
        escreval("O triângulo é escaleno")
      fimse
    fimse
  senao
    escreval("Os lados informados não formam um triângulo.")
  fimse

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 maior

Quantidade de visualizações: 893 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
Resposta/Solução:

Veja a resolução comentada deste exercício usando VisuAlg:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

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



VisuAlg ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas

Como calcular o coeficiente angular de uma reta em VisuAlg dados dois pontos no plano cartesiano

Quantidade de visualizações: 462 vezes
O Coeficiente Angular de uma reta é a variação, na vertical, ou seja, no eixo y, pela variação horizontal, no eixo x. Sim, isso mesmo. O coeficiente angular de uma reta tem tudo a ver com a derivada, que nada mais é que a taxa de variação de y em relação a x.

Vamos começar analisando o seguinte gráfico, no qual temos dois pontos distintos no plano cartesiano:



Veja que o segmento de reta AB passa pelos pontos A (x=3, y=6) e B (x=9, y=10). Dessa forma, a fórmula para obtenção do coeficiente angular m dessa reta é:

\[\ \text{m} = \frac{y_2 - y_1}{x_2 - x_1} = \frac{\Delta y}{\Delta x} = tg \theta \]

Note que __$\Delta y__$ e __$\Delta x__$ são as variações dos valores no eixo das abscissas e no eixo das ordenadas. No triângulo retângulo que desenhei acima, a variação __$\Delta y__$ se refere ao comprimento do cateto oposto e a variação __$\Delta y__$ se refere ao comprimento do cateto adjascente.

Veja agora o trecho de código na linguagem VisuAlg que solicita as coordenadas x e y dos dois pontos, efetua o cálculo e mostra o coeficiente angular m da reta que passa pelos dois pontos:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

algoritmo "Calcular o coeficiente angular de uma reta em VisuAlg"

var
  // coordenadas dos dois pontos
  x1, y1, x2, y2: real
  // guarda o coeficiente angular
  m: real

inicio
  // x e y do primeiro ponto
  escreva("Coordenada x do primeiro ponto: ")
  leia(x1)
  escreva("Coordenada y do primeiro ponto: ")
  leia(y1)

  // x e y do segundo ponto
  escreva("Coordenada x do segundo ponto: ")
  leia(x2)
  escreva("Coordenada y do segundo ponto: ")
  leia(y2)

  // vamos calcular o coeficiente angular
  m <- (y2 - y1) / (x2 - x1)

  // mostramos o resultado
  escreva("O coeficiente angular é: ", m)

fimalgoritmo 

Ao executar este código VisuAlg nós teremos o seguinte resultado:

Coordenada x do primeiro ponto: 3
Coordenada y do primeiro ponto: 6
Coordenada x do segundo ponto: 9
Coordenada y do segundo ponto: 10
O coeficiente angular é: 0.6666666666666666

Veja agora como podemos calcular o coeficiente angular da reta que passa pelos dois pontos usando o Teorema de Pitágoras. Note que agora nós estamos tirando proveito da tangente do ângulo Theta (__$\theta__$), também chamado de ângulo Alfa ou Alpha (__$\alpha__$):

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

algoritmo "Calcular o coeficiente angular de uma reta em VisuAlg"

var
  // coordenadas dos dois pontos
  x1, y1, x2, y2: real
  // guarda os comprimentos dos catetos oposto e adjascente
  cateto_oposto, cateto_adjascente: real
  // guarda o ângulo tetha (em radianos) e a tangente
  tetha, tangente: real

inicio
  // x e y do primeiro ponto
  escreva("Coordenada x do primeiro ponto: ")
  leia(x1)
  escreva("Coordenada y do primeiro ponto: ")
  leia(y1)

  // x e y do segundo ponto
  escreva("Coordenada x do segundo ponto: ")
  leia(x2)
  escreva("Coordenada y do segundo ponto: ")
  leia(y2)

  // vamos obter o comprimento do cateto oposto
  cateto_oposto <- y2 - y1
  // e agora o cateto adjascente
  cateto_adjascente <- x2 - x1
  // vamos obter o ângulo tetha, ou seja, a inclinação da hipetunesa
  // (em radianos, não se esqueça)
  tetha <- ArcTan(cateto_oposto / cateto_adjascente)
  // e finalmente usamos a tangente desse ângulo para calcular
  // o coeficiente angular
  tangente <- Tan(tetha)

  // mostramos o resultado
  escreva("O coeficiente angular é: ", tangente)

fimalgoritmo 

Ao executar este código você verá que o resultado é o mesmo. No entanto, fique atento às propriedades do coeficiente angular da reta:

1) O coeficiente angular é positivo quando a reta for crescente, ou seja, m > 0;

2) O coeficiente angular é negativo quando a reta for decrescente, ou seja, m < 0;

3) Se a reta estiver na horizontal, ou seja, paralela ao eixo x, seu coeficiente angular é zero (0).

4) Se a reta estiver na vertical, ou seja, paralela ao eixo y, o coeficiente angular não existe.


VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de VisuAlg - Como verificar quantas vezes um valor é encontrado em um vetor - Como usar vetores e matrizes em VisuAlg

Quantidade de visualizações: 210 vezes
Pergunta/Tarefa:

Escreva um programa VisuAlg que declara, constrói e inicializa um vetor de 10 inteiros. Em seguida peça para que o usuário informe um valor a ser pesquisado. Faça uma varredura no vetor e informe quantas vezes o valor pesquisado é encontrado:

// declara um vetor de 10 inteiros
valores: vetor[1..10] de inteiro
Sua saída deverá ser parecida com:

Informe um valor: 4
O valor foi encontrado: 3 vezes

Informe um valor: 8
O valor foi encontrado: 1 vezes

Informe um valor: 3
O valor foi encontrado: 0 vezes
Resposta/Solução:

Veja a resolução comentada deste exercício usando VisuAlg:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

algoritmo "Contar quantas vezes um elemento repete em um vetor"

var
  // variáveis usadas na resolução do problema
  valores: vetor[1..10] de inteiro
  pesquisa, repeticoes, i: inteiro

inicio
  // inicializa um vetor de 10 inteiros
  valores[1] <- 4
  valores[2] <- 21
  valores[3] <- 9
  valores[4] <- 8
  valores[5] <- 12
  valores[6] <- 21
  valores[7] <- 4
  valores[8] <- 4
  valores[9] <- 1
  valores[10] <- 10

  // vamos ler um valor inteiro
  escreva("Informe um valor: ")
  leia(pesquisa)

  // vamos verificar quantas vezes o valor informado está
  // contido no vetor
  repeticoes <- 0
  para i de 1 ate 10 faca
    se valores[i] = pesquisa entao
      // encontrou? vamos contar esta ocorrência
      repeticoes <- repeticoes + 1
    fimse
  fimpara

  // vamos mostrar o resultado
  escreva("O valor foi encontrado: ", repeticoes, " vezes")

fimalgoritmo



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

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais


© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 65 usuários muito felizes estudando em nosso site.