Logo Hardware.com.br
lucas-15
lucas-15 Membro Senior Registrado
323 Mensagens 2 Curtidas

Ajuda com algorítimo

#1 Por lucas-15 16/08/2012 - 13:14
Olá pessoal, preciso da ajuda de vocês para criar um algorítimo!

Vou explicar como seria... Na minha faculdade tem 3 avaliações (P1, P2, P3) dessas três a menor é descartada, somasse as duas e divide por dois.


Eu queria fazer um algorítimo que lê-se as e notas, calculasse a média, e mostra-se se passou ou foi reprovado.


Eu fiz errado, porque ele soma as 3 e divide por 3, mas deem uma olhada:

var
NOTA, NOTA2, NOTA3: REAL
inicio


ESCREVAL ("Calcule sua média:")
ESCREVAL ("Informe sua P1:")
LEIA (NOTA)
ESCREVAL ("Informe sua P2:")
LEIA (NOTA2)
ESCREVAL ("Informe sua P3:")
LEIA (NOTA3)
ESCREVAL ("Sua média é:", (NOTA + NOTA2 + NOTA3)/3)


fimalgoritmo



Aguardo ajuda de vocês, obrigado!
TerraSkilll
TerraSkilll Zumbi Moderador
4.1K Mensagens 1.2K Curtidas
#4 Por TerraSkilll
16/08/2012 - 13:33
Pois é, faltou você ver qual dos três valores é o menor, descartá-lo, somar os outros dois e dividir por 2. Mas isso creio que você já sabe....

Se o que você quer é saber como fazer isso, você basicamente terá que ter um conjunto de instruções if e else (se e senão), para agrupar as possibilidades em pares (NOTA+NOTA2 ou NOTA+NOTA3 ou NOTA2+NOTA3). Dica: coloque o resultado em outra variável antes de dividir por 2.

Abraço.
Contribua para um fórum melhor: pense antes de postar.
"It isn't a contest. Just enjoy the ride." -> Seth Vidal
Hardware.com.br no Youtube!
t3sting
t3sting Super Participante Registrado
717 Mensagens 38 Curtidas
#5 Por t3sting
16/08/2012 - 13:46
[code=rich]var
NOTA, NOTA2, NOTA3,MENOR,CONTADOR: REAL
inicio


ESCREVAL ("Calcule sua média:")
ESCREVAL ("Informe sua P1:")
LEIA (NOTA)
MENOR <- NOTA
ESCREVAL ("Informe sua P2:")
LEIA (NOTA2)
SE NOTA2 < MENOR
MENOR <- NOTA2
CONTADOR <- CONTADOR + NOTA
SENAO
CONTADOR <- CONTADOR + NOTA2
ESCREVAL ("Informe sua P3:")
LEIA (NOTA3)
SE NOTA3 < MENOR
MENOR <- NOTA3
CONTADOR <- CONTADOR + NOTA2
SENAO
CONTADOR <- CONTADOR + NOTA3

ESCREVAL ("Sua média é:", CONTADOR/2)
fimalgoritmo[/code]

Cara, não fiz o teste de mesa, mas acho que a lógica deve ficar mais ou menos assim.
A lógica e a razão não salvam.!

http://omundoeh.blogspot.com
donigmjr
donigmjr Novo Membro Registrado
9 Mensagens 0 Curtidas
#7 Por donigmjr
16/08/2012 - 20:51
LUCAS-15 um conselho: sempre que não conseguir fazer um algorítimo, insista e tente de todas as formas até conseguir transmitir o que está na sua cabeça para a linguagem da máquina. Caso o não consiga de nenhuma maneira pode pedir ajuda. Mas lembre que quando se esforça você está praticando lógica de programação.

Ai vai o código de um jeito bem simples de entender:


var
NOTA, NOTA2, NOTA3,RESULTADO : REAL
inicio
//ENTRADA DE DADOS
ESCREVAL ("Calcule sua média:")
ESCREVA ("Informe sua P1:")
LEIA (NOTA)
ESCREVA ("Informe sua P2:")
LEIA (NOTA2)
ESCREVA ("Informe sua P3:")
LEIA (NOTA3)
//PROCESSAMENTO


// comparação de nota
se (nota < nota2) e (nota < nota3) entao
resultado <- (nota2 + nota3) / 2
senao
// comparação de nota2
se (nota2 < nota) e (nota2 < nota3) entao
resultado <- (nota + nota3) / 2
senao
//compração de nota3
//resultado <- (nota + nota2) / 2
se (nota3 < nota) e (nota3 < nota2) entao
resultado <- (nota + nota2) / 2
fimse
fimse
fimse


//SAÍDA DE DADOS
ESCREVAL ("Sua média é:", RESULTADO)
fimalgoritmo
lucas-15
lucas-15 Membro Senior Registrado
323 Mensagens 2 Curtidas
#8 Por lucas-15
17/08/2012 - 10:42
donigmjr disse:


Quero te parabenizar, não pelo algorítimo ter rodado, mas sim pelo seu comentário, sobre tentar até conseguir. Fiquei tão animado, que olhei o seu, olhei as outras dicas acima, e criei um algorítimo um pouco diferente, porém com a mesma função!
Ah, o seu ficou perfeito, só fiz outro para estudar mesmo. Obrigado, e aqui vai o algorítimo, para vocês darem uma olhada!


var


nota, nota2, nota3, menornota:real


inicio


escreval ("Calcule sua média:")
escreva("Informe sua nota na P1: ")
leia (nota)
escreva ("informe sua nota na P2: ")
leia (nota2)
escreva ("Informe sua nota na P3: ")
leia (nota3)
se (nota < nota2) e (nota < nota3) entao
menornota <- (nota)
senao
se (nota2 < nota) e (nota2 < nota3)entao
menornota <- (nota2)
senao
se (nota3 < nota) e (nota3 < nota2)entao
menornota <- (nota3)
senao
se (menornota = 0) entao
menornota <- (nota)
fimse
fimse
fimse
fimse
escreva ("Sua média é: ", (nota + nota2 + nota3 - menornota) /2)
fimalgoritmo
"A melhor maneira de prever o futuro é inventá-lo."


Alan Kay
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal