public Load : seqofchar ==> Grid
Load(newFileName) ==
(
inputFileName := newFileName;
file := new IO(); def mk_ (-,input) = file.freadval[seqof inDataType]( inputFileName) in
inData := input;
return SetData(inData);
) pre newFileName <> [];
private SetData : seqof inDataType ==> Grid
SetData(data) ==
( def g = new Grid(mk_Grid`Point(0,0),mk_Grid`Point(100,100)) in
(
startingPoint := mk_Grid`Point(data(startIndex).#1, data(startIndex).#2);
dest := mk_Grid`Point(data(destIndex).#1,data(destIndex).#2);
battery := (inData(batCapIndex).#1);
fields := len data - 2; --just for test let obsticales = { mk_Grid`Point(data(i).#1,inData(i).#2) |-> <Occupied>
| i inset {4, ...,len data}} in g.SetPointMP(obsticales); return g;
)
) pre startIndex insetinds (data) and
destIndex insetinds (data) and
batCapIndex insetinds (data);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.