Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
26
Task/FASTA-format/ALGOL-W/fasta-format.alg
Normal file
26
Task/FASTA-format/ALGOL-W/fasta-format.alg
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
begin
|
||||
% reads FASTA format data from standard input and write the results to standard output %
|
||||
% only handles the ">" line start %
|
||||
string(256) line;
|
||||
% allow the program to continue after reaching end-of-file %
|
||||
ENDFILE := EXCEPTION( false, 1, 0, false, "EOF" );
|
||||
% handle the input %
|
||||
readcard( line );
|
||||
while not XCPNOTED(ENDFILE) do begin
|
||||
% strings are fixed length in Algol W - we need to find the line lengh with trailing spaces removed %
|
||||
integer len;
|
||||
len := 255;
|
||||
while len > 0 and line( len // 1 ) = " " do len := len - 1;
|
||||
if len > 0 then begin % non-empty line %
|
||||
integer pos;
|
||||
pos := 0;
|
||||
if line( 0 // 1 ) = ">" then begin % header line %
|
||||
write();
|
||||
pos := 1;
|
||||
end if_header_line ;
|
||||
for cPos := pos until len do writeon( line( cPos // 1 ) );
|
||||
if line( 0 // 1 ) = ">" then writeon( ": " )
|
||||
end if_non_empty_line ;
|
||||
readcard( line );
|
||||
end while_not_eof
|
||||
end.
|
||||
Loading…
Add table
Add a link
Reference in a new issue