Você está na página 1de 4

PROGRAM JESB_NOTAS; uses crt; var //definicao das variaveis NomeAluno,Disciplina:STRING; NotaAV1, NotaAV2, NotaProva, Pontuacao, Media, NotaNecessariaProva,

Nota_Prova_F inal:REAL; opc:INTEGER; Label Menu_Principal, Menu_Secundario; //definicao dos rotulos para retorno do c omando goto begin clrscr;//limpa a tela

menu_principal: //marcacao do ponto de retorno do goto para o rotulo menu_princi pal clrscr; Notaav1 := 0; Notaav2 := 0; Notaprova := 0; Pontuacao := 0; Media := 0; Notanecessariaprova := 0; Nota_Prova_Final := 0; gotoxy(1, 1); writeln('Ol, ',NomeAluno,'!'); gotoxy(20, 3); writeln('JESB - SISTEMA DE CONTROLE E DESEMPENHO DO CURSO'); writeln(' ='); writeln(' | 1 - Algoritmos e Lgica de Programa o |'); writeln(' | 2 - Fundamentos de Matematica para Computa o |'); writeln(' | 3 - Introdu o Computa o |'); writeln(' | 4 - Introdu o ao Trabalho Cientfico |'); writeln(' | 5 - Comunica o |'); writeln(' | 6 - Sobre |'); writeln(' | 7 - Sair |'); writeln(' ================================================== ='); gotoxy(30, 13); write('Indique o numero da Op o: '); gotoxy(57, 13); readln(opc); {inicia uma estrutura condicional com "CASE OF" para atualizar a variavel "Disciplina" conforme a opcao escolhida no Menu Princi pal} case opc of 1: begin ================= Menu principal =================

Disciplina := 'Algoritimos e Lgica de Programa o' end; 2: begin Disciplina := 'Fundamentos de Matemtica para Computa o' end; 3 : begin Disciplina := 'Introdu o end; Computa o'

4 : begin Disciplina := 'Introdu o ao Trabalho Cientfico' end; 5 : begin Disciplina := 'Comunica o' end; {Se a opcao escolhida no Menu Principal for a 6 - Sobre, exibe o quadro abaixo e retorna para o Menu Principal} 6 : begin clrscr; gotoxy(25,3); writeln('JESB - SISTEMA DE CONTROLE E DESEMPENHO DO CURSO'); writeln; writeln(' =========================== SOBRE ==== ======================='); writeln(' | |'); writeln(' | Verso do Programa : 1.0 |'); writeln(' | |'); writeln(' | Nome dos Desenvolvedores: XXXXXXXXX X |'); writeln(' | |'); writeln(' | Data da ltima Modifica o: 22 /05/2010. |'); writeln(' | |'); writeln(' ====================================== ======================='); writeln(); writeln('Pressione qualquer tecla para voltar ao Menu Principal. ..'); readkey(); goto menu_principal; end; {Se a opcao escolhida no Menu Principal for a 7 - Sair, sai direto do programa sem executar o codigo abaixo do laco do CASE} 7 : begin EXIT; end;

else {Se nenhuma das opcoes do laco do CASE OF for escolhida, exibe msg abaixo e retorna para o Menu Principal} Begin writeln('Opcao invalida'); writeln('pressione qualquer tecla para continuar'); readkey(); goto menu_principal; end; end;//fim do case clrscr; writeln('Lan amentos de notas da disciplina: ',Disciplina,'.'); writeln(); writeln('Digite 0 (zero) se no tiver nota.'); writeln(); write('Entre com o valor da nota da avalia o virtual 1 : '); readln(notaav1); writeln(); write('Entre com o valor da nota da avalia o virtual 2 : '); readln(notaav2); writeln(); write('Entre com o valor da nota da prova : '); readln(notapr ova); Pontuacao := ((notaav1 * 2) + (notaav2 * 2) + (notaprova * 3)); Media := pontuacao / 7; clrscr; writeln(); writeln('JESB - SISTEMA DE CONTROLE E DESEMPENHO DO CURSO'); writeln(); if pontuacao >= 49 then begin writeln('Status Atual: Aprovado'); writeln('Pontuacao: ',pontuacao:2:2); writeln('Media: ',Media:2:2); notanecessariaprova := (49 - (notaav1 * 2 + notaav2 * 2)) / 3; writeln('Nota necessaria na prova: ',notanecessariaprova:2:2); writeln(); end; if (pontuacao >= 28) and (pontuacao <= 48) then begin writeln('Status Atual: Prova Final'); writeln('Pontuacao: ',pontuacao:2:2); writeln('Media: ',Media:2:2); nota_prova_final := (50 - pontuacao) / 3; writeln('Nota necessaria na prova final: ',nota_prova_final:2:2); writeln(); end; if pontuacao < 28 then begin writeln('Status Atual: Reprovado'); writeln('Pontuacao: ',pontuacao:2:2); writeln('Media: ',Media:2:2); writeln();

end; writeln('pressione qualquer tecla para continuar'); readkey(); menu_secundario: clrscr; gotoxy(20, 3); writeln('JESB - SISTEMA DE CONTROLE E DESEMPENHO DO CURSO'); writeln(' ================================================== ='); writeln(' |'); writeln(' |'); writeln(' ='); gotoxy(30, 8); write('Digite (escolha) sua op o: '); gotoxy(59, 8); readln(opc); case opc of 1: Begin goto menu_principal; end; 2: Begin exit; end; else Begin writeln('Opcao invalida'); writeln('pressione qualquer tecla para continuar'); readkey(); clrscr; goto menu_secundario end; end; ================================================== | 2 - Sair do Programa | 1 - Voltar ao Menu Principal

readkey(); // until opc = 7; END.

Você também pode gostar