/*CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C C COMPUTE MEASURES (local maxima for sum of |M(x/i)| where i|x, x<=450000000)C C 09/08/15 (DKC) C C C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC*/ #include <stdio.h> #include <math.h> unsigned int flag=0; // 0 for sqrt(l)/m // 1 for m/l // 2 for 1/log(l) // 3 for m/sigma0(l) // 4 for l // 5 for 1/sqrt(l) unsigned int in[181*3]={ 2, 1, 2, 3, 2, 2, 5, 3, 2, 8, 4, 4, 12, 6, 6, 18, 7, 6, 20, 8, 6, 24, 10, 8, 36, 11, 9, 48, 14, 10, 60, 17, 12, 72, 18, 12, 84, 19, 12, 96, 20, 12, 120, 24, 16, 168, 26, 16, 180, 30, 18, 240, 33, 20, 288, 36, 18, 360, 41, 24, 480, 45, 24, 576, 47, 21, 600, 50, 24, 660, 53, 24, 672, 55, 24, 840, 57, 32, 960, 59, 28, 1080, 60, 32, 1120, 61, 24, 1140, 65, 24, 1320, 71, 32, 1440, 80, 36, 1680, 88, 40, 2400, 89, 36, 2520, 91, 48, 2640, 94, 40, 2772, 98, 36, 2808, 100, 32, 2880, 119, 42, 3360, 142, 48, 6480, 143, 50, 6552, 158, 48, 6600, 174, 48, 6720, 188, 56, 8400, 191, 60, 9828, 210, 48, 9900, 216, 54, 10080, 218, 72, 13200, 222, 60, 14040, 238, 64, 15840, 246, 72, 16320, 251, 56, 16380, 283, 72, 19656, 326, 64, 19800, 342, 72, 31680, 393, 84, 39312, 415, 80, 39600, 420, 90, 42120, 443, 80, 42840, 447, 96, 47520, 474, 96, 47880, 478, 96, 48510, 505, 72, 48960, 556, 84, 49140, 597, 96, 59400, 607, 96, 83160, 614, 128, 85680, 638, 120, 95040, 797, 112, 95760, 805, 120, 97020, 875, 108, 98280, 877, 128, 138600, 907, 144, 171360, 1130, 144, 191520, 1168, 144, 239400, 1174, 144, 257400, 1177, 144, 277200, 1187, 180, 285120, 1282, 140, 289800, 1386, 144, 291060, 1395, 144, 294840, 1497, 160, 342720, 1815, 168, 574560, 1843, 192, 579600, 1894, 180, 589680, 1956, 200, 599760, 2032, 180, 665280, 2289, 224, 685440, 2305, 192, 693000, 2438, 192, 924000, 2478, 192, 925680, 2525, 160, 926640, 2818, 200, 1053360, 2908, 240, 1081080, 2945, 256, 1330560, 3005, 256, 1386000, 3260, 240, 1663200, 3301, 288, 1670760, 3508, 256, 1774080, 3536, 240, 1789200, 3542, 180, 1790880, 3617, 192, 1795500, 3788, 192, 1801800, 4167, 288, 2079000, 4429, 256, 2106720, 4771, 288, 3187800, 4801, 288, 3243240, 5668, 320, 4158000, 6081, 320, 4213440, 6721, 336, 4969440, 6724, 288, 5266800, 6937, 360, 5372640, 7110, 288, 5405400, 7415, 384, 6375600, 7597, 360, 6444900, 7676, 288, 6463800, 7912, 288, 6486480, 9045, 400, 8648640, 9127, 448, 9767520, 9145, 384, 9853200, 9199, 360, 9896040, 9897, 384, 9938880, 10293, 336, 10533600, 10496, 432, 10810800, 10694, 480, 12448800, 10828, 432, 12612600, 11044, 432, 12640320, 11515, 448, 12889800, 12273, 384, 12972960, 13453, 480, 18378360, 13506, 512, 19404000, 13572, 432, 19459440, 14846, 480, 21621600, 15440, 576, 24864840, 15565, 512, 25225200, 16142, 540, 25779600, 16827, 480, 25945920, 18218, 560, 30270240, 19377, 576, 30630600, 20145, 576, 32432400, 20472, 600, 35814240, 21586, 576, 36756720, 22229, 640, 45405360, 22896, 600, 49729680, 24667, 640, 51836400, 25186, 540, 60540480, 28546, 672, 61094880, 28816, 576, 61261200, 30020, 720, 64864800, 30971, 720, 71628480, 32991, 672, 90810720, 35938, 720, 91891800, 37966, 768, 109549440, 38987, 768, 110270160, 41339, 800, 122522400, 41845, 864, 123243120, 42440, 800, 129729600, 42841, 840, 136936800, 43260, 864, 140900760, 44085, 768, 142203600, 45702, 720, 151351200, 46376, 864, 153153000, 47782, 768, 179071200, 50364, 864, 179928000, 51084, 672, 180180000, 51416, 720, 181427400, 51895, 648, 181621440, 53865, 840, 183284640, 53919, 768, 183783600, 60586, 960, 220540320, 64420, 960, 281801520, 67890, 960, 306306000, 68809, 960, 328648320, 68945, 1024, 330810480, 70120, 960, 331531200, 72151, 1008, 349188840, 72348, 1024, 358142400, 75392, 1008, 362854800, 78241, 810, 367567200, 85223, 1152, 428828400, 87371, 1080}; void main() { unsigned int i; double temp; FILE *Outfp; Outfp = fopen("out21.dat","w"); for (i=0; i<180; i++) { if (flag==0) temp=sqrt((double)in[3*i])/(double)in[3*i+1]; else { if (flag==1) temp=(double)in[3*i+1]/(double)in[3*i]; else { if (flag==2) temp=1.0/log((double)in[3*i]); else { if (flag==3) temp=(double)in[3*i+1]/(double)in[3*i+2]; else { if (flag==4) temp=(double)in[3*i]; else temp=1.0/sqrt((double)in[3*i]); } } } } fprintf(Outfp," %e \n",temp); } fclose(Outfp); return; }