Остання активність 1732998881

An example of writing values out.

wryl ревизій цього gist 1732998881. До ревизії

2 files changed, 147 insertions

output.nv(файл створено)

@@ -0,0 +1,13 @@
1 + |#| constant, @io-write-out, 33
2 + |#| constant, @io-write-out, 10
3 +
4 + |!| @io-write-out:33
5 + |newline| @io-write-out:10
6 + |write| @io-write
7 +
8 + ||start
9 + |start|
10 + write, !,
11 + then
12 + |then|
13 + write, newline

output.nv.c(файл створено)

@@ -0,0 +1,134 @@
1 + #include <stdio.h>
2 + int main(void) {
3 + unsigned long steps = 0;
4 + static unsigned long r_64io45write45out5833 = 0, r_64io45write45out = 0,
5 + r_64io45write45out5810 = 0, r_33 = 0, r_64once = 0,
6 + r_newline = 0, r_write = 0, r_64io45write = 0,
7 + r_start = 0, r_then = 0, r_64io45read = 0,
8 + r_64io45read45in = 0, r_64io45read45end = 0, matched = 0,
9 + min = 0;
10 + r_64once = 1u;
11 + r_start = 1u;
12 + do {
13 + if (0) {
14 + } else if (r_64io45read) {
15 + r_64io45read--;
16 + r_64io45read45in = getchar();
17 + if ((int)r_64io45read45in == EOF) {
18 + r_64io45read45in = 0;
19 + r_64io45read45end++;
20 + }
21 + matched++;
22 + } else if (r_64io45write) {
23 + r_64io45write--;
24 + putchar(r_64io45write45out);
25 + r_64io45write45out = 0;
26 + matched++;
27 + } else if (r_64io45write45out5833) {
28 + min = r_64io45write45out5833;
29 + r_64io45write45out += 33u * min;
30 + r_64io45write45out5833 -= min;
31 + matched++;
32 + min = 0xFFFFFFFFFFFFFFFF;
33 + } else if (r_64io45write45out5810) {
34 + min = r_64io45write45out5810;
35 + r_64io45write45out += 10u * min;
36 + r_64io45write45out5810 -= min;
37 + matched++;
38 + min = 0xFFFFFFFFFFFFFFFF;
39 + } else if (r_33 && r_64once) {
40 + if (r_33 <= min) {
41 + min = r_33;
42 + }
43 + if (r_64once <= min) {
44 + min = r_64once;
45 + }
46 + if (min <= r_33) {
47 + r_33 -= min;
48 + }
49 + if (min <= r_64once) {
50 + r_64once -= min;
51 + }
52 + r_64io45write45out5833 += min;
53 + r_64once += min;
54 + matched++;
55 + min = 0xFFFFFFFFFFFFFFFF;
56 + } else if (r_newline && r_64once) {
57 + if (r_newline <= min) {
58 + min = r_newline;
59 + }
60 + if (r_64once <= min) {
61 + min = r_64once;
62 + }
63 + if (min <= r_newline) {
64 + r_newline -= min;
65 + }
66 + if (min <= r_64once) {
67 + r_64once -= min;
68 + }
69 + r_64io45write45out5810 += min;
70 + r_64once += min;
71 + matched++;
72 + min = 0xFFFFFFFFFFFFFFFF;
73 + } else if (r_write && r_64once) {
74 + if (r_write <= min) {
75 + min = r_write;
76 + }
77 + if (r_64once <= min) {
78 + min = r_64once;
79 + }
80 + if (min <= r_write) {
81 + r_write -= min;
82 + }
83 + if (min <= r_64once) {
84 + r_64once -= min;
85 + }
86 + r_64io45write += min;
87 + r_64once += min;
88 + matched++;
89 + min = 0xFFFFFFFFFFFFFFFF;
90 + } else if (r_start && r_64once) {
91 + if (r_start <= min) {
92 + min = r_start;
93 + }
94 + if (r_64once <= min) {
95 + min = r_64once;
96 + }
97 + if (min <= r_start) {
98 + r_start -= min;
99 + }
100 + if (min <= r_64once) {
101 + r_64once -= min;
102 + }
103 + r_write += min;
104 + r_33 += min;
105 + r_then += min;
106 + r_64once += min;
107 + matched++;
108 + min = 0xFFFFFFFFFFFFFFFF;
109 + } else if (r_then && r_64once) {
110 + if (r_then <= min) {
111 + min = r_then;
112 + }
113 + if (r_64once <= min) {
114 + min = r_64once;
115 + }
116 + if (min <= r_then) {
117 + r_then -= min;
118 + }
119 + if (min <= r_64once) {
120 + r_64once -= min;
121 + }
122 + r_write += min;
123 + r_newline += min;
124 + r_64once += min;
125 + matched++;
126 + min = 0xFFFFFFFFFFFFFFFF;
127 + }
128 + if (matched) {
129 + steps++;
130 + }
131 + } while (matched--);
132 +
133 + return 0;
134 + }
Новіше Пізніше