Estrutura de decisão SE-ENTÃO-SENÃO

A maioria dos algoritmos precisam tomar decisões ao longo de sua execução. Para isso existem as estruturas de decisão, e a mais utilizada é a estrutura SE-ENTÃO-SENÃO (Em inglês IF-THEN-ELSE). O funcionamento é simples: com base no resultado de uma expressão booleana (VERDADEIRO ou FALSO), o fluxo do algoritmo segue para um bloco de instruções ou não. Observe o esquema da estrutura SE-ENTÃO-SENÃO:

SE <expressão booleana>

ENTÃO

<instruções a serem executadas caso a expressão booleana resulte em VERDADEIRO>

SENÃO

<instruções a serem executadas caso a expressão booleana resulte em FALSO>

FIM-SE

O bloco de código SENÃO é opcional. É comum encontrar instruções de decisão apenas com SE-ENTÃO sem o bloco SENÃO. Veja um esquema gráfico desta estrutura de decisão.

estrutura IF

SE-ENTÃO-SENÃO na prática!

Vejamos um exemplo de utilização desta estrutura com um algoritmo, para isso vamos utilizar o VisuAlg (para mais informações leia o artigo sobre linguagens de programação para iniciantes). Neste algoritmo, vamos simular um caixa eletrônico quando vamos sacar dinheiro. O caixa eletrônico verifica se o valor que desejamos sacar é menor que o saldo disponível. Assumiremos que há R$ 1000 de saldo disponível para o saque.

Abaixo a execução do algoritmo acima quando informamos valores menores que 1000.

Sacar dinheiro menor que 1000

Agora a execução do mesmo algoritmo, porém inserindo um valor maior que 1000 para saque.

Sacar dinheiro maior que 1000

Perceba que o fluxo do algoritmo tomou rumos diferentes.

Essa é a estrutura de controle de fluxo mais utilizada na criação de programas de computador. Pratique-a criando algoritmos que tomam decisão. Como exercício, crie um algoritmo para verificar se um aluno foi aprovado ou reprovado no final do ano, assim: O usuário digita as 4 notas (de 0 a 10) bimestrais do aluno e o algoritmo deve calcular a média e verificar se é maior que 6. Caso afirmativo, exibe na tela uma mensagem informando que o aluno foi aprovado, caso contrário, uma mensagem informando que ele foi reprovado.

Pratique!

