McNuggets problem: Difference between revisions

Add PL/M
(Add FOCAL)
(Add PL/M)
Line 1,205:
(nuggets1 100)
(nuggets2 100) ) )</lang>
 
=={{header|PL/M}}==
<lang plm>100H:
BDOS: PROCEDURE (FN, ARG); DECLARE FN BYTE, ARG ADDRESS; GO TO 5; END BDOS;
EXIT: PROCEDURE; CALL BDOS(0,0); END EXIT;
PRINT: PROCEDURE (S); DECLARE S ADDRESS; CALL BDOS(9, S); END PRINT;
 
PRINT$NUMBER: PROCEDURE (N);
DECLARE S (6) BYTE INITIAL ('...',13,10,'$');
DECLARE P ADDRESS, (N, C BASED P) BYTE;
P = .S(3);
DIGIT:
P = P-1;
C = N MOD 10 + '0';
N = N/10;
IF N>0 THEN GO TO DIGIT;
CALL PRINT(P);
END PRINT$NUMBER;
 
DECLARE (A, B, C) BYTE;
DECLARE NUGGET (101) BYTE;
 
DO A=0 TO 100; NUGGET(A) = 0; END;
DO A=0 TO 100 BY 6;
DO B=A TO 100 BY 9;
DO C=B TO 100 BY 20;
NUGGET(C) = -1;
END;
END;
END;
 
A = 100;
DO WHILE NUGGET(A); A = A-1; END;
CALL PRINT$NUMBER(A);
CALL EXIT;
EOF</lang>
{{out}}
<pre>43</pre>
 
=={{header|PowerShell}}==
2,094

edits