リセットしてくださいというエラーが出ます。
#include "window.c" /* ラージモデルでコンパイル */
/* シダ(fern)のデータ */
double left = -5, bottom = 0, right = 5, top = 10,
a[] = { 0 , 0.85, 0.2 , -0.15 },
b[] = { 0 , 0.04, -0.26, 0.28 },
c[] = { 0 , -0.04, 0.23, 0.26 },
d[] = { 0.16, 0.85, 0.22, 0.24 },
e[] = { 0 , 0 , 0 , 0 },
f[] = { 0 , 1.6 , 1.6 , 0.44 };
#define N (sizeof a / sizeof a[0])
#define M (25 * N)
int main()
{
int i, j, k, r, ip[N], table[M];
double x, y, s, t, p[N];
/* 確率の計算 */
s = 0;
for (i = 0; i < N; i++) {
p[i] = fabs(a[i] * d[i] - b[i] * c[i]);
s += p[i]; ip[i] = i;
}
/* 整列 */
for (i = 0; i < N - 1; i++) {
k = i;
for (j = i + 1; j < N; j++)
if (p[j] < p[k]) k = j;
t = p[i]; p[i] = p[k]; p[k] = t;
r = ip[i]; ip[i] = ip[k]; ip[k] = r;
}
/* 表作成 */
r = M;
for (i = 0; i < N; i++) {
k = (int)(r * p[i] / s + 0.5); s -= p[i];
do { table[--r] = ip[i]; } while (--k > 0);
}
/* IFSのアトラクタをプロット */
gr_on(); gr_window(left, bottom, right, top, 1, 0);
x = y = 0;
for (i = 0; i < 30000; i++) {
j = table[rand() / (RAND_MAX / M + 1)];
t = a[j] * x + b[j] * y + e[j];
y = c[j] * x + d[j] * y + f[j];
x = t;
if (i >= 10) gr_wdot(x, y, WHITE);
}
hitanykey();
return EXIT_SUCCESS;
}
#if 0 /***************************************************/
/* Sierpinskiの三角形のデータ */
double left = 0, bottom = 0, right = 1, top = 1,
a[] = { 0.5 , 0.5 , 0.5 },
b[] = { 0 , 0 , 0 },
c[] = { 0 , 0 , 0 },
d[] = { 0.5 , 0.5 , 0.5 },
e[] = { 0 , 1 , 0.5 },
f[] = { 0 , 0 , 0.5 };
/* 木のデータ */
double left = -1, bottom = 0, right = 1, top = 1,
a[] = { 0 , 0.1 , 0.42, 0.42 },
b[] = { 0 , 0 , -0.42, 0.42 },
c[] = { 0 , 0 , 0.42, -0.42 },
d[] = { 0.5 , 0.1 , 0.42, 0.42 },
e[] = { 0 , 0 , 0 , 0 },
f[] = { 0 , 0.2 , 0.2 , 0.2 };
/* もっと現実的な木のデータ */
double left = -1, bottom = 0, right = 1, top = 2,
a[] = { 0.05, 0.05, 0.46, 0.47, 0.43, 0.42 },
b[] = { 0 , 0 , -0.32, -0.15, 0.28, 0.26 },
c[] = { 0 , 0 , 0.39, 0.17, -0.25, -0.35 },
d[] = { 0.6 , -0.5 , 0.38, 0.42, 0.45, 0.31 },
e[] = { 0 , 0 , 0 , 0 , 0 , 0 },
f[] = { 0 , 1 , 0.6 , 1.1 , 1 , 0.7 };
#endif
ご教授願います。