Estrutura de decisão SE-ENTÃO-SENÃO
4.85 (97.02%) 47 votos
  • OTAVIO

    Estou tentando fazer aquela atividade da calculadora… Mas estou empacado por dois motivos:

    Não estou conseguindo fazer com que quando digite operação diferente de +, -, *, / ele de a seguinte mensagem Operação invalida

    E também não estou conseguindo fazer com que quando for as operações (+, -, *, /) ele resolva mais que um problema sem finalizar o programa…

    ***CÓDIGO MODERADO***

    • Otávio, você precisa utilizar estruturas de repetição pra isso. Essa é uma boa situação para se utilizar a estrutura REPITA-ATÉ.

      Não é difícil, entenda a ideia:

      REPITA
      ESCREVA (“Digite a operação (+, -, *, /): “)
      LEIA (operacao)
      SE operacao <> ‘+’ ou operacao <> ‘-‘ ou operacao <> ‘*’ ou operacao <> ‘/’ ENTÃO
      ESCREVA (“Operação inválida!“)
      FIMSE
      ATÉ operacao = ‘+’ OU operacao = ‘-‘ OU operacao = ‘*’ OU operacao = ‘/’

      Essa lógica valida se o usuário digitou a operação correta, senão ele pede pro usuário digitar de novo … Entendeu a ideia?

      Pra fazer o programa executar novamente sem finalizar a execução, você também deve utilizar uma estrutura de repetição. Veja a ideia da lógica:

      REPITA
      ….. aqui fica todo o código que deverá executar novamente …..
      ESCREVA(“Deseja realizar outra operação? (S/N)”);
      LEIA(resposta)
      ATE resposta = ‘N’ OU resposta = ‘n’

      Nesse caso, se o usuário digitar qualquer coisa diferente de ‘N’ ou ‘n’ o programa vai executar de novo, mas você pode fazer a mesma lógica que eu falei antes pra garantir que o usuário só digitará ‘s’, ‘S’, ‘n’ ou ‘N’.

      Espero que ajude …

      Um abraço!

  • gedima silva santos

    gostei da iniciativa estou iniciando nesta área da computação e tenho dificuldades em construção de algoritmos suas explicações tem me ajudado continue com esse trabalho e com certeza a sua colheita será abundante.
    atenciosamente: gedima silva
    muito obrigada.

  • Zaqueu

    Não estou conseguindo fazer o exercio que tu pediu na prática poderia dar um help pra eu ver em estou errando?

  • Olá Zaqueu, qual a sua dúvida?

    A ideia do exercícios sugerido ao final é simples:
    1. Solicitar que o usuário digite as 4 notas do aluno (armazenando cada nota em uma variável).
    2. Calcular a média ( nota1 + nota2 + nota3 + nota4 ) / 4
    3. Fazer a verificação: Se a média for maior que 6, escrever na tela “Aluno Aprovado”, caso contrário, escrever na tela “Aluno Reprovado”.

    Um abraço e bons estudos!

  • Zaqueu

    olá Gustavo.

    Minha dúvida é a seguinte eu fasso o algoritmo so que quando chega em resultado da erro dê uma olhada nele…
    Escreva (“por favor digite a nota referente a cada bimestre de 0 a 10 “)
    Escreval (” 1°bimestre: “)
    Leia (nota1)
    Escreval (“2°bimestre: “)
    Leia (nota2)
    Escreval (“3°bimestre: “)
    Leia (nota3)
    Escreval (“4°bimestre: “)
    Leia (nota4)
    resultado (nota1+nota2+nota3+nota4)/4
    se resultado >6 entao
    escreval (“Aluno Aprovado”)
    senao
    Escreval (“Aluno Reprovado”)
    fimse

    • zequiel

      para que o código funcione, basta você declarar que a variável resultado receba a operação que deseja fazer, através do comando <-.
      reposta:
      resultado<-(nota1+nota2+nota3+nota4)/4
      só faltou o simbolo receba(<-) depois da variável resultado.

  • Anderson

    Olá, Gustavo!

    Bem, eu tentei e consegui o resultado esperado, contudo não sei se a forma que eu fiz é exatamente a correta e por isso gostaria que você desse uma olhada no que eu fiz:

    var
    nota1, nota2, nota3, nota4: INTEIRO

    inicio
    ESCREVA (“Informe sua nota do primeiro bimestre: “)
    LEIA (nota1)

    ESCREVA (“Informe sua nota do segundo bimestre: “)
    LEIA (nota2)

    ESCREVA (“Informe sua nota do terceiro bimestre: “)
    LEIA (nota3)

    ESCREVA (“Informe sua nota do quarto bimestre: “)
    LEIA (nota4)
    SE (nota1 + nota2 + nota3 + nota4)/4 <= 6 ENTAO
    ESCREVAL ("Aluno reprovado!")
    SENAO
    ESCREVAL ("Aluno aprovado!")
    FIMSE

    fimalgoritmo

    Está certo ou consegui acertar fazendo do modo errado?

    • Anderson, parabéns! É isso mesmo!

      Neste caso não era mesmo necessário declarar uma variável pra armazenar o resultado, visto que ele é utilizado apenas para verificar se o aluno foi aprovado ou reprovado, ou seja, após aquela linha você não precisou mais do valor do resultado.

      Muito bem, a ideia é essa mesmo. Inclusive, como você usou menos variáveis o seu programa é até mais rápido do que se tivesse declarado uma variável para armazenar o resultado!

      Um abraço e bons estudos!

  • Zaqueu, tá quase certo! O problema é que na hora de calcular a média você não atribui o valor resultante na variável resultado.

    Deveria ser assim:
    resultado := (nota1+nota2+nota3+nota4)/4

  • Zaqueu

    Vlw Gustavo! Agora deu certo!

  • Marcos Aurélio Schotka

    Boa tarde, Gustavo Furtado, primeiramente quero te dar os parabéns pelo seu site e que é pessoas como você que faz outras apreenderem.
    Quero te fazer uma pergunta e me responda com sinceridade, eu me formei em Administração e vi que o mercado de trabalho para administração está bagunçado e tomei a decisão de fazer T.I porque acho uma profissão show e quem está nessa área é porque gosta de desafios e gosta de estudar. Estou me dedicando ao máximo na matéria de algoritmos, pois acho que é onde tudo começa, não fico focado somente nas aulas, procuro ler livros, matérias, entrar em sites, ver videos etc… Minha duvida é a seguinte, estou com 29 anos e estou me achando um pouco velho para entrar no mundo da programação, pois ainda não sei nada de linguagem de programação e não sei inglês, quero saber se em dois anos eu fazendo faculdade de T.I, estudando inglês em paralelo é possível eu conseguir um emprego na área de programação e daqui 10 anos ser um profissional gabaritado ou idade vai pesar muito? Existe preconceito com programadores que iniciaram tarde? Agradeço muito a sua atenção, e fico grato se puder me responder.

    • Marcos, te garanto que idade não é problema. O diferencial é a dedicação da pessoa. Se você está mesmo decidido, não desista! O começo é o mais difícil… Continue estudando muito, inglês é muito importante também. No começo é sacrifício, mas é isso que faz o sucesso!

      Não desista! Bons estudos!

  • Gabriel

    var
    nota1 : REAL
    nota2 : REAL
    nota3 : REAL
    nota4 : REAL
    inicio
    // Seção de Comandos
    ESCREVA (“Digite a primeira nota do aluno : “)
    LEIA(nota1)
    ESCREVA (“Digite a segunda nota do aluno : “)
    LEIA(nota2)
    ESCREVA (“Digite a terceira nota do aluno : “)
    LEIA(nota3)
    ESCREVA (“Digite a quarta nota do aluno : “)
    LEIA(nota4)
    SE(nota1+nota2+nota3+nota4)/4>6 ENTAO
    ESCREVA(“Aluno aprovado”)
    SENAO
    ESCREVA(“Aluno reprovado”)
    FIMSE
    fimalgoritmo

    poderia ser assim tambem ne?

    • Gabriel

      Mas não precisa você repetir as “notas” na seção “var”. Basta fazer o seguinte:

      var
      nota1, nota2, nota3, nota4: real.

      Simple. Você gasta menos espaço.

  • Isso mesmo Gabriel.

  • Gabriel Ferreira

    Eu estou iniciando lógica de Programação I, curso técnico em informática.
    Gustavo, o que eu preciso fazer para saber os comandos? Está sendo difícil.
    O que eu faço?

    • Gabriel, precisa praticar. Os comandos mudam de linguagem para linguagem, mas a lógica é quase sempre a mesma.

  • Abia

    Oi, Gustavo.Aqui é Abia..
    Gostaria que me ajudasse a responder um algoritmo simples, mais tenho muita dificuldade de aprender.. Já comecei a ler suas dicas de programação.

    O problema é;
    Fazer um programa que calcule e mostre na tela o quadrado de um número, ou seja, o produto do número pos si mesmo…

  • Bruna

    eu to começando hj com estruturas de decisão queria uma explicação mais simples, um jeito mais facil de conhecer os calculos obrigada

  • fabiany

    oi poderia me ajudar!!???

  • David

    Gustavo,

    favor, pode analisar se está correto?

    algoritmo “aluno_aprovado_reprovado_média”

    var
    nota1, nota2, nota3, nota4, media: real
    numero: inteiro

    inicio
    Escreva (“digite a primeira nota (de 0 a 10): “)
    Leia (nota1)
    Escreva (“digite a primeira nota (de 0 a 10): “)
    Leia (nota2)
    Escreva (“digite a primeira nota (de 0 a 10): “)
    Leia (nota3)
    Escreva (“digite a primeira nota (de 0 a 10): “)
    Leia (nota4)
    media =6 entao
    Escreva (“média”, media,” Aluno aprovado”)
    senao
    Escreva (“média”, media,” ” Aluno reprovado”)
    fimse
    fimalgoritmo

    • Você esqueceu de calcular a média, alterar o texto que você copiou da primeira nota, e testar se a média é maior ou igual a 6, ou seja, SE media >= 6 então…

  • David

    tirei só a variável numero rsrsrs viagei aqui tentanto outra coisa, na verdade, queria uma forma de bloquear a quantidade de numeros que o usuário pode inserir, por exemplo, se digitar o número 11 o programa não executava…

  • David

    Continuo (*viagei*)viajando kkkk

  • arthemyo francisco

    Como faço pra dizer que o numero e – ou+?

    • Olá Arthemio, você só precisa colocar o sinal na frente do número.

      Por exemplo:

      SaldoDisponivel := -100

  • mqmsmclu

    algoritmo “semnome”
    // Função :
    // Autor :
    // Data : 06/04/2015
    // Seção de Declarações
    var
    Nota1,Nota2,nota3:REal
    Aluno:Caracter
    inicio
    // Seção de Comandos
    Escreval(“Informe o Nome do Aluno:”)
    Leia(Aluno)
    Escreval(“Informe A Primeira Nota:”)
    Leia(Nota1)
    Escreval(“Informe a Segunda Nota:”)
    Leia(Nota2)
    Escreval(“Informe a Terceira Nota:”)
    Leia(Nota3)
    se (nota1+nota2+nota3)/3 >=6 Entao

    escreval(“Aprovado Por Media”)
    senao
    Escreval(“Reprovado!!!!!!”)
    Fimse

    FimAlgoritmo

    Fiz Desse Modo, Esta Correto?

    • Muito bem, o algoritmo tá certinho.

      Você calculou a média corretamente, mas não usou o nome do aluno pra nada no algoritmo.

  • Anderson

    Oi Gustavo, estou tentando criar alguns algoritmos bem básicos com base no que você ensinou mas estou errando muito… veja o caso abaixo (desculpa a ignorância)
    Onde estou errando?

    var
    anderson: caractere
    nome: caractere
    inicio
    // Seção de Comandos

    escreval (“Informe seu nome: “)
    leia (nome)
    se nome = anderson entao
    escreval (“Obrigado “, nome )
    senao
    escreval (“Nome incorreto”)
    fimse
    fimalgoritmo

    • Anderson, por que você criou uma variável chamada anderson?

      “anderson” seria um valor, não uma variável. Certo?

      Dá uma lida neste post: http://www.dicasdeprogramacao.com.br/o-que-e-variavel-e-constante/

      No “SE” você deve testar se variável nome é igual a um valor (entre aspas duplas por ser um TEXTO). No caso poderia ficar assim:

      SE nome = “anderson” ENTAO …

      No seu algoritmo, ou você faz assim (testando se o valor do nome é “anderson”) ou você atribui o valor “anderson” à variável anderson. Também funciona.

  • Anderson

    É, não fez sentido nenhum eu criar uma variável anderson hahaha
    Não sabia em que caso colocar aspas!
    Obrigado pela dica!

  • Thiago Nunes

    programa
    {
    funcao inicio()
    {
    inteiro nota1, nota2, nota3, nota4, media
    escreva(“Digite primeira nota: “)
    leia (nota1)
    escreva(“Digite segunda nota: “)
    leia (nota2)
    escreva(“Digite terceira nota: “)
    leia (nota3)
    escreva(“Digite quarta nota: “)
    leia (nota4)

    media = (nota1+nota2+nota3+nota4)/4

    escreva (“Media: “, media, “\n”)

    se (media >=6) então
    escreva (“Voce foi aprovado :)”)
    senao
    escreva(“Voce foi Reprovado! :/”)
    fim-se

    }
    }

    Ficou bom Gustavo? Obrigado pelas dicas e por nos ajudar a iniciar em programação.

    Abraços!

    • Ficou bom Thiago. Continue fazendo exercícios!

      • Mauricio Trotta

        E se quisesse incluir mais uma opção? Por exemplo:
        >=6 então aprovado
        =3 então recuperação
        <3 então reprovado

        Como fazer dessa forma?

  • Herbeth

    Amigo você está parabéns,muitas dúvidas que eu tinha foram esclarecidas vendo apenas em sua página,você é o cara!!!

    • Obrigado Herbeth. Muito bom saber que minha forma de explicar te ajudou.

  • Herbeth

    Galera qual é a diferença de ESCREVA e ESCREVAL?

    • Herberth, a diferença é que o ESCREVAL tem uma quebra de linha no final. O ESCREVA não tem quebra de linha no final.

      Exemplo, se executarmos os comandos abaixo:
      ESCREVA(“a”)
      ESCREVA(“b”)

      Vai aparecer isso na tela:
      ab

      Se usarmos o ESCREVAL:
      ESCREVAL(“a”)
      ESCREVAL(“b”)

      Vai aparecer isso na tela:
      a
      b

  • PV

    Pessoal, boa tarde!

    Estou com a seguinte questão para resolver:

    Preciso digitar 3 valores inteiros e necessito que ao final seja exibido o maior número inteiro digitado. Exemplo: 15, 11, 19. Não estou conseguindo resolver. Alguém pode me ajudar?

  • Glaucia D. Vilalva

    Gustavo, estou cursando o primeiro modulo de tecnico de informatica,estava voando nas aulas de algoritmo,mas com suas dicas me esclareceram muitas coisas, ja nao tenho mas duvidas,obrigada (Glaucia)

  • Carol

    Olá Gustavo, tudo bem?

    Gostaria que me esclarecesse algumas duvidas. Eu estou iniciando seu curso agora, porém, estou olhando outras fontes também, eu reescrevi esse algoritmo,abaixo. Só que antes ele não estava retornando o que pedia o exercício, ai eu olhei o seu algoritmo e incluir o Dinheiro:= 10 e ele passou a retornar-me o que pedia. Eu gostaria de saber o que significa esses sinais := E porque é importante coloca-lo no inicio do algoritmo? E quando colocar?

    O exercício pedia : Programa pede ao usuário uma quantia de dinheiro que tem sobrando e sugira,caso tenha 10 reais ou mais , que vá ao cinema, se não tiver, fique em casa vendo tv. O erro foi, que antes deu incrementar comando Dinheiro :=10, ele me retornava Vá ao cinema essa noite, mesmo colocando valores menores e depois que coloquei o comando ele retornou de forma correta. Desde já agradeço!

    Escreval(” *** Serviço de informatizado de Sugestões *** “)
    Dinheiro := 10
    Escreva( “Quanto dinheiro você tem sobrando?”)
    leia(Dinheiro)
    Se Dinheiro >= 10 Entao
    Escreval( ” Vá ao cinema essa noite “)
    Senao
    Escreval( ” Fique em casa vendo tv “)
    fimse
    Escreva( ” Obrigada e volte sempre “)

    fimalgoritmo

    • Carol, o símbolo := é utilizado para armazenar um valor a uma variável. No caso se tivermos “dinheiro := 10” isso significa que estamos colocando o valor 10 na variável dinheiro. Ou seja, esse seria o saldo no momento. Quando alocamos um valor a uma variável no início de um algoritmo, chamamos isso de “inicializar uma variável”, ou seja, colocar um valor inicial à variável. Já no seu algoritmo você não precisa disso porquê você já está lendo um valor que o usuário digita e aloca nessa variável.

  • souza8805@gmail.com

    boa noite Gustavo to com uma dificuldade em elaborar um trabalho de Estruturas de decisão,
    Para conseguir passear na montanha russa a pessoa deve ter ao menos 1,50 metros de altura.
    Para elaborar o algoritmo, utilize uma estrutura de decisão (Se, Se não). gostaria de uma ajuda sua !

    • Não dou respostas, mas segue aí a dica para você criar o algoritmo…
      declare a variável altura
      peça que o usuário digite a altura. (ESCREVA na tela)
      armazene na variável altura o valor que o usuário digitar (LEIA)
      faça o teste de condição:
      SE altura >= 1,50 ENTÃO escreva na tela que o usuário pode passear na montanha russa
      senão (ou seja altura < 1,50) escreva na tela que o usuário NÃO pode passear na montanha russa? Deu pra entender a ideia? Bons estudos!

      • Boa noite Gustavo Furtado, colega acima pediu ajuda para elabora um algoritmo, eu tentei fazer porém o mesmo deu erro…

        var
        Nome : Caractere
        Altura : Real
        inicio
        // Seção de Comandos

        Escreva(“Informe Seu Nome: “)
        Leia(Nome)
        Escreva(“Informe Sua Atura: “)
        Leia(Altura)

        fimalgoritmo

        Fala que encontrou um problema e espera uma expressão do Tipo Real, mas variável altura é declarada como Real, o que estou fazendo de erro que eu não consegui identificar o problema!

        • Thiago, executei o seu código e funcionou corretamente.

          Que valor você está digitando quando o algoritmo pede para digitar a altura?

          Talvez se você digitar uma letra, por exemplo, aconteça o erro pois ele espera um valor numérico (Real).

          • Executei novamente e funcionou, antes quando colocava algum valor com casa decimal que apresentava o erro, agora funcionou.

          • Aldinice de Santana Santos

            Estou com dificuldade em responder essa atividade poderia me ajudar.
            1- Relate o contexto de dois exemplos de atividades que você usualmente realiza através do computador que demonstra o uso das estruturas de decisão.

  • souza8805@gmail.com

    obrigado pela dica ajudou muito !

  • Lucréscima Maria Aparecida Silva

    gente por favor me ajudem nesses exercícios estou de reavaliação e preciso entregar amanhã…obrigada

    Vamos imaginar que uma administradora de um teatro contratou você para desenvolver um software para venda de ingressos. O programa deve funcionar da seguinte maneira:

    O usuário informa se é estudante ou não e o setor do teatro desejado;
    O software retorna o preço do ingresso;
    O usuário informa a quantidade de ingressos desejada;
    O software pergunta se o usuário deseja fazer mais uma compra. Caso positivo, refaz-se o processo de compra, caso negativo, informa-se a quantidade de ingressos adquirida de cada setor e o valor total a pagar. Veja abaixo a tabela de preços:

    Setor frontal: R$100,00 (inteira); R$50,00 (meia);
    Setor intermediário: R$80,00 (inteira); R$40,00 (meia);
    Setor superior: R$ 120,00 (inteira); R$ 60,00 (meia).
    Dica: Você deverá utilizar a estrutura condicional SE composta, juntamente com a demais estrutura de repetição.

    • Lucrescima

      Desenvolva um programa no Visualg que receba do usuário o nome, a função na empresa
      e o salário bruto de 10 funcionários, em seguida apresente uma lista, sendo que cada linha da lista deve conter as seguintes informações:

      Nome do Funcionário, Cargo ou Função, Salário do Funcionário

      Após a impressão da lista, o programa deverá informar ao usuário o nome e a função
      do funcionário com o maior salário.

      DICA: Utilize vetores para armazenar os dados de entrada.
      Caso queira organizar a apresentação dos dados o comando limpatela permite apagar informações escritas na tela do usuário.

      Metodologia de Avaliação:
      O aluno deverá desenvolver o trabalho no software Visualg e enviar o arquivo .alg até a data definida nesta atividade.
      A avaliação do programa será feita segundo barema abaixo:

      Funcionamento correto do programa: 60%
      Declaração correta das variáveis: 10%
      Uso correto da sintaxe dos comandos e estruturas: 20%

  • Aldinice de Santana Santos

    Olá bom dia! Estou com dificuldade em responder essa atividade poderia me ajudar.
    1- Relate o contexto de dois exemplos de atividades que você usualmente realiza através do computador que demonstra o uso das estruturas de decisão.

  • Olá, Gustavo sou novo em programação, e queria saber qual a diferença entre a estrutura heterogenea e homogenea?

  • Lucas Moiano Rodrigues

    Gustavo fiz o algoritimo mas está dando erro na linha 20 veja o que eu fiz:

    algoritmo “ResultadoEscolar”

    var

    Nota1 : REAL

    Nota2 : REAL

    Nota3 : REAL

    Nota4 : REAL

    Aluno : CARACTERE

    inicio

    ESCREVA (“Informe o nome do aluno: “)

    LEIA (Aluno)

    ESCREVA (Aluno, ” informe a nota do 1° Bimestre: “)

    LEIA (Nota1)

    ESCREVA (Aluno, ” informe a nota do 2° Bimestre: “)

    LEIA (Nota2)

    ESCREVA (Aluno, ” informe a nota do 3° Bimestre: “)

    LEIA (Nota3)

    ESCREVA (Aluno, ” informe a nota do 4° Bimestre: “)

    LEIA (Nota4)

    SE (Nota1+Nota2+Nota3+Nota4/)4 >=6 ENTAO

    ESCREVAL (Aluno, ” você foi aprovado, Parabéns!”)

    SENAO

    ESCREVA (Aluno, ” você foi reprovado!”)

    FIMSE

    fimalgoritmo

  • João Almeida

    Cara estou enrolado para fazer uma divisão utilizando o SE-ENTAO.
    Pode me ajudar dano algum exemplo?

    • Divisão não dá pra fazer apenas com SE-ENTÃO.

      Neste caso, você deve utilizar algum laço de repetição (ENQUANTO-FAÇA, REPITA-ATÉ, ou até mesmo o PARA-…-FAÇA).

      A minha dica pra você é a seguinte: organize o passo-a-passo que você aprendeu pra fazer uma divisão e tente aplicar isso num algoritmo.

      • João Almeida

        Certo

  • Josimar Oliveira

    Boa tarde Gustavo, estou tentando fazer um exemplo simples apenas com as respostas S/N mas não estou conseguindo. Poderia me ajudar por favor?
    Aqui o código que estou usando:
    ———————————————————–
    algoritmo “Andança”
    var
    Resp: Logico
    inicio
    Escreva(“Posso andar? [S/N] “)
    Leia(Resp)
    Se (Resp) = Verdadeiro entao
    Escreva(“Andei. “)
    senao
    Escreva(“Vou ficar aqui. “)
    FimSe
    fimalgoritmo
    —————————————————————-
    Obrigado desde já!

    • Josimar, o Visualg só armazena valores “Verdadeiro” ou “Falso” em variáveis do tipo Lógico.

      Se quiser mesmo usar S ou N, deverá armazenar o valor numa variável do tipo CARACTER.

      • Josimar Oliveira

        Vlw