MAX: .EQUATE d#10 ;nb max de prix à entrer *2 loadb tabPrix,i loadx d#0,i encore: deci ,x breq calculer addx d#2,i compx MAX,i brlt encore calculer: loada tabPrix,i storea d#-4,s ;adresse du tableau storex d#-6,s ;index de fin du tableau addsp d#-6,i jsr Total deco d#0,s ;afficher résultat addsp d#2,i charo c#/$/,i stop tabPrix: .BLOCK d#10 ;----------------FONCTION TOTAL------------------- TOTRET: .EQUATE d#0 TOTMAX: .EQUATE d#2 TOTADRS: .EQUATE d#4 TOTCALC: .EQUATE d#6 Total: loadb TOTADRS,s loadx d#0,i loada d#0,i bcleTot: adda ,x ;Calculer la somme addx d#2,i compx d#2,s brlt bcleTot storea d#-2,s addsp d#-2,i jsr Taxe loada d#0,s addsp d#2,i storea TOTCALC,s loada TOTRET,s storea TOTADRS,s addsp TOTADRS,i rts ;-----------------FONCTION TAXE------------------- Taxe: loadx d#2,s loada d#2,s asra ;50% asra ;25% asra ;12,5% storea d#-2,s addx d#-2,s ;tot+12,5% asra ;6,25% asra ;3,125% storea d#-2,s addx d#-2,s ;tot+3,125% storex d#2,s ;retourner tot+15,625% rts .END