Вниз  Mobile Basic 1.9.1
- 16.11.2014 / 21:40
Virus-ON
  Пользователь

Virus-ON 
Сейчас: Offline
Kalter (16.11.2014/17:45)
Я когда делать было нефиг писал классы (!) в МБ (!!). Весьма своеобразно, но правильно.

Ещё от нумерации строк не избавиться. Процедуру то еле-еле сделать.

Сам предпочитаю паскльную структуру.
Чем-то похоже на перерывания в асме :-D
- 17.11.2014 / 08:30
HoldFast
  Пользователь

HoldFast 
Сейчас: Offline
Basic:
  1. 10 A=0:goto 30
  2. 20 ololo=10
  3. 30 if ololo=0 then goto 20
  4. 40 print ololo

Псевдокот:
  1. m10() {
  2. A=0;
  3. m30();
  4. }
  5.  
  6. m20(){
  7. ololo=10;
  8. m30();
  9. }
  10. m30(){
  11. if(ololo==0) m20(); else m40();
  12. }
  13.  
  14. m40(){
  15. Print ololo;
  16. }
:gy:
__________________
 Да, детка, я - Король Ящериц!!!

Изменено HoldFast (17.11 / 08:31) (всего 1 раз)
- 17.11.2014 / 08:53
Ксакеп
  Модератор форума

Ксакеп 
Сейчас: Offline
  1. 10 A=0:goto 30
  2. 20 ololo=10
  3. 30 if ololo=0 then goto 20
  4. 40 print ololo

  1. main() {
  2.     var a = 0;  // 10
  3.  
  4.     if (true) {           // 10, 2
  5.     while (ololo == 0) {  // 30
  6.         ololo=10;        // 20
  7.     }
  8.     }
  9.     print(ololo);  // 40


Изменено Ксакеп (17.11 / 08:54) (всего 1 раз)
- 17.11.2014 / 09:00
HoldFast
  Пользователь

HoldFast 
Сейчас: Offline
Так напарсить будет сложнее
__________________
 Да, детка, я - Король Ящериц!!!
- 17.11.2014 / 09:02
HoldFast
  Пользователь

HoldFast 
Сейчас: Offline
Да и в принципе не реально
__________________
 Да, детка, я - Король Ящериц!!!
- 17.11.2014 / 09:25
Ксакеп
  Модератор форума

Ксакеп 
Сейчас: Offline
HoldFast, реально:

1. Заметим, что 20-30 — изолированная пара, то есть на 20 ссылается только тридцать и больше никто.
  1. 20 action();
  2. 30 if (condition) then goto 20;
  3. ###
  4. 20 action();
  5. 30 while (condition) action();

Смотрим на 20 строчку — на неё никто не ссылается, и она изолирована. Просто удаляем её, как и "goto 30" в 10 строчке.

Избавились от goto.
- 17.11.2014 / 09:26
HoldFast
  Пользователь

HoldFast 
Сейчас: Offline
Окей, потом 120 строчек кода, и там goto 30
__________________
 Да, детка, я - Король Ящериц!!!
- 17.11.2014 / 09:29
Ксакеп
  Модератор форума

Ксакеп 
Сейчас: Offline
> потом еще 120 строк кода и goto 30
  1. while (true) {
  2. // 30 строчка кода
  3. // еще 120
  4. }

HoldFast, не, всё можно. Накидай ещё злобных примеров, а я попробую оформить единый алгоритм.

Изменено Ксакеп (17.11 / 09:31) (всего 1 раз)
- 17.11.2014 / 09:30
HoldFast
  Пользователь

HoldFast 
Сейчас: Offline
Ща, пожру
__________________
 Да, детка, я - Король Ящериц!!!
- 17.11.2014 / 09:50
HoldFast
  Пользователь

HoldFast 
Сейчас: Offline
  1. 10 Y=0:K=0:R=0
  2. 20 IF Y=0 THEN GOTO 100
  3. 30 PRINT "как шоколад в руке"
  4. 40 IF Y=1 AND K=1 AND R=0 THEN GOTO 80
  5. 50 IF Y=1 AND K=1 AND R=1 THEN GOTO 110
  6. 70 PRINT "Я ломал стекло":GOTO 90
  7. 80 PRINT "Я резал эти пальцы за то что они":R=1:GOTO 40
  8. 90 IF K=0 THEN K=1:GOTO 30
  9. 100 Y=1:GOTO 70
  10. 110 PRINT "не могут прикоснуться к тебе"
  11. 120 REPAINT:SLEEP 5000

__________________
 Да, детка, я - Король Ящериц!!!
Наверх  Всего сообщений: 2690
Фильтровать сообщения
Поиск по теме
Файлы топика (109)