//**************************************************************************************************** public void Execute(Subroutine.Moment pos) { VarBase resb, rese; resb = m_begin.Calculate(); if (!resb.IsInt()) throw new CalcException("√раницы изменени¤ счетчика должны быть целыми"); IntVar resbi = resb as IntVar; Namespace cn = InterprEnvironment.Instance.CurrentNamespace; cn[m_counter_var] = resb; rese = m_end.Calculate(); if (!rese.IsInt()) throw new CalcException("√раницы изменени¤ счетчика должны быть целыми"); m_end_res = rese as IntVar; if (resbi.Val > m_end_res.Val) pos.GoTo(m_next_pos + 1); else pos.Next(); }
//**************************************************************************************************** public void Execute(Subroutine.Moment pos) { pos.Next(); }