Estou desenvolvendo um trabalho final para a faculdade que tenho que entregar na terça-feira agora... É um trabalho simples em PASCAL... Mas não se preoculpem porque eu não vim aqui pra pedir ng que faça pra mim pois acho isso errado e ridículo, como alguns tem feito por aqui... Eu só preciso de uma ajuda e uma sugestão talvez....
É o seguinte... o programinha é pra fazer tipo uma tabela de rodoviária com as distâncias de uma cidade para outra.... Só que o professor só me cobrou 5 cidades e mesmo assim eu posso inventar uma suposta distância entre elas... Pois bem...
Aí eu comecei inventando algo... fiz uma espécie de menu e tals...tudo certinho... aí se a pessoa informar que a cidade onde ela está é a mesma cidade onde ela deseja ir o programa diz que a distância entre as duas cidades é de 0KM, mas ele só informa isso caso as duas opcões forem iguais as letras correspondentes ao menu... aí se a pessoa digitar duas opções, duas letras que não existem no menu, o programa diz que a letra tal não existe e pergunta se o usuáriod eseja continuar com a pesquisa ou não... pois bem.. tá tudo aí no abaixo... Acontece que o código tá ficando enorme e eu ainda nem fiz as instruções necessárias para informar o usuário uma suposta distância entre uma cidade ou outra! Sem falar que na parte onde ele deve dizer que a distância entre as duas cidades é de 0Km não tá funcionando...
Alguém pode me ajudar? O código está aí em baixo ou então ele pode ser baixado nesse endereço aqui. Esse arquvo está em PAS.. Fiz ele no PASCAL ZIM! Aí está o código abaixo:
Program Pzim; Var x:integer; a,b,c,d,e:string; opcao1,opcao2,opcao3:string; begin write('==============================================================='); writeln('================'); write('(A)Rio de Janeiro '); write('(B)Sao Paulo '); write('(C)Minas Gerais '); write('(D)Brasilia '); writeln('(E)Curitiba '); write('==============================================================='); writeln('================'); x:=1; while x=1 do begin writeln('Consulte o menu acima:'); write('Digite a letra correspondente a cidade em que voce se encontra: '); readln(opcao1); write('Digite a letra correspondente a cidade para onde voce deseja ir: '); readln(opcao2); if opcao1=opcao2 then begin if (opcao1='a') and (opcao2='a') then begin if (opcao1='b') and (opcao2='b') then begin if (opcao1='c') and (opcao2='c') then begin if (opcao1='d') and (opcao2='d') then begin if (opcao1='e') and (opcao2='e') then begin writeln; writeln('A distândia entre essas duas cidades é de 0Km'); writeln('Você deseja continuar fazendo outra pesquisa? [S/N]: '); readln(opcao3); if opcao3='n' then begin writeln; writeln('Obrigado por fazer uso de nosso programa! Até a próxima!'); x:=0; end else if opcao3='s' then begin x:=1; writeln; end; end; end; end; end; end; end; if opcao1=opcao2 then begin if (opcao1<>'a') and (opcao2<>'a') then begin if (opcao1<>'b') and (opcao2<>'b') then begin if (opcao1<>'c') and (opcao2<>'c') then begin if (opcao1<>'d') and (opcao2<>'d') then begin if (opcao1<>'e') and (opcao2<>'e') then begin writeln; writeln('Você digitou uma letra que não corresponde a nenhuma das opções do menu acima.'); write('Deseja tentar novamente? [S/N]: '); readln(opcao3); if opcao3='n' then begin writeln; writeln('Obrigado por fazer uso de nosso programa! Até a próxima!'); x:=0; end else if opcao3='s' then begin x:=1; writeln; end; end; end; end; end; end; end; end; end.
Se alguém puder me ajudar obrigado,
T.C