Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
49
Task/Prime-decomposition/ERRE/prime-decomposition.erre
Normal file
49
Task/Prime-decomposition/ERRE/prime-decomposition.erre
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
PROGRAM DECOMPOSE
|
||||
|
||||
|
||||
!
|
||||
! for rosettacode.org
|
||||
!
|
||||
|
||||
!VAR NUM,J
|
||||
|
||||
DIM PF[100]
|
||||
|
||||
PROCEDURE STORE_FACTOR
|
||||
PF[0]=PF[0]+1
|
||||
PF[PF[0]]=CA
|
||||
I=I/CA
|
||||
END PROCEDURE
|
||||
|
||||
PROCEDURE DECOMP(I)
|
||||
PF[0]=0 CA=2 ! special case
|
||||
LOOP
|
||||
IF I=1 THEN EXIT PROCEDURE END IF
|
||||
EXIT IF INT(I/CA)*CA<>I
|
||||
STORE_FACTOR
|
||||
END LOOP
|
||||
FOR CA=3 TO INT(SQR(I)) STEP 2 DO
|
||||
LOOP
|
||||
IF I=1 THEN EXIT PROCEDURE END IF
|
||||
EXIT IF INT(I/CA)*CA<>I
|
||||
STORE_FACTOR
|
||||
END LOOP
|
||||
END FOR
|
||||
IF I>1 THEN CA=I STORE_FACTOR END IF
|
||||
END PROCEDURE
|
||||
|
||||
BEGIN
|
||||
! ----- function generate
|
||||
! in ... I ... number
|
||||
! out ... PF[] ... factors
|
||||
! PF[0] ... # of factors
|
||||
! mod ... CA ... pr.fact. candidate
|
||||
PRINT(CHR$(12);) !CLS
|
||||
INPUT("Numero ",NUM)
|
||||
DECOMP(NUM)
|
||||
PRINT(NUM;"=";)
|
||||
FOR J=1 TO PF[0] DO
|
||||
PRINT(PF[J];)
|
||||
END FOR
|
||||
PRINT
|
||||
END PROGRAM
|
||||
Loading…
Add table
Add a link
Reference in a new issue