(!****************************************************** Mosel User Guide Example Problems ================================= file recorddef.mos `````````````````` Defining and initializing records. (c) 2006 Dash Associates author: S. Heipcke, Nov. 2006 *******************************************************!) model "Defining records" declarations R = 1..10 D: record name: string values: array(R) of real end-record end-declarations declarations mydata = record ! Define a named record name: string values: array(R) of real end-record M: mydata A: array(T:range) of mydata end-declarations D.name:= "D" forall(i in R) D.values(i):= i writeln("Values of ", D.name, ": ", D.values) initializations from "recorddef.dat" A end-initializations writeln("An entry of A: ", A(1)) writeln("'name' of an entry of A: ", A(4).name) writeln("'values' of an entry of A: ", A(3).values) writeln("First entry of 'values': ", A(3).values(1)) forall(i in T | exists(A(i))) writeln(A(i).name) end-model