else
hi = mid
if hi - lo < 1:
+ lo = mid
use GiveUp
use True
do pass
case Found:
print "Yay, I found", target
case GiveUp:
- print "Closest I found was", mid
+ print "Closest I found was", lo
###### output: sayhello,55,33,hello,True
Hello World, what lovely oceans you have!
$0->condpart = $<SP;
$CP->next = $0->casepart;
$0->casepart = $<CP;
+ var_block_close(c, CloseSequential);
}$
| SwitchPart : IN OptNL CasePart CondSuffix OUT Newlines ${
$0 = $<CS;
$0->condpart = $<SP;
$CP->next = $0->casepart;
$0->casepart = $<CP;
+ var_block_close(c, CloseSequential);
}$
| IfPart IfSuffix ${
$0 = $<IS;
CondSuffix -> IfSuffix ${
$0 = $<1;
- // This is where we close scope of the whole
- // "for" or "while" statement
- var_block_close(c, CloseSequential);
}$
| Newlines CasePart CondSuffix ${
$0 = $<CS;
}$
$*exec
- // These scopes are closed in CondSuffix
+ // These scopes are closed in CondStatement
ForPart -> for OpenBlock ${
$0 = $<Bl;
}$
}$
$cond_statement
- // This scope is closed in CondSuffix
+ // This scope is closed in CondStatement
WhilePart -> while UseBlock OptNL do Block ${
$0.condpart = $<UB;
$0.dopart = $<Bl;
+ var_block_close(c, CloseSequential);
}$
| while OpenScope Expression ColonBlock ${
$0.condpart = $<Exp;
$0.dopart = $<Bl;
+ var_block_close(c, CloseSequential);
}$
IfPart -> if UseBlock OptNL then OpenBlock ClosePara ${
}$
$*exec
- // This scope is closed in CondSuffix
+ // This scope is closed in CondStatement
SwitchPart -> switch OpenScope Expression ${
$0 = $<Ex;
}$
else
hi = mid
if hi - lo < 1:
+ lo = mid
use GiveUp
use True
do pass
case Found:
print "Yay, I found", target
case GiveUp:
- print "Closest I found was", mid
+ print "Closest I found was", lo
size::= 10
list:[size]number