Skip to content

Instantly share code, notes, and snippets.

@scruss
Last active August 26, 2022 19:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save scruss/0936040e380c6d4b80d961a8829ff030 to your computer and use it in GitHub Desktop.
Save scruss/0936040e380c6d4b80d961a8829ff030 to your computer and use it in GitHub Desktop.
stringart - from the MGR windowing desktop environment
/* Copyright (c) 1987 Bellcore
* All Rights Reserved
* Permission is granted to copy or use this program, EXCEPT that it
* may not be sold for profit, the copyright notice must be reproduced
* on copies, and credit should be given to Bellcore where it is due.
* BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
*/
/* $Header: art_data.c,v 4.2 88/06/22 14:37:09 bianchi Exp $
$Source: /tmp/mgrsrc/demo/misc/RCS/art_data.c,v $
*/
static char RCSid_[] = "$Source: /tmp/mgrsrc/demo/misc/RCS/art_data.c,v $$Revision: 4.2 $";
/* stringart.c 13 84/04/22 */
#define NUMLINES 343 /* number of vectors in a design */
#define NUMFUNCTIONS 13 /* number of functions */
int function[NUMFUNCTIONS][NUMLINES] = {
{
10000, 9883, 9767, 9650, 9534, 9417, 9300,
9184, 9067, 8950, 8834, 8717, 8601, 8484,
8367, 8251, 8134, 8017, 7901, 7784, 7668,
7551, 7434, 7318, 7201, 7085, 6968, 6851,
6735, 6618, 6501, 6385, 6268, 6152, 6035,
5918, 5802, 5685, 5569, 5452, 5335, 5219,
5102, 4985, 4869, 4752, 4636, 4519, 4402,
4286, 4169, 4052, 3936, 3819, 3703, 3586,
3469, 3353, 3236, 3120, 3003, 2886, 2770,
2653, 2536, 2420, 2303, 2187, 2070, 1953,
1837, 1720, 1603, 1487, 1370, 1254, 1137,
1020, 904, 787, 671, 554, 437, 321,
204, 87,- 29,- 146,- 262,- 379,- 496,
- 612,- 729,- 845,- 962,- 1079,- 1195,- 1312,
- 1429,- 1545,- 1662,- 1778,- 1895,- 2012,- 2128,
- 2245,- 2362,- 2478,- 2595,- 2711,- 2828,- 2945,
- 3061,- 3178,- 3294,- 3411,- 3528,- 3644,- 3761,
- 3878,- 3994,- 4111,- 4227,- 4344,- 4461,- 4577,
- 4694,- 4810,- 4927,- 5044,- 5160,- 5277,- 5394,
- 5510,- 5627,- 5743,- 5860,- 5977,- 6093,- 6210,
- 6327,- 6443,- 6560,- 6676,- 6793,- 6910,- 7026,
- 7143,- 7259,- 7376,- 7493,- 7609,- 7726,- 7843,
- 7959,- 8076,- 8192,- 8309,- 8426,- 8542,- 8659,
- 8776,- 8892,- 9009,- 9125,- 9242,- 9359,- 9475,
- 9592,- 9708,- 9825,- 9942,- 9942,- 9825,- 9708,
- 9592,- 9475,- 9359,- 9242,- 9125,- 9009,- 8892,
- 8776,- 8659,- 8542,- 8426,- 8309,- 8192,- 8076,
- 7959,- 7843,- 7726,- 7609,- 7493,- 7376,- 7259,
- 7143,- 7026,- 6910,- 6793,- 6676,- 6560,- 6443,
- 6327,- 6210,- 6093,- 5977,- 5860,- 5743,- 5627,
- 5510,- 5394,- 5277,- 5160,- 5044,- 4927,- 4810,
- 4694,- 4577,- 4461,- 4344,- 4227,- 4111,- 3994,
- 3878,- 3761,- 3644,- 3528,- 3411,- 3294,- 3178,
- 3061,- 2945,- 2828,- 2711,- 2595,- 2478,- 2362,
- 2245,- 2128,- 2012,- 1895,- 1778,- 1662,- 1545,
- 1429,- 1312,- 1195,- 1079,- 962,- 845,- 729,
- 612,- 496,- 379,- 262,- 146,- 29, 87,
204, 321, 437, 554, 671, 787, 904,
1020, 1137, 1254, 1370, 1487, 1603, 1720,
1837, 1953, 2070, 2187, 2303, 2420, 2536,
2653, 2770, 2886, 3003, 3120, 3236, 3353,
3469, 3586, 3703, 3819, 3936, 4052, 4169,
4286, 4402, 4519, 4636, 4752, 4869, 4985,
5102, 5219, 5335, 5452, 5569, 5685, 5802,
5918, 6035, 6152, 6268, 6385, 6501, 6618,
6735, 6851, 6968, 7085, 7201, 7318, 7434,
7551, 7668, 7784, 7901, 8017, 8134, 8251,
8367, 8484, 8601, 8717, 8834, 8950, 9067,
9184, 9300, 9417, 9534, 9650, 9767, 9883
},
{
0, 184, 367, 551, 734, 917, 1100,
1282, 1464, 1646, 1827, 2007, 2187, 2366,
2544, 2721, 2897, 3073, 3247, 3420, 3592,
3763, 3933, 4101, 4268, 4433, 4597, 4759,
4920, 5079, 5237, 5392, 5546, 5698, 5848,
5996, 6142, 6286, 6428, 6568, 6705, 6840,
6973, 7103, 7232, 7357, 7480, 7601, 7719,
7835, 7947, 8058, 8165, 8270, 8372, 8471,
8567, 8660, 8751, 8838, 8923, 9004, 9082,
9158, 9230, 9299, 9365, 9428, 9488, 9544,
9597, 9647, 9694, 9737, 9778, 9815, 9848,
9878, 9905, 9929, 9949, 9966, 9979, 9989,
9996,10000,10000, 9996, 9989, 9979, 9966,
9949, 9929, 9905, 9878, 9848, 9815, 9778,
9737, 9694, 9647, 9597, 9544, 9488, 9428,
9365, 9299, 9230, 9158, 9082, 9004, 8923,
8838, 8751, 8660, 8567, 8471, 8372, 8270,
8165, 8058, 7947, 7835, 7719, 7601, 7480,
7357, 7232, 7103, 6973, 6840, 6705, 6568,
6428, 6286, 6142, 5996, 5848, 5698, 5546,
5392, 5237, 5079, 4920, 4759, 4597, 4433,
4268, 4101, 3933, 3763, 3592, 3420, 3247,
3073, 2897, 2721, 2544, 2366, 2187, 2007,
1827, 1646, 1464, 1282, 1100, 917, 734,
551, 367, 184,0,- 184,- 367,- 551,
- 734,- 917,- 1100,- 1282,- 1464,- 1646,- 1827,
- 2007,- 2187,- 2366,- 2544,- 2721,- 2897,- 3073,
- 3247,- 3420,- 3592,- 3763,- 3933,- 4101,- 4268,
- 4433,- 4597,- 4759,- 4920,- 5079,- 5237,- 5392,
- 5546,- 5698,- 5848,- 5996,- 6142,- 6286,- 6428,
- 6568,- 6705,- 6840,- 6973,- 7103,- 7232,- 7357,
- 7480,- 7601,- 7719,- 7835,- 7947,- 8058,- 8165,
- 8270,- 8372,- 8471,- 8567,- 8660,- 8751,- 8838,
- 8923,- 9004,- 9082,- 9158,- 9230,- 9299,- 9365,
- 9428,- 9488,- 9544,- 9597,- 9647,- 9694,- 9737,
- 9778,- 9815,- 9848,- 9878,- 9905,- 9929,- 9949,
- 9966,- 9979,- 9989,- 9996,-10000,-10000,- 9996,
- 9989,- 9979,- 9966,- 9949,- 9929,- 9905,- 9878,
- 9848,- 9815,- 9778,- 9737,- 9694,- 9647,- 9597,
- 9544,- 9488,- 9428,- 9365,- 9299,- 9230,- 9158,
- 9082,- 9004,- 8923,- 8838,- 8751,- 8660,- 8567,
- 8471,- 8372,- 8270,- 8165,- 8058,- 7947,- 7835,
- 7719,- 7601,- 7480,- 7357,- 7232,- 7103,- 6973,
- 6840,- 6705,- 6568,- 6428,- 6286,- 6142,- 5996,
- 5848,- 5698,- 5546,- 5392,- 5237,- 5079,- 4920,
- 4759,- 4597,- 4433,- 4268,- 4101,- 3933,- 3763,
- 3592,- 3420,- 3247,- 3073,- 2897,- 2721,- 2544,
- 2366,- 2187,- 2007,- 1827,- 1646,- 1464,- 1282,
- 1100,- 917,- 734,- 551,- 367,- 184,0
},
{
0,- 184,- 367,- 551,- 734,- 917,- 1100,
- 1282,- 1464,- 1646,- 1827,- 2007,- 2187,- 2366,
- 2544,- 2721,- 2897,- 3073,- 3247,- 3420,- 3592,
- 3763,- 3933,- 4101,- 4268,- 4433,- 4597,- 4759,
- 4920,- 5079,- 5237,- 5392,- 5546,- 5698,- 5848,
- 5996,- 6142,- 6286,- 6428,- 6568,- 6705,- 6840,
- 6973,- 7103,- 7232,- 7357,- 7480,- 7601,- 7719,
- 7835,- 7947,- 8058,- 8165,- 8270,- 8372,- 8471,
- 8567,- 8660,- 8751,- 8838,- 8923,- 9004,- 9082,
- 9158,- 9230,- 9299,- 9365,- 9428,- 9488,- 9544,
- 9597,- 9647,- 9694,- 9737,- 9778,- 9815,- 9848,
- 9878,- 9905,- 9929,- 9949,- 9966,- 9979,- 9989,
- 9996,-10000,-10000,- 9996,- 9989,- 9979,- 9966,
- 9949,- 9929,- 9905,- 9878,- 9848,- 9815,- 9778,
- 9737,- 9694,- 9647,- 9597,- 9544,- 9488,- 9428,
- 9365,- 9299,- 9230,- 9158,- 9082,- 9004,- 8923,
- 8838,- 8751,- 8660,- 8567,- 8471,- 8372,- 8270,
- 8165,- 8058,- 7947,- 7835,- 7719,- 7601,- 7480,
- 7357,- 7232,- 7103,- 6973,- 6840,- 6705,- 6568,
- 6428,- 6286,- 6142,- 5996,- 5848,- 5698,- 5546,
- 5392,- 5237,- 5079,- 4920,- 4759,- 4597,- 4433,
- 4268,- 4101,- 3933,- 3763,- 3592,- 3420,- 3247,
- 3073,- 2897,- 2721,- 2544,- 2366,- 2187,- 2007,
- 1827,- 1646,- 1464,- 1282,- 1100,- 917,- 734,
- 551,- 367,- 184,0, 184, 367, 551,
734, 917, 1100, 1282, 1464, 1646, 1827,
2007, 2187, 2366, 2544, 2721, 2897, 3073,
3247, 3420, 3592, 3763, 3933, 4101, 4268,
4433, 4597, 4759, 4920, 5079, 5237, 5392,
5546, 5698, 5848, 5996, 6142, 6286, 6428,
6568, 6705, 6840, 6973, 7103, 7232, 7357,
7480, 7601, 7719, 7835, 7947, 8058, 8165,
8270, 8372, 8471, 8567, 8660, 8751, 8838,
8923, 9004, 9082, 9158, 9230, 9299, 9365,
9428, 9488, 9544, 9597, 9647, 9694, 9737,
9778, 9815, 9848, 9878, 9905, 9929, 9949,
9966, 9979, 9989, 9996,10000,10000, 9996,
9989, 9979, 9966, 9949, 9929, 9905, 9878,
9848, 9815, 9778, 9737, 9694, 9647, 9597,
9544, 9488, 9428, 9365, 9299, 9230, 9158,
9082, 9004, 8923, 8838, 8751, 8660, 8567,
8471, 8372, 8270, 8165, 8058, 7947, 7835,
7719, 7601, 7480, 7357, 7232, 7103, 6973,
6840, 6705, 6568, 6428, 6286, 6142, 5996,
5848, 5698, 5546, 5392, 5237, 5079, 4920,
4759, 4597, 4433, 4268, 4101, 3933, 3763,
3592, 3420, 3247, 3073, 2897, 2721, 2544,
2366, 2187, 2007, 1827, 1646, 1464, 1282,
1100, 917, 734, 551, 367, 184,0
},
{
10000, 9998, 9993, 9985, 9973, 9958, 9939,
9917, 9892, 9864, 9832, 9796, 9758, 9716,
9671, 9623, 9571, 9516, 9458, 9397, 9333,
9265, 9194, 9120, 9044, 8964, 8881, 8795,
8706, 8614, 8519, 8422, 8321, 8218, 8112,
8003, 7891, 7777, 7660, 7541, 7419, 7295,
7168, 7039, 6907, 6773, 6637, 6498, 6357,
6214, 6069, 5922, 5773, 5622, 5469, 5315,
5158, 5000, 4840, 4678, 4515, 4351, 4185,
4017, 3848, 3678, 3506, 3334, 3160, 2985,
2809, 2633, 2455, 2276, 2097, 1917, 1736,
1555, 1374, 1191, 1009, 826, 643, 459,
276, 92,- 92,- 276,- 459,- 643,- 826,
- 1009,- 1191,- 1374,- 1555,- 1736,- 1917,- 2097,
- 2276,- 2455,- 2633,- 2809,- 2985,- 3160,- 3334,
- 3506,- 3678,- 3848,- 4017,- 4185,- 4351,- 4515,
- 4678,- 4840,- 5000,- 5158,- 5315,- 5469,- 5622,
- 5773,- 5922,- 6069,- 6214,- 6357,- 6498,- 6637,
- 6773,- 6907,- 7039,- 7168,- 7295,- 7419,- 7541,
- 7660,- 7777,- 7891,- 8003,- 8112,- 8218,- 8321,
- 8422,- 8519,- 8614,- 8706,- 8795,- 8881,- 8964,
- 9044,- 9120,- 9194,- 9265,- 9333,- 9397,- 9458,
- 9516,- 9571,- 9623,- 9671,- 9716,- 9758,- 9796,
- 9832,- 9864,- 9892,- 9917,- 9939,- 9958,- 9973,
- 9985,- 9993,- 9998,-10000,- 9998,- 9993,- 9985,
- 9973,- 9958,- 9939,- 9917,- 9892,- 9864,- 9832,
- 9796,- 9758,- 9716,- 9671,- 9623,- 9571,- 9516,
- 9458,- 9397,- 9333,- 9265,- 9194,- 9120,- 9044,
- 8964,- 8881,- 8795,- 8706,- 8614,- 8519,- 8422,
- 8321,- 8218,- 8112,- 8003,- 7891,- 7777,- 7660,
- 7541,- 7419,- 7295,- 7168,- 7039,- 6907,- 6773,
- 6637,- 6498,- 6357,- 6214,- 6069,- 5922,- 5773,
- 5622,- 5469,- 5315,- 5158,- 5000,- 4840,- 4678,
- 4515,- 4351,- 4185,- 4017,- 3848,- 3678,- 3506,
- 3334,- 3160,- 2985,- 2809,- 2633,- 2455,- 2276,
- 2097,- 1917,- 1736,- 1555,- 1374,- 1191,- 1009,
- 826,- 643,- 459,- 276,- 92, 92, 276,
459, 643, 826, 1009, 1191, 1374, 1555,
1736, 1917, 2097, 2276, 2455, 2633, 2809,
2985, 3160, 3334, 3506, 3678, 3848, 4017,
4185, 4351, 4515, 4678, 4840, 5000, 5158,
5315, 5469, 5622, 5773, 5922, 6069, 6214,
6357, 6498, 6637, 6773, 6907, 7039, 7168,
7295, 7419, 7541, 7660, 7777, 7891, 8003,
8112, 8218, 8321, 8422, 8519, 8614, 8706,
8795, 8881, 8964, 9044, 9120, 9194, 9265,
9333, 9397, 9458, 9516, 9571, 9623, 9671,
9716, 9758, 9796, 9832, 9864, 9892, 9917,
9939, 9958, 9973, 9985, 9993, 9998,10000
},
{
-10000,- 9998,- 9993,- 9985,- 9973,- 9958,- 9939,
- 9917,- 9892,- 9864,- 9832,- 9796,- 9758,- 9716,
- 9671,- 9623,- 9571,- 9516,- 9458,- 9397,- 9333,
- 9265,- 9194,- 9120,- 9044,- 8964,- 8881,- 8795,
- 8706,- 8614,- 8519,- 8422,- 8321,- 8218,- 8112,
- 8003,- 7891,- 7777,- 7660,- 7541,- 7419,- 7295,
- 7168,- 7039,- 6907,- 6773,- 6637,- 6498,- 6357,
- 6214,- 6069,- 5922,- 5773,- 5622,- 5469,- 5315,
- 5158,- 5000,- 4840,- 4678,- 4515,- 4351,- 4185,
- 4017,- 3848,- 3678,- 3506,- 3334,- 3160,- 2985,
- 2809,- 2633,- 2455,- 2276,- 2097,- 1917,- 1736,
- 1555,- 1374,- 1191,- 1009,- 826,- 643,- 459,
- 276,- 92, 92, 276, 459, 643, 826,
1009, 1191, 1374, 1555, 1736, 1917, 2097,
2276, 2455, 2633, 2809, 2985, 3160, 3334,
3506, 3678, 3848, 4017, 4185, 4351, 4515,
4678, 4840, 5000, 5158, 5315, 5469, 5622,
5773, 5922, 6069, 6214, 6357, 6498, 6637,
6773, 6907, 7039, 7168, 7295, 7419, 7541,
7660, 7777, 7891, 8003, 8112, 8218, 8321,
8422, 8519, 8614, 8706, 8795, 8881, 8964,
9044, 9120, 9194, 9265, 9333, 9397, 9458,
9516, 9571, 9623, 9671, 9716, 9758, 9796,
9832, 9864, 9892, 9917, 9939, 9958, 9973,
9985, 9993, 9998,10000, 9998, 9993, 9985,
9973, 9958, 9939, 9917, 9892, 9864, 9832,
9796, 9758, 9716, 9671, 9623, 9571, 9516,
9458, 9397, 9333, 9265, 9194, 9120, 9044,
8964, 8881, 8795, 8706, 8614, 8519, 8422,
8321, 8218, 8112, 8003, 7891, 7777, 7660,
7541, 7419, 7295, 7168, 7039, 6907, 6773,
6637, 6498, 6357, 6214, 6069, 5922, 5773,
5622, 5469, 5315, 5158, 5000, 4840, 4678,
4515, 4351, 4185, 4017, 3848, 3678, 3506,
3334, 3160, 2985, 2809, 2633, 2455, 2276,
2097, 1917, 1736, 1555, 1374, 1191, 1009,
826, 643, 459, 276, 92,- 92,- 276,
- 459,- 643,- 826,- 1009,- 1191,- 1374,- 1555,
- 1736,- 1917,- 2097,- 2276,- 2455,- 2633,- 2809,
- 2985,- 3160,- 3334,- 3506,- 3678,- 3848,- 4017,
- 4185,- 4351,- 4515,- 4678,- 4840,- 5000,- 5158,
- 5315,- 5469,- 5622,- 5773,- 5922,- 6069,- 6214,
- 6357,- 6498,- 6637,- 6773,- 6907,- 7039,- 7168,
- 7295,- 7419,- 7541,- 7660,- 7777,- 7891,- 8003,
- 8112,- 8218,- 8321,- 8422,- 8519,- 8614,- 8706,
- 8795,- 8881,- 8964,- 9044,- 9120,- 9194,- 9265,
- 9333,- 9397,- 9458,- 9516,- 9571,- 9623,- 9671,
- 9716,- 9758,- 9796,- 9832,- 9864,- 9892,- 9917,
- 9939,- 9958,- 9973,- 9985,- 9993,- 9998,-10000
},
{
0, 367, 734, 1100, 1464, 1827, 2187,
2544, 2897, 3247, 3592, 3933, 4268, 4597,
4920, 5237, 5546, 5848, 6142, 6428, 6705,
6973, 7232, 7480, 7719, 7947, 8165, 8372,
8567, 8751, 8923, 9082, 9230, 9365, 9488,
9597, 9694, 9778, 9848, 9905, 9949, 9979,
9996,10000, 9989, 9966, 9929, 9878, 9815,
9737, 9647, 9544, 9428, 9299, 9158, 9004,
8838, 8660, 8471, 8270, 8058, 7835, 7601,
7357, 7103, 6840, 6568, 6286, 5996, 5698,
5392, 5079, 4759, 4433, 4101, 3763, 3420,
3073, 2721, 2366, 2007, 1646, 1282, 917,
551, 184,- 184,- 551,- 917,- 1282,- 1646,
- 2007,- 2366,- 2721,- 3073,- 3420,- 3763,- 4101,
- 4433,- 4759,- 5079,- 5392,- 5698,- 5996,- 6286,
- 6568,- 6840,- 7103,- 7357,- 7601,- 7835,- 8058,
- 8270,- 8471,- 8660,- 8838,- 9004,- 9158,- 9299,
- 9428,- 9544,- 9647,- 9737,- 9815,- 9878,- 9929,
- 9966,- 9989,-10000,- 9996,- 9979,- 9949,- 9905,
- 9848,- 9778,- 9694,- 9597,- 9488,- 9365,- 9230,
- 9082,- 8923,- 8751,- 8567,- 8372,- 8165,- 7947,
- 7719,- 7480,- 7232,- 6973,- 6705,- 6428,- 6142,
- 5848,- 5546,- 5237,- 4920,- 4597,- 4268,- 3933,
- 3592,- 3247,- 2897,- 2544,- 2187,- 1827,- 1464,
- 1100,- 734,- 367,0, 367, 734, 1100,
1464, 1827, 2187, 2544, 2897, 3247, 3592,
3933, 4268, 4597, 4920, 5237, 5546, 5848,
6142, 6428, 6705, 6973, 7232, 7480, 7719,
7947, 8165, 8372, 8567, 8751, 8923, 9082,
9230, 9365, 9488, 9597, 9694, 9778, 9848,
9905, 9949, 9979, 9996,10000, 9989, 9966,
9929, 9878, 9815, 9737, 9647, 9544, 9428,
9299, 9158, 9004, 8838, 8660, 8471, 8270,
8058, 7835, 7601, 7357, 7103, 6840, 6568,
6286, 5996, 5698, 5392, 5079, 4759, 4433,
4101, 3763, 3420, 3073, 2721, 2366, 2007,
1646, 1282, 917, 551, 184,- 184,- 551,
- 917,- 1282,- 1646,- 2007,- 2366,- 2721,- 3073,
- 3420,- 3763,- 4101,- 4433,- 4759,- 5079,- 5392,
- 5698,- 5996,- 6286,- 6568,- 6840,- 7103,- 7357,
- 7601,- 7835,- 8058,- 8270,- 8471,- 8660,- 8838,
- 9004,- 9158,- 9299,- 9428,- 9544,- 9647,- 9737,
- 9815,- 9878,- 9929,- 9966,- 9989,-10000,- 9996,
- 9979,- 9949,- 9905,- 9848,- 9778,- 9694,- 9597,
- 9488,- 9365,- 9230,- 9082,- 8923,- 8751,- 8567,
- 8372,- 8165,- 7947,- 7719,- 7480,- 7232,- 6973,
- 6705,- 6428,- 6142,- 5848,- 5546,- 5237,- 4920,
- 4597,- 4268,- 3933,- 3592,- 3247,- 2897,- 2544,
- 2187,- 1827,- 1464,- 1100,- 734,- 367,0,
},
{
0,- 367,- 734,- 1100,- 1464,- 1827,- 2187,
- 2544,- 2897,- 3247,- 3592,- 3933,- 4268,- 4597,
- 4920,- 5237,- 5546,- 5848,- 6142,- 6428,- 6705,
- 6973,- 7232,- 7480,- 7719,- 7947,- 8165,- 8372,
- 8567,- 8751,- 8923,- 9082,- 9230,- 9365,- 9488,
- 9597,- 9694,- 9778,- 9848,- 9905,- 9949,- 9979,
- 9996,-10000,- 9989,- 9966,- 9929,- 9878,- 9815,
- 9737,- 9647,- 9544,- 9428,- 9299,- 9158,- 9004,
- 8838,- 8660,- 8471,- 8270,- 8058,- 7835,- 7601,
- 7357,- 7103,- 6840,- 6568,- 6286,- 5996,- 5698,
- 5392,- 5079,- 4759,- 4433,- 4101,- 3763,- 3420,
- 3073,- 2721,- 2366,- 2007,- 1646,- 1282,- 917,
- 551,- 184, 184, 551, 917, 1282, 1646,
2007, 2366, 2721, 3073, 3420, 3763, 4101,
4433, 4759, 5079, 5392, 5698, 5996, 6286,
6568, 6840, 7103, 7357, 7601, 7835, 8058,
8270, 8471, 8660, 8838, 9004, 9158, 9299,
9428, 9544, 9647, 9737, 9815, 9878, 9929,
9966, 9989,10000, 9996, 9979, 9949, 9905,
9848, 9778, 9694, 9597, 9488, 9365, 9230,
9082, 8923, 8751, 8567, 8372, 8165, 7947,
7719, 7480, 7232, 6973, 6705, 6428, 6142,
5848, 5546, 5237, 4920, 4597, 4268, 3933,
3592, 3247, 2897, 2544, 2187, 1827, 1464,
1100, 734, 367,0,- 367,- 734,- 1100,
- 1464,- 1827,- 2187,- 2544,- 2897,- 3247,- 3592,
- 3933,- 4268,- 4597,- 4920,- 5237,- 5546,- 5848,
- 6142,- 6428,- 6705,- 6973,- 7232,- 7480,- 7719,
- 7947,- 8165,- 8372,- 8567,- 8751,- 8923,- 9082,
- 9230,- 9365,- 9488,- 9597,- 9694,- 9778,- 9848,
- 9905,- 9949,- 9979,- 9996,-10000,- 9989,- 9966,
- 9929,- 9878,- 9815,- 9737,- 9647,- 9544,- 9428,
- 9299,- 9158,- 9004,- 8838,- 8660,- 8471,- 8270,
- 8058,- 7835,- 7601,- 7357,- 7103,- 6840,- 6568,
- 6286,- 5996,- 5698,- 5392,- 5079,- 4759,- 4433,
- 4101,- 3763,- 3420,- 3073,- 2721,- 2366,- 2007,
- 1646,- 1282,- 917,- 551,- 184, 184, 551,
917, 1282, 1646, 2007, 2366, 2721, 3073,
3420, 3763, 4101, 4433, 4759, 5079, 5392,
5698, 5996, 6286, 6568, 6840, 7103, 7357,
7601, 7835, 8058, 8270, 8471, 8660, 8838,
9004, 9158, 9299, 9428, 9544, 9647, 9737,
9815, 9878, 9929, 9966, 9989,10000, 9996,
9979, 9949, 9905, 9848, 9778, 9694, 9597,
9488, 9365, 9230, 9082, 8923, 8751, 8567,
8372, 8165, 7947, 7719, 7480, 7232, 6973,
6705, 6428, 6142, 5848, 5546, 5237, 4920,
4597, 4268, 3933, 3592, 3247, 2897, 2544,
2187, 1827, 1464, 1100, 734, 367,0
},
{
10000, 9993, 9973, 9939, 9892, 9832, 9758,
9671, 9571, 9458, 9333, 9194, 9044, 8881,
8706, 8519, 8321, 8112, 7891, 7660, 7419,
7168, 6907, 6637, 6357, 6069, 5773, 5469,
5158, 4840, 4515, 4185, 3848, 3506, 3160,
2809, 2455, 2097, 1736, 1374, 1009, 643,
276,- 92,- 459,- 826,- 1191,- 1555,- 1917,
- 2276,- 2633,- 2985,- 3334,- 3678,- 4017,- 4351,
- 4678,- 5000,- 5315,- 5622,- 5922,- 6214,- 6498,
- 6773,- 7039,- 7295,- 7541,- 7777,- 8003,- 8218,
- 8422,- 8614,- 8795,- 8964,- 9120,- 9265,- 9397,
- 9516,- 9623,- 9716,- 9796,- 9864,- 9917,- 9958,
- 9985,- 9998,- 9998,- 9985,- 9958,- 9917,- 9864,
- 9796,- 9716,- 9623,- 9516,- 9397,- 9265,- 9120,
- 8964,- 8795,- 8614,- 8422,- 8218,- 8003,- 7777,
- 7541,- 7295,- 7039,- 6773,- 6498,- 6214,- 5922,
- 5622,- 5315,- 5000,- 4678,- 4351,- 4017,- 3678,
- 3334,- 2985,- 2633,- 2276,- 1917,- 1555,- 1191,
- 826,- 459,- 92, 276, 643, 1009, 1374,
1736, 2097, 2455, 2809, 3160, 3506, 3848,
4185, 4515, 4840, 5158, 5469, 5773, 6069,
6357, 6637, 6907, 7168, 7419, 7660, 7891,
8112, 8321, 8519, 8706, 8881, 9044, 9194,
9333, 9458, 9571, 9671, 9758, 9832, 9892,
9939, 9973, 9993,10000, 9993, 9973, 9939,
9892, 9832, 9758, 9671, 9571, 9458, 9333,
9194, 9044, 8881, 8706, 8519, 8321, 8112,
7891, 7660, 7419, 7168, 6907, 6637, 6357,
6069, 5773, 5469, 5158, 4840, 4515, 4185,
3848, 3506, 3160, 2809, 2455, 2097, 1736,
1374, 1009, 643, 276,- 92,- 459,- 826,
- 1191,- 1555,- 1917,- 2276,- 2633,- 2985,- 3334,
- 3678,- 4017,- 4351,- 4678,- 5000,- 5315,- 5622,
- 5922,- 6214,- 6498,- 6773,- 7039,- 7295,- 7541,
- 7777,- 8003,- 8218,- 8422,- 8614,- 8795,- 8964,
- 9120,- 9265,- 9397,- 9516,- 9623,- 9716,- 9796,
- 9864,- 9917,- 9958,- 9985,- 9998,- 9998,- 9985,
- 9958,- 9917,- 9864,- 9796,- 9716,- 9623,- 9516,
- 9397,- 9265,- 9120,- 8964,- 8795,- 8614,- 8422,
- 8218,- 8003,- 7777,- 7541,- 7295,- 7039,- 6773,
- 6498,- 6214,- 5922,- 5622,- 5315,- 5000,- 4678,
- 4351,- 4017,- 3678,- 3334,- 2985,- 2633,- 2276,
- 1917,- 1555,- 1191,- 826,- 459,- 92, 276,
643, 1009, 1374, 1736, 2097, 2455, 2809,
3160, 3506, 3848, 4185, 4515, 4840, 5158,
5469, 5773, 6069, 6357, 6637, 6907, 7168,
7419, 7660, 7891, 8112, 8321, 8519, 8706,
8881, 9044, 9194, 9333, 9458, 9571, 9671,
9758, 9832, 9892, 9939, 9973, 9993,10000
},
{
-10000,- 9993,- 9973,- 9939,- 9892,- 9832,- 9758,
- 9671,- 9571,- 9458,- 9333,- 9194,- 9044,- 8881,
- 8706,- 8519,- 8321,- 8112,- 7891,- 7660,- 7419,
- 7168,- 6907,- 6637,- 6357,- 6069,- 5773,- 5469,
- 5158,- 4840,- 4515,- 4185,- 3848,- 3506,- 3160,
- 2809,- 2455,- 2097,- 1736,- 1374,- 1009,- 643,
- 276, 92, 459, 826, 1191, 1555, 1917,
2276, 2633, 2985, 3334, 3678, 4017, 4351,
4678, 5000, 5315, 5622, 5922, 6214, 6498,
6773, 7039, 7295, 7541, 7777, 8003, 8218,
8422, 8614, 8795, 8964, 9120, 9265, 9397,
9516, 9623, 9716, 9796, 9864, 9917, 9958,
9985, 9998, 9998, 9985, 9958, 9917, 9864,
9796, 9716, 9623, 9516, 9397, 9265, 9120,
8964, 8795, 8614, 8422, 8218, 8003, 7777,
7541, 7295, 7039, 6773, 6498, 6214, 5922,
5622, 5315, 5000, 4678, 4351, 4017, 3678,
3334, 2985, 2633, 2276, 1917, 1555, 1191,
826, 459, 92,- 276,- 643,- 1009,- 1374,
- 1736,- 2097,- 2455,- 2809,- 3160,- 3506,- 3848,
- 4185,- 4515,- 4840,- 5158,- 5469,- 5773,- 6069,
- 6357,- 6637,- 6907,- 7168,- 7419,- 7660,- 7891,
- 8112,- 8321,- 8519,- 8706,- 8881,- 9044,- 9194,
- 9333,- 9458,- 9571,- 9671,- 9758,- 9832,- 9892,
- 9939,- 9973,- 9993,-10000,- 9993,- 9973,- 9939,
- 9892,- 9832,- 9758,- 9671,- 9571,- 9458,- 9333,
- 9194,- 9044,- 8881,- 8706,- 8519,- 8321,- 8112,
- 7891,- 7660,- 7419,- 7168,- 6907,- 6637,- 6357,
- 6069,- 5773,- 5469,- 5158,- 4840,- 4515,- 4185,
- 3848,- 3506,- 3160,- 2809,- 2455,- 2097,- 1736,
- 1374,- 1009,- 643,- 276, 92, 459, 826,
1191, 1555, 1917, 2276, 2633, 2985, 3334,
3678, 4017, 4351, 4678, 5000, 5315, 5622,
5922, 6214, 6498, 6773, 7039, 7295, 7541,
7777, 8003, 8218, 8422, 8614, 8795, 8964,
9120, 9265, 9397, 9516, 9623, 9716, 9796,
9864, 9917, 9958, 9985, 9998, 9998, 9985,
9958, 9917, 9864, 9796, 9716, 9623, 9516,
9397, 9265, 9120, 8964, 8795, 8614, 8422,
8218, 8003, 7777, 7541, 7295, 7039, 6773,
6498, 6214, 5922, 5622, 5315, 5000, 4678,
4351, 4017, 3678, 3334, 2985, 2633, 2276,
1917, 1555, 1191, 826, 459, 92,- 276,
- 643,- 1009,- 1374,- 1736,- 2097,- 2455,- 2809,
- 3160,- 3506,- 3848,- 4185,- 4515,- 4840,- 5158,
- 5469,- 5773,- 6069,- 6357,- 6637,- 6907,- 7168,
- 7419,- 7660,- 7891,- 8112,- 8321,- 8519,- 8706,
- 8881,- 9044,- 9194,- 9333,- 9458,- 9571,- 9671,
- 9758,- 9832,- 9892,- 9939,- 9973,- 9993,-10000
},
{
0, 551, 1100, 1646, 2187, 2721, 3247,
3763, 4268, 4759, 5237, 5698, 6142, 6568,
6973, 7357, 7719, 8058, 8372, 8660, 8923,
9158, 9365, 9544, 9694, 9815, 9905, 9966,
9996, 9996, 9966, 9905, 9815, 9694, 9544,
9365, 9158, 8923, 8660, 8372, 8058, 7719,
7357, 6973, 6568, 6142, 5698, 5237, 4759,
4268, 3763, 3247, 2721, 2187, 1646, 1100,
551,0,- 551,- 1100,- 1646,- 2187,- 2721,
- 3247,- 3763,- 4268,- 4759,- 5237,- 5698,- 6142,
- 6568,- 6973,- 7357,- 7719,- 8058,- 8372,- 8660,
- 8923,- 9158,- 9365,- 9544,- 9694,- 9815,- 9905,
- 9966,- 9996,- 9996,- 9966,- 9905,- 9815,- 9694,
- 9544,- 9365,- 9158,- 8923,- 8660,- 8372,- 8058,
- 7719,- 7357,- 6973,- 6568,- 6142,- 5698,- 5237,
- 4759,- 4268,- 3763,- 3247,- 2721,- 2187,- 1646,
- 1100,- 551,0, 551, 1100, 1646, 2187,
2721, 3247, 3763, 4268, 4759, 5237, 5698,
6142, 6568, 6973, 7357, 7719, 8058, 8372,
8660, 8923, 9158, 9365, 9544, 9694, 9815,
9905, 9966, 9996, 9996, 9966, 9905, 9815,
9694, 9544, 9365, 9158, 8923, 8660, 8372,
8058, 7719, 7357, 6973, 6568, 6142, 5698,
5237, 4759, 4268, 3763, 3247, 2721, 2187,
1646, 1100, 551,0,- 551,- 1100,- 1646,
- 2187,- 2721,- 3247,- 3763,- 4268,- 4759,- 5237,
- 5698,- 6142,- 6568,- 6973,- 7357,- 7719,- 8058,
- 8372,- 8660,- 8923,- 9158,- 9365,- 9544,- 9694,
- 9815,- 9905,- 9966,- 9996,- 9996,- 9966,- 9905,
- 9815,- 9694,- 9544,- 9365,- 9158,- 8923,- 8660,
- 8372,- 8058,- 7719,- 7357,- 6973,- 6568,- 6142,
- 5698,- 5237,- 4759,- 4268,- 3763,- 3247,- 2721,
- 2187,- 1646,- 1100,- 551,0, 551, 1100,
1646, 2187, 2721, 3247, 3763, 4268, 4759,
5237, 5698, 6142, 6568, 6973, 7357, 7719,
8058, 8372, 8660, 8923, 9158, 9365, 9544,
9694, 9815, 9905, 9966, 9996, 9996, 9966,
9905, 9815, 9694, 9544, 9365, 9158, 8923,
8660, 8372, 8058, 7719, 7357, 6973, 6568,
6142, 5698, 5237, 4759, 4268, 3763, 3247,
2721, 2187, 1646, 1100, 551,0,- 551,
- 1100,- 1646,- 2187,- 2721,- 3247,- 3763,- 4268,
- 4759,- 5237,- 5698,- 6142,- 6568,- 6973,- 7357,
- 7719,- 8058,- 8372,- 8660,- 8923,- 9158,- 9365,
- 9544,- 9694,- 9815,- 9905,- 9966,- 9996,- 9996,
- 9966,- 9905,- 9815,- 9694,- 9544,- 9365,- 9158,
- 8923,- 8660,- 8372,- 8058,- 7719,- 7357,- 6973,
- 6568,- 6142,- 5698,- 5237,- 4759,- 4268,- 3763,
- 3247,- 2721,- 2187,- 1646,- 1100,- 551,0
},
{
0,- 551,- 1100,- 1646,- 2187,- 2721,- 3247,
- 3763,- 4268,- 4759,- 5237,- 5698,- 6142,- 6568,
- 6973,- 7357,- 7719,- 8058,- 8372,- 8660,- 8923,
- 9158,- 9365,- 9544,- 9694,- 9815,- 9905,- 9966,
- 9996,- 9996,- 9966,- 9905,- 9815,- 9694,- 9544,
- 9365,- 9158,- 8923,- 8660,- 8372,- 8058,- 7719,
- 7357,- 6973,- 6568,- 6142,- 5698,- 5237,- 4759,
- 4268,- 3763,- 3247,- 2721,- 2187,- 1646,- 1100,
- 551,0, 551, 1100, 1646, 2187, 2721,
3247, 3763, 4268, 4759, 5237, 5698, 6142,
6568, 6973, 7357, 7719, 8058, 8372, 8660,
8923, 9158, 9365, 9544, 9694, 9815, 9905,
9966, 9996, 9996, 9966, 9905, 9815, 9694,
9544, 9365, 9158, 8923, 8660, 8372, 8058,
7719, 7357, 6973, 6568, 6142, 5698, 5237,
4759, 4268, 3763, 3247, 2721, 2187, 1646,
1100, 551,0,- 551,- 1100,- 1646,- 2187,
- 2721,- 3247,- 3763,- 4268,- 4759,- 5237,- 5698,
- 6142,- 6568,- 6973,- 7357,- 7719,- 8058,- 8372,
- 8660,- 8923,- 9158,- 9365,- 9544,- 9694,- 9815,
- 9905,- 9966,- 9996,- 9996,- 9966,- 9905,- 9815,
- 9694,- 9544,- 9365,- 9158,- 8923,- 8660,- 8372,
- 8058,- 7719,- 7357,- 6973,- 6568,- 6142,- 5698,
- 5237,- 4759,- 4268,- 3763,- 3247,- 2721,- 2187,
- 1646,- 1100,- 551,0, 551, 1100, 1646,
2187, 2721, 3247, 3763, 4268, 4759, 5237,
5698, 6142, 6568, 6973, 7357, 7719, 8058,
8372, 8660, 8923, 9158, 9365, 9544, 9694,
9815, 9905, 9966, 9996, 9996, 9966, 9905,
9815, 9694, 9544, 9365, 9158, 8923, 8660,
8372, 8058, 7719, 7357, 6973, 6568, 6142,
5698, 5237, 4759, 4268, 3763, 3247, 2721,
2187, 1646, 1100, 551,0,- 551,- 1100,
- 1646,- 2187,- 2721,- 3247,- 3763,- 4268,- 4759,
- 5237,- 5698,- 6142,- 6568,- 6973,- 7357,- 7719,
- 8058,- 8372,- 8660,- 8923,- 9158,- 9365,- 9544,
- 9694,- 9815,- 9905,- 9966,- 9996,- 9996,- 9966,
- 9905,- 9815,- 9694,- 9544,- 9365,- 9158,- 8923,
- 8660,- 8372,- 8058,- 7719,- 7357,- 6973,- 6568,
- 6142,- 5698,- 5237,- 4759,- 4268,- 3763,- 3247,
- 2721,- 2187,- 1646,- 1100,- 551,0, 551,
1100, 1646, 2187, 2721, 3247, 3763, 4268,
4759, 5237, 5698, 6142, 6568, 6973, 7357,
7719, 8058, 8372, 8660, 8923, 9158, 9365,
9544, 9694, 9815, 9905, 9966, 9996, 9996,
9966, 9905, 9815, 9694, 9544, 9365, 9158,
8923, 8660, 8372, 8058, 7719, 7357, 6973,
6568, 6142, 5698, 5237, 4759, 4268, 3763,
3247, 2721, 2187, 1646, 1100, 551,0
},
{
10000, 9985, 9939, 9864, 9758, 9623, 9458,
9265, 9044, 8795, 8519, 8218, 7891, 7541,
7168, 6773, 6357, 5922, 5469, 5000, 4515,
4017, 3506, 2985, 2455, 1917, 1374, 826,
276,- 276,- 826,- 1374,- 1917,- 2455,- 2985,
- 3506,- 4017,- 4515,- 5000,- 5469,- 5922,- 6357,
- 6773,- 7168,- 7541,- 7891,- 8218,- 8519,- 8795,
- 9044,- 9265,- 9458,- 9623,- 9758,- 9864,- 9939,
- 9985,-10000,- 9985,- 9939,- 9864,- 9758,- 9623,
- 9458,- 9265,- 9044,- 8795,- 8519,- 8218,- 7891,
- 7541,- 7168,- 6773,- 6357,- 5922,- 5469,- 5000,
- 4515,- 4017,- 3506,- 2985,- 2455,- 1917,- 1374,
- 826,- 276, 276, 826, 1374, 1917, 2455,
2985, 3506, 4017, 4515, 5000, 5469, 5922,
6357, 6773, 7168, 7541, 7891, 8218, 8519,
8795, 9044, 9265, 9458, 9623, 9758, 9864,
9939, 9985,10000, 9985, 9939, 9864, 9758,
9623, 9458, 9265, 9044, 8795, 8519, 8218,
7891, 7541, 7168, 6773, 6357, 5922, 5469,
5000, 4515, 4017, 3506, 2985, 2455, 1917,
1374, 826, 276,- 276,- 826,- 1374,- 1917,
- 2455,- 2985,- 3506,- 4017,- 4515,- 5000,- 5469,
- 5922,- 6357,- 6773,- 7168,- 7541,- 7891,- 8218,
- 8519,- 8795,- 9044,- 9265,- 9458,- 9623,- 9758,
- 9864,- 9939,- 9985,-10000,- 9985,- 9939,- 9864,
- 9758,- 9623,- 9458,- 9265,- 9044,- 8795,- 8519,
- 8218,- 7891,- 7541,- 7168,- 6773,- 6357,- 5922,
- 5469,- 5000,- 4515,- 4017,- 3506,- 2985,- 2455,
- 1917,- 1374,- 826,- 276, 276, 826, 1374,
1917, 2455, 2985, 3506, 4017, 4515, 5000,
5469, 5922, 6357, 6773, 7168, 7541, 7891,
8218, 8519, 8795, 9044, 9265, 9458, 9623,
9758, 9864, 9939, 9985,10000, 9985, 9939,
9864, 9758, 9623, 9458, 9265, 9044, 8795,
8519, 8218, 7891, 7541, 7168, 6773, 6357,
5922, 5469, 5000, 4515, 4017, 3506, 2985,
2455, 1917, 1374, 826, 276,- 276,- 826,
- 1374,- 1917,- 2455,- 2985,- 3506,- 4017,- 4515,
- 5000,- 5469,- 5922,- 6357,- 6773,- 7168,- 7541,
- 7891,- 8218,- 8519,- 8795,- 9044,- 9265,- 9458,
- 9623,- 9758,- 9864,- 9939,- 9985,-10000,- 9985,
- 9939,- 9864,- 9758,- 9623,- 9458,- 9265,- 9044,
- 8795,- 8519,- 8218,- 7891,- 7541,- 7168,- 6773,
- 6357,- 5922,- 5469,- 5000,- 4515,- 4017,- 3506,
- 2985,- 2455,- 1917,- 1374,- 826,- 276, 276,
826, 1374, 1917, 2455, 2985, 3506, 4017,
4515, 5000, 5469, 5922, 6357, 6773, 7168,
7541, 7891, 8218, 8519, 8795, 9044, 9265,
9458, 9623, 9758, 9864, 9939, 9985,10000
},
{
-10000,- 9985,- 9939,- 9864,- 9758,- 9623,- 9458,
- 9265,- 9044,- 8795,- 8519,- 8218,- 7891,- 7541,
- 7168,- 6773,- 6357,- 5922,- 5469,- 5000,- 4515,
- 4017,- 3506,- 2985,- 2455,- 1917,- 1374,- 826,
- 276, 276, 826, 1374, 1917, 2455, 2985,
3506, 4017, 4515, 5000, 5469, 5922, 6357,
6773, 7168, 7541, 7891, 8218, 8519, 8795,
9044, 9265, 9458, 9623, 9758, 9864, 9939,
9985,10000, 9985, 9939, 9864, 9758, 9623,
9458, 9265, 9044, 8795, 8519, 8218, 7891,
7541, 7168, 6773, 6357, 5922, 5469, 5000,
4515, 4017, 3506, 2985, 2455, 1917, 1374,
826, 276,- 276,- 826,- 1374,- 1917,- 2455,
- 2985,- 3506,- 4017,- 4515,- 5000,- 5469,- 5922,
- 6357,- 6773,- 7168,- 7541,- 7891,- 8218,- 8519,
- 8795,- 9044,- 9265,- 9458,- 9623,- 9758,- 9864,
- 9939,- 9985,-10000,- 9985,- 9939,- 9864,- 9758,
- 9623,- 9458,- 9265,- 9044,- 8795,- 8519,- 8218,
- 7891,- 7541,- 7168,- 6773,- 6357,- 5922,- 5469,
- 5000,- 4515,- 4017,- 3506,- 2985,- 2455,- 1917,
- 1374,- 826,- 276, 276, 826, 1374, 1917,
2455, 2985, 3506, 4017, 4515, 5000, 5469,
5922, 6357, 6773, 7168, 7541, 7891, 8218,
8519, 8795, 9044, 9265, 9458, 9623, 9758,
9864, 9939, 9985,10000, 9985, 9939, 9864,
9758, 9623, 9458, 9265, 9044, 8795, 8519,
8218, 7891, 7541, 7168, 6773, 6357, 5922,
5469, 5000, 4515, 4017, 3506, 2985, 2455,
1917, 1374, 826, 276,- 276,- 826,- 1374,
- 1917,- 2455,- 2985,- 3506,- 4017,- 4515,- 5000,
- 5469,- 5922,- 6357,- 6773,- 7168,- 7541,- 7891,
- 8218,- 8519,- 8795,- 9044,- 9265,- 9458,- 9623,
- 9758,- 9864,- 9939,- 9985,-10000,- 9985,- 9939,
- 9864,- 9758,- 9623,- 9458,- 9265,- 9044,- 8795,
- 8519,- 8218,- 7891,- 7541,- 7168,- 6773,- 6357,
- 5922,- 5469,- 5000,- 4515,- 4017,- 3506,- 2985,
- 2455,- 1917,- 1374,- 826,- 276, 276, 826,
1374, 1917, 2455, 2985, 3506, 4017, 4515,
5000, 5469, 5922, 6357, 6773, 7168, 7541,
7891, 8218, 8519, 8795, 9044, 9265, 9458,
9623, 9758, 9864, 9939, 9985,10000, 9985,
9939, 9864, 9758, 9623, 9458, 9265, 9044,
8795, 8519, 8218, 7891, 7541, 7168, 6773,
6357, 5922, 5469, 5000, 4515, 4017, 3506,
2985, 2455, 1917, 1374, 826, 276,- 276,
- 826,- 1374,- 1917,- 2455,- 2985,- 3506,- 4017,
- 4515,- 5000,- 5469,- 5922,- 6357,- 6773,- 7168,
- 7541,- 7891,- 8218,- 8519,- 8795,- 9044,- 9265,
- 9458,- 9623,- 9758,- 9864,- 9939,- 9985,-10000
}
};
/* Copyright (c) 1987 Bellcore
* All Rights Reserved
* Permission is granted to copy or use this program, EXCEPT that it
* may not be sold for profit, the copyright notice must be reproduced
* on copies, and credit should be given to Bellcore where it is due.
* BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM.
*/
/* $Header: stringart.c,v 4.3 88/06/30 11:41:47 sau Exp $
$Source: /tmp/mgrsrc/demo/misc/RCS/stringart.c,v $
*/
static char RCSid_[] = "$Source: /tmp/mgrsrc/demo/misc/RCS/stringart.c,v $$Revision: 4.3 $";
/* stringart.c 13 84/04/22 */
#include <stdio.h>
#include <sys/time.h>
#include "term.h"
#include "restart.h"
#define NUMLINES 343 /* number of vectors in a design */
#define NUMFUNCTIONS 13 /* number of functions */
#define RAWMIN (-10000) /* smallest raw data value */
#define RAWMAX (10000) /* largest raw data value */
extern int function[NUMFUNCTIONS][NUMLINES];
#define fsleep(x) \
{ \
struct timeval time; \
time.tv_sec = 0; \
time.tv_usec = x; \
select(0,0,0,0,&time); \
}
main(argc,argv)
int argc;
char *argv[];
{
register int m,i,j,k,l;
int xoffset;
int yoffset;
int xscale, yscale, rscale;
int xmin,xmax,ymin,ymax;
short lines[4][NUMLINES];
int lcolor,bcolor; /* line colors */
int slp=0;
ckmgrterm( *argv );
if (argc>1 && strcmp(argv[1],"-s")==0) {
argc--; argv++;
slp++;
}
rscale = (RAWMAX-RAWMIN);
if (argc >= 5) {
xmin = atoi(argv[1]);
ymin = atoi(argv[2]);
xmax = atoi(argv[3]);
ymax = atoi(argv[4]);
}
else {
xmin = 0;
ymin = 0;
xmax = 999;
ymax = 999;
}
xscale = xmax-xmin;
yscale = ymax-ymin;
xoffset = xmin;
yoffset = ymin;
srand(getpid());
m_setup(0);
m_func(B_SET);
Restart();
m_clear(); m_flush();
while(1) {
i=(rand()>>5)%NUMFUNCTIONS;
while((j=(rand()>>5)%NUMFUNCTIONS)==i);
k=(rand()>>5)%NUMFUNCTIONS;
while((l=(rand()>>5)%NUMFUNCTIONS)==k);
bcolor = rand()%24;
m_bcolor(bcolor);
for(m=0;m<NUMLINES;m++) {
lines[0][m] = (function[i][m]-RAWMIN)*xscale/rscale+xoffset;
lines[1][m] = (function[k][m]-RAWMIN)*yscale/rscale+yoffset;
lines[2][m] = (function[j][m]-RAWMIN)*xscale/rscale+xoffset;
lines[3][m] = (function[l][m]-RAWMIN)*yscale/rscale+yoffset;
}
m_clear();
for(m=0;m<NUMLINES;m++) {
while((lcolor = rand()%24) == bcolor);
m_linecolor(B_SRC,lcolor);
m_line(lines[0][m],lines[1][m],
lines[2][m],lines[3][m]);
if (slp) {
m_flush();
fsleep(60000);
}
}
m_flush();
sleep(argc>5?atoi(argv[5]):3);
}
}
@scruss
Copy link
Author

scruss commented Aug 12, 2022

@scruss
Copy link
Author

scruss commented Aug 26, 2022

as I suspected art-data.c is all precomputed functions that would take too long to pre-calculate on machines of that time.

Calculated on the x range 0..342 (Python: range(343)), the y values are the rounded outputs of the following functions:

 0	x<172:	10000-116.618044304*x
 	x>=172:	116.618043056*x-30000
 1	10000*SIN(x*PI()/171)
 2	-10000*SIN(x*PI()/171)
 3	10000*COS(x*PI()/171)
 4	-10000*COS(x*PI()/171)
 5	10000*SIN(2*x*PI()/171)
 6	-10000*SIN(2*x*PI()/171)
 7	10000*COS(2*x*PI()/171)
 8	-10000*COS(2*x*PI()/171)
 9	10000*SIN(3*x*PI()/171)
10	-10000*SIN(3*x*PI()/171)
11	10000*COS(3*x*PI()/171)
12	-10000*COS(3*x*PI()/171)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment