Source PostScript (Mayer.pps)

Retour Texte non formaté
%% syntaxe : array1 array2 Mayer2 --> depose une droite de Mayer definie %% par le tableau des abscisses array1 et le tableau des ordonnees %% array2 /Mayer2 { 7 dict begin /l2 exch def /l1 exch def /n l1 length def /a n 2 idiv array def /b n 2 idiv array def /i 0 def n 2 idiv { a i l1 i get put b i l2 i get put /i i 1 add store } repeat a b pointmoyen /a n 1 add 2 idiv array def /b n 1 add 2 idiv array def /j 0 def n 2 idiv 1 n 1 sub { /i exch def a j l1 i get put b j l2 i get put /j j 1 add store } for a b pointmoyen end } def %% syntaxe : array1 array2 Mayer --> depose une droite de Mayer definie %% par le tableau des abscisses array1 et le tableau des ordonnees %% array2. Les points sont prealablement ranges par ordre d'abscisse %% croissante /Mayer { 11 dict begin /l2 exch def /l1 exch def /n l1 length def /m l1 mediane def /a n 2 idiv array def /b n 2 idiv array def /c n 1 add 2 idiv array def /d n 1 add 2 idiv array def /i 0 def /j 0 def /k 0 def n { l1 i get m le j a length lt and { a j l1 i get put b j l2 i get put /j j 1 add store } { c k l1 i get put d k l2 i get put /k k 1 add store } ifelse /i i 1 add store } repeat a b pointmoyen c d pointmoyen end } def %% %% syntaxe : array1 array2 Mayer --> depose la droite de Mayer definie %% %% par le tableau des abscisses array1 et le tableau des ordonnees %% %% array2 %% /Mayer { %% 7 dict begin %% /l2 exch def %% /l1 exch def %% /n l1 length def %% /m l1 mediane def %% %% /a n 2 idiv array def %% /b n 2 idiv array def %% /c n 1 add 2 idiv array def %% /d n 1 add 2 idiv array def %% %% /i 0 def %% /j 0 def %% /k 0 def %% n { %% l1 i get m lt { %% a j l1 i get put %% b j l2 i get put %% /j j 1 add store %% } { %% c k l1 i get put %% d k l2 i get put %% /k k 1 add store %% } ifelse %% /i i 1 add store %% } repeat %% a b pointmoyen %% c d pointmoyen %% end %% } def %% %% %% %% %% syntaxe : array1 array2 Mayer --> depose la droite de Mayer definie %% %% %% par le tableau des abscisses array1 et le tableau des ordonnees %% %% %% array2 %% %% /Mayer { %% %% 7 dict begin %% %% /l2 exch def %% %% /l1 exch def %% %% /n l1 length def %% %% /a n 2 idiv array def %% %% /b n 2 idiv array def %% %% /i 0 def %% %% n 2 idiv { %% %% a i l1 i get put %% %% b i l2 i get put %% %% /i i 1 add store %% %% } repeat %% %% a b pointmoyen %% %% %% %% /a n 1 add 2 idiv array def %% %% /b n 1 add 2 idiv array def %% %% /j 0 def %% %% n 2 idiv 1 n 1 sub { %% %% /i exch def %% %% a j l1 i get put %% %% b j l2 i get put %% %% /j j 1 add store %% %% } for %% %% a b pointmoyen %% %% end %% %% } def