Input/Output for lines of text: Difference between revisions

Added solution for Action!
(Added solution for Action!)
Line 41:
V line = input()
do_stuff(line)</lang>
 
=={{header|Action!}}==
The user must type in the monitor the following command after compilation and before running the program!<pre>SET EndProg=*</pre>
{{libheader|Action! Tool Kit}}
<lang Action!>CARD EndProg ;required for ALLOCATE.ACT
 
INCLUDE "D2:ALLOCATE.ACT" ;from the Action! Tool Kit. You must type 'SET EndProg=*' from the monitor after compiling, but before running this program!
 
PROC Main()
DEFINE PTR="CARD"
BYTE i,nLines
PTR ARRAY lines(256)
CHAR ARRAY line(256),p
 
AllocInit(0)
Put(125) PutE()
 
nLines=InputB()
IF nLines=0 THEN RETURN FI
 
FOR i=0 TO nLines-1
DO
InputS(line)
p=Alloc(line(0)+1)
MoveBlock(p,line,line(0)+1)
lines(i)=p
OD
 
PutE()
FOR i=0 TO nLines-1
DO
p=lines(i)
PrintE(p)
OD
 
FOR i=0 TO nLines-1
DO
p=lines(i)
Free(p,p(0)+1)
lines(i)=0
OD
nLines=0
RETURN</lang>
{{out}}
[https://gitlab.com/amarok8bit/action-rosetta-code/-/raw/master/images/Input_Output_for_lines_of_text.png Screenshot from Atari 8-bit computer]
<pre>
3
hello
hello world
Pack my Box with 5 dozen liquor jugs
 
hello
hello world
Pack my Box with 5 dozen liquor jugs
</pre>
 
=={{header|Ada}}==
Anonymous user