Split a character string based on change of character: Difference between revisions

Added solution for Action!
No edit summary
(Added solution for Action!)
Line 221:
</lang>
{{Output}}<pre> gg, HHH, 5, YY, ++, ///, \ </pre>
 
=={{header|Action!}}==
<lang Action!>PROC Split(CHAR ARRAY s)
BYTE i
CHAR curr,last
 
i=1 last=s(1)
Put('")
WHILE i<=s(0)
DO
curr=s(i)
IF curr#last THEN
Print(", ")
FI
Put(curr)
last=curr
i==+1
OD
Put('")
RETURN
 
PROC Test(CHAR ARRAY s)
PrintF("Input: ""%S""%E",s)
Print("Split: ") Split(s)
PutE() PutE()
RETURN
 
PROC Main()
Test("gHHH5YY++///\")
Test("gHHH 5++,,,///\")
RETURN</lang>
{{out}}
[https://gitlab.com/amarok8bit/action-rosetta-code/-/raw/master/images/Split_a_character_string_based_on_change_of_character.png Screenshot from Atari 8-bit computer]
<pre>
Input: "gHHH5YY++///\"
Split: "g, HHH, 5, YY, ++, ///, \"
 
Input: "gHHH 5++,,,///\"
Split: "g, HHH, , 5, ++, ,,,, ///, \"
</pre>
 
=={{header|Ada}}==
Anonymous user