|
|
Dato un numero naturale 0, 1, 2, ... calcolare il fattoriale: 5!=5*4*3*2*1, in particolare 0!=1. Algoritmo: ... Programma: PROG RUN '
INP N '
SU LDA RISP '
MUL N ' RISP <-- RISP*N
STA RISP '
LDA N '
SUB #1 ' N <-- N-1
STA N '
JGT SU ' SE(N > 0): PC <-- SU
OUT RISP '
ALT '
N DAT 0 '
RISP DAT 1 ' N*...3*2*1
END '
Se N > 7 la risposta sarà errata perché ... Prima di calcolare il fattoriale controlla che N sia compreso tra 0 e 7. PROG RUN '
INP N '
LDA N '
JLE FINE ' SE(N <= 0)...
SUB #7 '
JGT FINE ' SE(N > 7)...
SU LDA RISP '
MUL N ' RISP <-- RISP*N
STA RISP '
LDA N '
SUB #1 ' N <-- N-1
STA N '
JGT SU ' SE(N > 0) PC<--SU
FINE OUT RISP '
ALT '
N DAT 0 '
RISP DAT 1 ' N*...3*2*1
END ' |
|