Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

M@rc

Finalizar algoritmo no visualg

Recommended Posts

Blz pessoal?

 

Fiz um algoritmo para fazer a media de três notas e gostaria que ao escrever a nota e ela for menor ou igual a 2 não peça mais a nota seguinte e escreva reprovado. Como faço isso no visualg?

 

var
nota_1, nota_2, nota_3, nota_minima, media_minima:inteiro
media:real
inicio
// Seção de Comandos
nota_minima<-2
media_minima<-6
escreval("Nota 1")
leia(nota_1)
se(nota_1 <= nota_minima)entao
escreval("Reprovado")
fimse
escreval("Nota 2")
leia(nota_2)
se(nota_2 <= nota_minima)entao
escreval("Reprovado")
fimse
escreval("Nota 3")
leia(nota_3)
se(nota_3 <= nota_minima)entao
escreval("Reprovado")
fimse
media<-(nota_1+nota_2+nota_3)/3
se(media <= media_minima)entao
escreval("Media final: Reprovado")
senao
escreval("Media:",media," Parabéns")
fimse
fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

CARA NÃO ENTENDI MUITO BEM SUA PERGUNTA V SE ISSO AJUDA

var
n1,n2,n3,n4:inteiro
media:real
inicio
escreval("informe 4 notas do aluno ")
leia(n1,n2,n3,n4)
media <-(n1+n2+n3+n4)/4
se media >=2 entao
escreval("aluno foi aprovado",media)
senao
escreval("aluno reprovado ",media)
fimse
fimalgoritmo


ANALISA ESSA TAMBÉM...

var
n1,n2,n3,n4:inteiro
media, media_n ,nota_exam,nova_not: Real
Inicio
escreval("digite as 4 notas : ")
leia (n1,n2,n3,n4)
media<- (n1+n2+n3+n4)/4
escreva (" A média do aluno é: ", media)
se(media>=7) entao
escreva("O aluno está aprovado")
senao
escreval(" O aluno foi reprovado")
escreval(" Informe nota do exame")
leia(nota_exam)
nova_not <- (nota_exam + media)/2
Se(nova_not >= 5)entao
escreva(" O aluno foi aprovado com média: ", nova_not)
Senao
escreva (" O aluno foi reprovado com média: ", nova_not)
Fimse
Fimse

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que eu queria é que ao colocar a primeira nota e ela for por exemplo 1 o programa escreva reprovado (isso ja esta fazendo) e que não continue pedindo a segunda nota ja que por ter tirado a primeira nota menor do que 2 ele ja esta reprovado mesmo que a segunda e terceira nota seja 10. Ou seja quero interromper o programa dependendo da nota que o usuario inserir.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O RACIOCINIO SERIA ESSE + -

var
NUMERO: VETOR [1..3] DE INTEIRO
I: INTEIRO
inicio
PARA I DE 1 ate 3 FACA
ESCREVA("DIGITE" ,I,"º NOTA " )
LEIA(NUMERO)
SE (NUMERO)<=2 ENTAO
ESCREVA("REPROVADO")
INTERROMPA
FIMSE
FIMPARA

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deu erro falando que o algoritmo foi interrompido inesperadamente. Tinha que colocar a nota 1 e já ir direto para a parte: escreval("Media final: Reprovado") e não fechar o algoritmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O RACIOCINIO SERIA ESSE + -

var
NUMERO: VETOR [1..3] DE INTEIRO
I: INTEIRO
inicio
PARA I DE 1 ate 3 FACA
ESCREVA("DIGITE" ,I,"º NOTA " )
LEIA(NUMERO)
SE (NUMERO)<=2 ENTAO
ESCREVA("REPROVADO")
INTERROMPA
FIMSE
FIMPARA
FIMALGORITMO

Compartilhar este post


Link para o post
Compartilhar em outros sites
ME RESPONDA SE O RACIOCINIO ESTA CORRETO


NUMERO: VETOR [1..3] DE INTEIRO

I: INTEIRO

MEDIA:REAL

inicio


PARA I DE 1 ate 3 FACA

ESCREVA("DIGITE" ,I,"º NOTA " )

LEIA(NUMERO)

SE (NUMERO)<=2 ENTAO

ESCREVA("REPROVADO")

FIMALGORITMO

FIMSE

FIMPARA


MEDIA<-(NUMERO[1]+NUMERO[2]+NUMERO[3])/3

ESCREVA("A MEDIA E",MEDIA)

FIMALGORITMO

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigos.

 

Amigo M@rc, para o que você deseja, e da forma como está feito você teria que fazer o seguinte:

 

1) Criar uma variável, pode ser do tipo "lógico"

2) Dentro da primeira condição "SE" após a leitura da primeira nota, caso ele passe por ele você grava essa variável como "verdadeiro".

3) Antes de ler a segunda nota, você cria uma condição "SE" verificando a situação do passo 2. Caso o valor dela seja verdadeiro, então você pula todo o restante do processo.

 

Nossa mas porque fazer essa volta? Por que infelizmente, ao menos até aonde eu sei, o VisuAlg não oferece um recurso do tipo "exit" ou "abort" onde você possa forçar uma saída.

 

Outra sugestão seria trabalhar da forma como o amigo Sérgio Cavalcante postou. A única adaptação que você teria que fazer é utilizar a instrução interrompa dentro da condição "SE" quando a nota digitada for "<" menor que o mínimo permitido.

 

Espero ter ajudado.

 

Até a próxima. :thumbsup:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estou começando a aprender logica de programação e esse foi meu primeiro algoritmo. Não tenho muito conhecimento das possibilidades do visualg. A minha intenção é essa, ao inserir uma determinada resposta o programa pule as etapas seguintes indo para o fim do algoritmo, no caso informando que o aluno foi reprovado e não pedindo as notas 2 e 3. Como você disse pode ser que o visualg não ofereça essa possibilidade. Não testei ainda o que o Sergio passou mas vou testar a solução dele e a sua.

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

ME RESPONDA SE O RACIOCINIO ESTA CORRETO
NUMERO: VETOR [1..3] DE INTEIRO
I: INTEIRO
MEDIA:REAL
inicio
PARA I DE 1 ate 3 FACA
ESCREVA("DIGITE" ,I,"º NOTA " )
LEIA(NUMERO)
SE (NUMERO)<=2 ENTAO
ESCREVA("REPROVADO")
FIMALGORITMO
FIMSE
FIMPARA
MEDIA<-(NUMERO[1]+NUMERO[2]+NUMERO[3])/3
ESCREVA("A MEDIA E",MEDIA)
FIMALGORITMO

 

Deu certo Sergio, fiz apenas um complemento da media minima final para ser aprovado. Ficou assim:

 

VAR
NUMERO: VETOR [1..3] DE INTEIRO
I: INTEIRO
MEDIA:REAL
MEDIA_MIN:REAL
INICIO
MEDIA_MIN<-4
PARA I DE 1 ate 3 FACA
ESCREVA("DIGITE" ,I,"º NOTA " )
LEIA(NUMERO)
SE (NUMERO)<=2 ENTAO
ESCREVA("REPROVADO")
FIMALGORITMO
FIMSE
FIMPARA
MEDIA<-(NUMERO[1]+NUMERO[2]+NUMERO[3])/3
ESCREVA("A MEDIA É ",MEDIA)
SE (MEDIA <= MEDIA_MIN)ENTAO
ESCREVAL(" REPROVADO")
SENAO
ESCREVAL(" APROVADO")
FIMSE
FIMALGORITMO
Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.