di_sakai Postado Maio 18, 2012 Denunciar Share Postado Maio 18, 2012 Salve!!Fellas to precisando de um ajuda de voce em estou fazendo um algoritimo com menu e submenuo primeiro menu eu consegui! mas quando eu tipo uma opçao diferente o programa não rodapor favor da uma ajuda ai não sei onde eu estou errandoprogram submenu;uses winCrt;{ Função : Programa com menu e submenu}{ Autor : Mateus}{ Data : 2008-09-20}{ Seção de Declarações}varMenu1, Menu2, Menu3 : char;EscolhaConv: string;{Tipo de Conversão}TipoConv : string;m,cm,mm: integer;min: integer;num : integer;begin { Seção de Comandos} cm:= 0; mm:= 0; min:= 0; num:= 0; writeln ('Por favor escolha uma das seguintes opções abaixo:'); writeln (''); writeln ('Escolha um tipo de conversao : '); writeln (''); writeln ('CM para Conversão de medidas'); writeln ('CT para Conversão de tempo'); writeln ('CP para Conversão de peso'); readln (EscolhaConv); writeln (''); while (EscolhaConv <> 'CM') and (EscolhaConv <> 'CT') and (EscolhaConv <> 'CP') do begin writeln ('Escolha de Conversão Invalida. Digite novamente'); readln (EscolhaConv); end; writeln (''); if (EscolhaConv = 'CM') then begin writeln ('Conversão de Medidas'); writeln (''); writeln ('1 - para Converter Metros em Centimentos'); writeln ('2 - para Converter Metros em Milimetros '); readln(TipoConv); while (Tipoconv <> '1') and (TipoConv <> '2') do begin writeln ('Conversão Indisponivel. Digite novamente'); readln(TipoConv); end; if (TipoConv = '1') then begin write ('Digite o numero a ser convertido para Centimetro : '); readln (num); cm := (num * 100); writeln ('Resultado da Conversão é : ',cm,',', ' cm'); readln(cm); end else if (TipoConv = '2') then begin write ('Digete o numero a ser convertido para Milimetros : '); readln(num); mm := (num * 1000); writeln ('Resultado da Conversão é : ',mm,',', ' mm'); readln(mm); end else begin if (EscolhaConv = 'CT') then begin writeln ('Conversão de Medidas'); writeln (''); writeln ('1 - para Converter horas em minutos'); writeln ('2 - para Converter Metros em segundos '); readln(TipoConv); while (Tipoconv <> '1') and (TipoConv <> '2') do begin writeln ('Conversão Indisponivel. Digite novamente'); readln(TipoConv); end; begin if (TipoConv = '1') then begin write ('Digite o numero a ser convertido para Centimetro : '); readln (num); cm := (num + 60); writeln ('Resultado da Conversão é : ',min,',', ' min'); readln(min); end; end; end; end endend. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
di_sakai
Salve!!
Fellas to precisando de um ajuda de voce em estou fazendo um algoritimo com menu e submenu
o primeiro menu eu consegui! mas quando eu tipo uma opçao diferente o programa não roda
por favor da uma ajuda ai não sei onde eu estou errando
program submenu;
uses winCrt;
{ Função : Programa com menu e submenu}
{ Autor : Mateus}
{ Data : 2008-09-20}
{ Seção de Declarações}
var
Menu1, Menu2, Menu3 : char;
EscolhaConv: string;{Tipo de Conversão}
TipoConv : string;
m,cm,mm: integer;
min: integer;
num : integer;
begin
{ Seção de Comandos}
cm:= 0;
mm:= 0;
min:= 0;
num:= 0;
writeln ('Por favor escolha uma das seguintes opções abaixo:');
writeln ('');
writeln ('Escolha um tipo de conversao : ');
writeln ('');
writeln ('CM para Conversão de medidas');
writeln ('CT para Conversão de tempo');
writeln ('CP para Conversão de peso');
readln (EscolhaConv);
writeln ('');
while (EscolhaConv <> 'CM') and (EscolhaConv <> 'CT') and (EscolhaConv <> 'CP') do
begin
writeln ('Escolha de Conversão Invalida. Digite novamente');
readln (EscolhaConv);
end;
writeln ('');
if (EscolhaConv = 'CM') then begin
writeln ('Conversão de Medidas');
writeln ('');
writeln ('1 - para Converter Metros em Centimentos');
writeln ('2 - para Converter Metros em Milimetros ');
readln(TipoConv);
while (Tipoconv <> '1') and (TipoConv <> '2') do
begin
writeln ('Conversão Indisponivel. Digite novamente');
readln(TipoConv);
end;
if (TipoConv = '1') then
begin
write ('Digite o numero a ser convertido para Centimetro : ');
readln (num);
cm := (num * 100);
writeln ('Resultado da Conversão é : ',cm,',', ' cm');
readln(cm);
end
else
if (TipoConv = '2') then
begin
write ('Digete o numero a ser convertido para Milimetros : ');
readln(num);
mm := (num * 1000);
writeln ('Resultado da Conversão é : ',mm,',', ' mm');
readln(mm);
end
else
begin
if (EscolhaConv = 'CT') then begin
writeln ('Conversão de Medidas');
writeln ('');
writeln ('1 - para Converter horas em minutos');
writeln ('2 - para Converter Metros em segundos ');
readln(TipoConv);
while (Tipoconv <> '1') and (TipoConv <> '2') do
begin
writeln ('Conversão Indisponivel. Digite novamente');
readln(TipoConv);
end;
begin
if (TipoConv = '1') then
begin
write ('Digite o numero a ser convertido para Centimetro : ');
readln (num);
cm := (num + 60);
writeln ('Resultado da Conversão é : ',min,',', ' min');
readln(min);
end;
end;
end;
end
end
end.
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.