Tuesday, November 25, 2014

CS205 Лаб 7: While стэйтмэнттэй ажиллах нь

Зорилго:

  • Соорс коодноос while стэйтмэнтийг илрүүлэх


Тайлбар:

  • Statement классаас Loop классыг удамшуулж үүсгэ. Уг класс нь while стэйтмэнтийг агуулах юм. Дотроо test болон body гэсэн хоёр гишүүн өгөгдөлтэй.
  • Parser класст while_statement гэх функцийг бич. Уг функц нь while стэйтмэнтийг илрүүлж Loop классын объект руу өгөгдлийг нь хийх юм.
  • Боловсруулж гаргаж авсан объектуудаа хүнд ойлгомжтойгоор эвтэйхэн хэвлэх хэрэгтэй.


class Loop extends Statement:
  test
  body
  function Loop(t, b):
    this.test = t
    this.body = b
  function to_string():
    # Гишүүдээр нь ялгаж хэвлэх

class Parser:
  function statement():
    ...
    else if this.current_token is While:
      s = this.while_statement()
    ...

  function while_statement():
    # WhileStatement --> while ( Expression ) Statement
    this.current_token = this.lexer.next_token()
    this.match(LEFT_PAREN)
    t = this.expression()
    this.match(RIGHT_PAREN)
    return Loop(t, this.statement())


Боловсруулах файл:
void main()
{
  int a;
  int b;
  a = true;
  b = false;
  while(a == true && b == false)
  {
    print "ШУТИС, МХТС, КУС, CS205"
  }
}

Хугацаа:

  • XIII долоо хоног
Багш: Ч. Эрдэнэбат
2014/11/25

No comments:

Post a Comment