Add tasks for all the new languages
This commit is contained in:
parent
9dc3c2bb62
commit
bba7bfd280
13208 changed files with 134745 additions and 0 deletions
35
Task/Hofstadter-Q-sequence/ERRE/hofstadter-q-sequence.erre
Normal file
35
Task/Hofstadter-Q-sequence/ERRE/hofstadter-q-sequence.erre
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
PROGRAM HOFSTADER_Q
|
||||
|
||||
!
|
||||
! for rosettacode.org
|
||||
!
|
||||
|
||||
DIM Q%[10000]
|
||||
|
||||
PROCEDURE QSEQUENCE(Q,FLAG%->SEQ$)
|
||||
! if FLAG% is true accumulate sequence in SEQ$
|
||||
! (attention to string var lenght=255)
|
||||
! otherwise calculate values in Q%[] only
|
||||
|
||||
LOCAL N
|
||||
Q%[1]=1
|
||||
Q%[2]=1
|
||||
SEQ$="1 1"
|
||||
IF NOT FLAG% THEN Q=NUM END IF
|
||||
FOR N=3 TO Q DO
|
||||
Q%[N]=Q%[N-Q%[N-1]]+Q%[N-Q%[N-2]]
|
||||
IF FLAG% THEN SEQ$=SEQ$+STR$(Q%[N]) END IF
|
||||
END FOR
|
||||
END PROCEDURE
|
||||
|
||||
BEGIN
|
||||
NUM=10000
|
||||
QSEQUENCE(10,TRUE->SEQ$)
|
||||
PRINT("Q-sequence(1..10) : ";SEQ$)
|
||||
QSEQUENCE(1000,FALSE->SEQ$)
|
||||
PRINT("1000th number of Q sequence : ";Q%[1000])
|
||||
FOR N=2 TO NUM DO
|
||||
IF Q%[N]<Q%[N-1] THEN NN+=1 END IF
|
||||
END FOR
|
||||
PRINT("Number of Q(n)<Q(n+1) for n<=10000 : ";NN)
|
||||
END PROGRAM
|
||||
Loading…
Add table
Add a link
Reference in a new issue