macro_type=R2
id='xmin' expresion='-2' evaluate='only-once' constant='yes'
id='xmax' expresion='2' evaluate='only-once' constant='yes'
id='ymin' expresion='-1' evaluate='only-once' constant='yes'
id='ymax' expresion='1' evaluate='only-once' constant='yes'
id='dl' expresion='0.25' evaluate='only-once' constant='yes'
id='F(x,y)' expresion='1-(x/2)^2-y^2'
do='m=ent((xmax-xmin+dl)/dl);n=ent((ymax-ymin+dl)/dl);N=m*n;' id='INIT' algorithm='yes'
id='X(s)' expresion='xmin+dl*(s%m)'
id='Y(s)' expresion='ymin+dl*ent(s/m)'
id='COND1(x,y)' expresion='(F(x,y)>=0)|(F(x+dl,y)>=0)|(F(x+dl,y+dl)>=0)|(F(x,y+dl)>=0)'
id='COND2(x,y)' expresion='(F(x,y)>=0)&(F(x+dl,y)>=0)&(F(x+dl,y+dl)>=0)&(F(x,y+dl)>=0)'
init='A=0; i=0;' do='A=A+COND2(X(i),Y(i));i=i+1' while='i<=N' id='area()' expresion='dl*dl*A' algorithm='yes'
init='A=0; i=0;' do='A=A+COND1(X(i),Y(i));i=i+1' while='i<=N' id='AREA()' expresion='dl*dl*A' algorithm='yes'
id='Area()' expresion='(AREA()+area())/2'
type='polygon' draw-if='COND1(X(s),Y(s))' colour='red' expresion='(X(s),Y(s))(X(s)+dl,Y(s))(X(s)+dl,Y(s)+dl)(X(s),Y(s)+dl)(X(s),Y(s))' family='s' s.interval='[0,N]' s.steps='N' fill='ffd000' 
type='polygon' draw-if='COND2(X(s),Y(s))' expresion='(X(s),Y(s))(X(s)+dl,Y(s))(X(s)+dl,Y(s)+dl)(X(s),Y(s)+dl)(X(s),Y(s))' family='s' s.interval='[0,N]' s.steps='N' fill='cyan' 
type='equation' colour='black' expresion='F(x,y)=0' visible='no' 
