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










