Welkom bij de Tweaking4All gemeenschapsforums!
Voor je gaat deelnemen, bekijk de Forum Regels!
Specifieke onderwerpen: Start het onderwerp met de naam van het programma of systeem.
Bijvoorbeeld “MacOS X – Jouw vraag“, of bijvoorbeeld “MS Word – Jouw Tip of Truc“.
Merk op: Omschakelen naar een andere taal zal niet werken als je een post aan het lezen bent aangezien er waarschijnlijk geen vertaling beschikbaar is.
[Opgelost] Pascal - How converteer je Graden naar Windrichting
Delphi, Lazarus, Free Pascal
(@hans)
Famed Member Admin
Deelgenomen: 12 jaar geleden
Berichten: 2869
Topic starter
7 mei 2015 12:48
Omdat ik geen eenvoudig voorbeeld in Pascal online kon vinden, en omdat ik het zelf nodig had voor een applicatie ... hier de functie die ik zelf in elkaar gefietst heb om graden (degrees) om te zetten naar een Windrichting tekst.
De functie heeft alleen maar een float waarde nodig en stuurt de tekst versie terug.
function DegreesToWindDirection(Degrees:Double):string;
var WindDirection:string;
const North = 'N'; // Vertaal indie gewens
South = 'Z';
East = 'O';
West = 'W';
Error = 'Fout';
begin
if (Degrees<0) or (Degrees>360) then
WindDirection:=Error
else if Degrees<= 11.25 then
WindDirection:=North
else if Degrees<= 33.75 then
WindDirection:=North+North+East
else if Degrees<= 56.25 then
WindDirection:=North+East
else if Degrees<= 78.75 then
WindDirection:=East+North+East
else if Degrees<= 101.25 then
WindDirection:=East
else if Degrees<= 123.75 then
WindDirection:=East+South+East
else if Degrees<= 146.25 then
WindDirection:=South+East
else if Degrees<= 168.75 then
WindDirection:=South+South+East
else if Degrees<= 191.25 then
WindDirection:=South
else if Degrees<= 213.75 then
WindDirection:=South+South+West
else if Degrees<= 236.25 then
WindDirection:=South+West
else if Degrees<= 258.75 then
WindDirection:=West+South+West
else if Degrees<= 281.25 then
WindDirection:=West
else if Degrees<= 303.75 then
WindDirection:=West+North+West
else if Degrees<= 326.25 then
WindDirection:=North+West
else if Degrees<= 348.75 then
WindDirection:=North+North+West
else if Degrees<= 360 then
WindDirection:=North;
DegreesToWindDirection:=WindDirection;
end;