Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Uebung2;
- const n=4;
- start='b';
- ende='e';
- function Name(ort:Char):String;
- var stop:string;
- begin
- case ort of
- 'a': stop:='Holgers Wohnung';
- 'b': stop:='Blumenhändler';
- 'c': stop:='Getränkemarkt';
- 'd': stop:='Gemüsehändler';
- 'e': stop:='Bäcker';
- end;
- Name:=stop;
- end;
- function Zeit(strecke:string):word;
- var dauer,i:word;
- begin
- dauer:=0;
- for i:=1 to n+2 do
- case strecke[i] of
- 'a':
- case strecke[i+1] of
- 'b': dauer:=dauer+12;
- 'c': dauer:=dauer+65;
- 'd': dauer:=dauer+48;
- 'e': dauer:=dauer+33;
- end;
- 'b':
- case strecke[i+1] of
- 'a': dauer:=dauer+10;
- 'c': dauer:=dauer+75;
- 'd': dauer:=dauer+52;
- 'e': dauer:=dauer+36;
- end;
- 'c':
- case strecke[i+1] of
- 'a': dauer:=dauer+65;
- 'b': dauer:=dauer+71;
- 'd': dauer:=dauer+44;
- 'e': dauer:=dauer+50;
- end;
- 'd':
- case strecke[i+1] of
- 'a': dauer:=dauer+47;
- 'b': dauer:=dauer+52;
- 'c': dauer:=dauer+44;
- 'e': dauer:=dauer+62;
- end;
- 'e':
- case strecke[i+1] of
- 'a': dauer:=dauer+33;
- 'b': dauer:=dauer+36;
- 'c': dauer:=dauer+50;
- 'd': dauer:=dauer+62;
- end;
- end;
- Zeit:=dauer;
- end;
- procedure Weg(Durchlauf:shortint;var minuten:word;var Orte:String);
- var i:char;
- j,dauer:word;
- doppelt:Boolean;
- begin
- doppelt:=false;
- for j:=1 to Durchlauf do
- begin
- if (j<>Durchlauf) and (Orte[j]=Orte[Durchlauf]) then
- doppelt:=true
- end;
- if (doppelt=false)then
- if (Durchlauf=n) then
- begin
- if dauer>Zeit('a'+Orte+'a') then
- begin
- dauer:=Zeit('a'+Orte+'a');
- Orte:='a'+Orte+'a';
- writeln(Orte,' ',dauer);
- end;
- end
- else
- for i:=start to ende do
- Weg(Durchlauf+1,dauer,Orte)
- end;
- var strecke:String;
- i,dauer:word;
- begin
- dauer:=255;
- strecke:='';
- Weg(0,dauer,strecke);
- writeln;
- strecke:='adceba';
- for i:=1 to n+2 do
- begin
- writeln(i,'. ',Name(strecke[i]));
- end;
- writeln('Dauer der schnellsten Strecke: ',Zeit(strecke),' min');
- readln
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement