diff options
| author | deadmarshal <adeadmarshal@gmail.com> | 2024-01-02 02:29:50 -0500 |
|---|---|---|
| committer | deadmarshal <adeadmarshal@gmail.com> | 2024-01-02 02:29:50 -0500 |
| commit | 754a0f9cce2dc07a97609f2b8bc642dfee61930f (patch) | |
| tree | 7bd79339617fc14720b3bc79d52453563b6e06e9 /challenge-250/deadmarshal/modula-3/ch2/src | |
| parent | 5f38c976cae9103ec02e413224d047d8b149956d (diff) | |
| download | perlweeklychallenge-club-754a0f9cce2dc07a97609f2b8bc642dfee61930f.tar.gz perlweeklychallenge-club-754a0f9cce2dc07a97609f2b8bc642dfee61930f.tar.bz2 perlweeklychallenge-club-754a0f9cce2dc07a97609f2b8bc642dfee61930f.zip | |
TWC250
Diffstat (limited to 'challenge-250/deadmarshal/modula-3/ch2/src')
| -rw-r--r-- | challenge-250/deadmarshal/modula-3/ch2/src/Ch2.m3 | 33 | ||||
| -rw-r--r-- | challenge-250/deadmarshal/modula-3/ch2/src/m3makefile | 4 |
2 files changed, 37 insertions, 0 deletions
diff --git a/challenge-250/deadmarshal/modula-3/ch2/src/Ch2.m3 b/challenge-250/deadmarshal/modula-3/ch2/src/Ch2.m3 new file mode 100644 index 0000000000..a56c7abe42 --- /dev/null +++ b/challenge-250/deadmarshal/modula-3/ch2/src/Ch2.m3 @@ -0,0 +1,33 @@ +MODULE Ch2 EXPORTS Main; + +IMPORT IO,Text,Scan; + +VAR + A1 := ARRAY[0..4] OF TEXT{"perl","2","000","python","r4ku"}; + A2 := ARRAY[0..3] OF TEXT{"001","1","000","0001"}; + +PROCEDURE IsNumeric(VAR t:TEXT):BOOLEAN = + BEGIN + FOR I := 0 TO Text.Length(t)-1 DO + IF NOT Text.GetChar(t,I) IN SET OF CHAR{'0'..'9'} THEN RETURN FALSE END + END; + RETURN TRUE + END IsNumeric; + +PROCEDURE AlphanumericStringValue(VAR A:ARRAY OF TEXT):CARDINAL = + VAR Max,N:CARDINAL := 0; + BEGIN + FOR I := FIRST(A) TO LAST(A) DO + IF IsNumeric(A[I]) THEN N := Scan.Unsigned(A[I],10) + ELSE N := Text.Length(A[I]) + END; + IF N > Max THEN Max := N END + END; + RETURN Max + END AlphanumericStringValue; + +BEGIN + IO.PutInt(AlphanumericStringValue(A1)); IO.Put("\n"); + IO.PutInt(AlphanumericStringValue(A2)); IO.Put("\n"); +END Ch2. + diff --git a/challenge-250/deadmarshal/modula-3/ch2/src/m3makefile b/challenge-250/deadmarshal/modula-3/ch2/src/m3makefile new file mode 100644 index 0000000000..5c32bbc4bb --- /dev/null +++ b/challenge-250/deadmarshal/modula-3/ch2/src/m3makefile @@ -0,0 +1,4 @@ +import("libm3") +implementation("Ch2") +program("ch2") + |
