pl_2f_bf_ac_bd_c0_b9_ae_c1_a63
'전자정보공학부 200012911 박동희
'
open TextIO; fun digit(c) = ord(c) - ord(#"0"); fun str2chrList(string) = explode(string) fun skipEOL(L) = if L = nil then [] else if hd(L) = #"\n" then skipEOL(tl(L)) else [hd(L)]@skipEOL(tl(L)) fun exlistinlist ([h]::hs) = if hs = [] then [h*h] else h*h::exlist2(hs); fun exlist (h::hs) = if hs = nil then [h*h] else h*h::exlist(hs); fun charL2intL(L) = if L = nil then 0::[] else if hd(L) = #" " then 0::charL2intL(tl(L)) else digit(hd(L))::charL2intL(tl(L)); fun tokeningIntList(L, intsofar) = if L = nil then [] else if hd(L) = 0 then intsofar::tokeningIntList(tl(L), 0) else tokeningIntList(tl(L), 10*intsofar+hd(L)); fun listfileOut(infile,outfile) = let val ins = TextIO.openIn infile val outs = TextIO.openOut outfile in (TextIO.output(outs, "["); sk(outs, intTostrl(exlist(tokeningIntList(charL2intL(skipEOL(str2chrList(TextIO.inputLine(ins)))),0)))); TextIO.output(outs, "["); sk(outs, intTostrl(exlist(tokeningIntList(charL2intL(skipEOL(str2chrList(TextIO.inputLine(ins)))),0)))); TextIO.output(outs, "["); sk(outs, intTostrl(exlist(tokeningIntList(charL2intL(skipEOL(str2chrList(TextIO.inputLine(ins)))),0)))); TextIO.output(outs, "["); sk(outs, intTostrl(exlist(tokeningIntList(charL2intL(skipEOL(str2chrList(TextIO.inputLine(ins)))),0)))); TextIO.closeOut outs) end;listfileOut("tt1","out"); fun sk(stroem, (x::nil)) = TextIO.output(stroem,x^"]\n") | sk (stroem,(x::s)) = (TextIO.output(stroem,x^","); sk(stroem,s)); fun listfileOut(infile,outfile) = let val ins = TextIO.openIn infile val outs = TextIO.openOut outfile in (sk(outs, readlist(ins)); TextIO.closeOut outs) end; listfileOut("ttt","out"); fun readlist(ins) = if endOfStream(ins) then nil else TextIO.inputLine(ins)::readlist(ins) fun sk(stroem, (x::nil)) = TextIO.output(stroem,x) | sk (stroem, (x::s)) = (TextIO.output(stroem,x);sk(stroem,s)); fun intTostrl(h::nil) = [Int.toString(h)] | intTostrl(h::t) = [Int.toString(h)]@intTostrl(t);
pl_2f_bf_ac_bd_c0_b9_ae_c1_a63.txt · Last modified: 2018/07/18 14:10 by 127.0.0.1