OLG Seifhennersdorf/fächerverbindender Unterricht-Pi/Lynn

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(19); // 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:=14;
if c='2'then key:=11;

if c='3'then key:=62;

if c='4'then key:=7;

if c='5'then key:=25;

if c='6'then key:=30;

if c='7'then key:=43;

if c='8'then key:=12;

if c='9'then key:=10;

if(k='0')or(k='1')or(k='2') then dauer:=100 div 1;
if(k='3')then dauer:=100 div 2;
if(k='6')or(k='7')or(k='8') then dauer:=100 div 4;
if(k='9')then dauer:=100 div 4; 
if(k='4')or(k='5') 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>