Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
46
Task/Catamorphism/True-BASIC/catamorphism.basic
Normal file
46
Task/Catamorphism/True-BASIC/catamorphism.basic
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
SHARE n(10)
|
||||
FOR i = 1 to 10
|
||||
LET n(i) = i
|
||||
NEXT i
|
||||
|
||||
FUNCTION fnmin(a,b)
|
||||
IF (a < b) then LET fnmin = a else LET fnmin = b
|
||||
END FUNCTION
|
||||
FUNCTION fnmax(a,b)
|
||||
IF (a < b) then LET fnmax = b else LET fnmax = a
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION cat(cont, op$)
|
||||
LET temp = n(1)
|
||||
LET temp$ = ""
|
||||
FOR i = 2 TO cont
|
||||
IF op$ = "+" then LET temp = temp+n(i)
|
||||
IF op$ = "-" then LET temp = temp-n(i)
|
||||
IF op$ = "*" then LET temp = temp*n(i)
|
||||
IF op$ = "/" then LET temp = temp/n(i)
|
||||
IF op$ = "^" then LET temp = temp^n(i)
|
||||
IF op$ = "max" then LET temp = fnmax(temp,n(i))
|
||||
IF op$ = "min" then LET temp = fnmin(temp,n(i))
|
||||
IF op$ = "avg" then LET temp = temp+n(i)
|
||||
IF op$ = "cat" then LET temp$ = temp$ & str$(n(i))
|
||||
NEXT i
|
||||
IF op$ = "avg" then
|
||||
LET temp = temp / cont
|
||||
END IF
|
||||
IF op$ = "cat" then
|
||||
LET t$ = str$(n(1)) & temp$
|
||||
LET temp = VAL(t$)
|
||||
END IF
|
||||
LET cat = temp
|
||||
END FUNCTION
|
||||
|
||||
PRINT " +: "; " "; cat(10, "+")
|
||||
PRINT " -: "; " "; cat(10, "-")
|
||||
PRINT " *: "; " "; cat(10, "*")
|
||||
PRINT " /: "; " "; cat(10, "/")
|
||||
PRINT " ^: "; " "; cat(10, "^")
|
||||
PRINT "min: "; " "; cat(10, "min")
|
||||
PRINT "max: "; " "; cat(10, "max")
|
||||
PRINT "avg: "; " "; cat(10, "avg")
|
||||
PRINT "cat: "; " "; cat(10, "cat")
|
||||
END
|
||||
Loading…
Add table
Add a link
Reference in a new issue