OLG Seifhennersdorf/fächerverbindender Unterricht-Pi/Tobias H.
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Pascal</language>
<code id="4d2a0bf79cc25">
var Pie:String;
key:integer;
dauer:integer;
c:Char; k:Char;
i,posx,z:Integer;
</code>
<canvas w=800 h=100></canvas>
<run id="4aa4b46b6775d">
canvas_clear();
Pie := '3.141592653589793238462643383279502884197169399375105820974944592307816406286208998' ;
selectSound(34); // 19. MIDI organ
posx:=0;
z:=2*((length(Pie)-2) div 2);
for i := 3 to z+1 do begin
if i mod 2 = 1 then begin
c := Pie[i];
k := Pie[i+1];
if c='0'then key:=60;
if c='1'then key:=62;
if c='2'then key:=73;
if c='3'then key:=65;
if c='4'then key:=80;
if c='5'then key:=67;
if c='6'then key:=71;
if c='7'then key:=76;
if c='8'then key:=61;
if c='9'then key:=64;
if (k='0')or(k='1')then dauer:=100 div 1;
if (k='2')or (k='3')then dauer:=100 div 2 ;
if (k='4')or (k='5')or (k='6')then dauer:=100 div 4;
if (k='7')or (k='8')or (k='9')then dauer:=100 div 8;
canvas_fillRect(posx,80-(key-60)*4,dauer,10);
posx := posx + dauer+5;
sound_play(key,dauer*10);
end;
end;
</run>