Инструменты пользователя

Инструменты сайта


ob:o7:generator

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
ob:o7:generator [2026/09/10 09:57] iadenisovob:o7:generator [2026/09/11 23:16] (текущий) iadenisov
Строка 11: Строка 11:
 <code> <code>
 MODULE Random; MODULE Random;
 +
  VAR z: INTEGER; (* global variable *)  VAR z: INTEGER; (* global variable *)
 +
  PROCEDURE Uniform* (): REAL;  PROCEDURE Uniform* (): REAL;
  CONST a = 16807; m = 2147483647; q = m DIV a; r = m MOD a;  CONST a = 16807; m = 2147483647; q = m DIV a; r = m MOD a;
Строка 24: Строка 26:
  RETURN FLT(z) * (1.0 / FLT(m)) (* value of the function *)  RETURN FLT(z) * (1.0 / FLT(m)) (* value of the function *)
  END Uniform;  END Uniform;
 +
  PROCEDURE InitSeed* (seed: INTEGER);  PROCEDURE InitSeed* (seed: INTEGER);
  BEGIN  BEGIN
Строка 39: Строка 42:
 <code> <code>
 MODULE Main; MODULE Main;
 +
  IMPORT SYSTEM,   IMPORT SYSTEM, 
  ARMv7M := MicroARMv7M,   ARMv7M := MicroARMv7M, 
Строка 48: Строка 52:
  VAR  VAR
  delay: INTEGER; ledOn: BOOLEAN;  delay: INTEGER; ledOn: BOOLEAN;
 +
  PROCEDURE Setup;  PROCEDURE Setup;
  BEGIN  BEGIN
Строка 60: Строка 65:
  delay := FLOOR(Rnd.Uniform() * 1000.0);  delay := FLOOR(Rnd.Uniform() * 1000.0);
  END Setup;  END Setup;
- +
  PROCEDURE Loop;  PROCEDURE Loop;
  BEGIN  BEGIN
Строка 80: Строка 85:
  UNTIL FALSE  UNTIL FALSE
  END Loop;  END Loop;
 +
 BEGIN BEGIN
  Setup;  Setup;
ob/o7/generator.1789034249.txt.gz · Последнее изменение: iadenisov