RosettaCodeData/Task/Pangram-checker/Action-/pangram-checker.action
2023-07-01 13:44:08 -04:00

46 lines
729 B
Text

INCLUDE "D2:CHARTEST.ACT" ;from the Action! Tool Kit
DEFINE CHAR_COUNT="26"
BYTE FUNC IsPangram(CHAR ARRAY t)
BYTE ARRAY tab(CHAR_COUNT)
BYTE i,c
FOR i=0 TO CHAR_COUNT-1
DO tab(i)=0 OD
FOR i=1 TO t(0)
DO
c=ToLower(t(i))
IF c>='a AND c<='z THEN
tab(c-'a)=1
FI
OD
FOR i=0 TO CHAR_COUNT-1
DO
IF tab(i)=0 THEN
RETURN (0)
FI
OD
RETURN (1)
PROC Test(CHAR ARRAY t)
BYTE res
res=IsPangram(t)
PrintF("""%S"" is ",t)
IF res=0 THEN
Print("not ")
FI
PrintE("a pangram.")
PutE()
RETURN
PROC Main()
Put(125) PutE() ;clear screen
Test("The quick brown fox jumps over the lazy dog.")
Test("QwErTyUiOpAsDfGhJkLzXcVbNm")
Test("Not a pangram")
Test("")
RETURN