Ceci est une ancienne révision du document !



Modèle : page application

Cette page présente un modèle de base servant à la rédaction d'un article sur une application dans cette documentation. Pour récupérer le code Dokuwiki de cette page, servez vous du modèle à copier/coller ou télécharger, en bas de cette page. Cette présentation est suggérée, mais n'est pas statique ; n'hésitez pas à personnaliser vos pages. Par contre, ne modifiez pas cette page modèle !
Quelques conventions à respecter au maximum :
  • Le nom de la page (URL) doit être le nom du paquet principal de l'application ou le nom de l'application si elle n'est pas présente dans les dépôts.
  • La page doit se situer à la racine du wiki.
    Par exemple, la page sur le navigateur web Mozilla Firefox sera à l'adresse : http://doc.ubuntu-fr.org/firefox.
  • Évitez les fautes d'orthographe (si vous pensez avoir laissé des fautes, ajoutez le tag orthographe_a_corriger à la page).

—[ le modèle commence ICI ]—


Les tags d'une page "application" sont à introduire dans l'ordre suivant :
Versions1) autres_tags2) BROUILLON
Pour en savoir plus sur l'usage des tags : voir ici.

lecjo lecteur du format audio abadie.jo

lecjo permet de lire des fichiers audio ultra léger d'une grande qualité.
L'application permet d'échanger des fichiers audio, de découvrir les différentes dimensions physiques des lois de l'acoustique, et dès que j'aurai fini une version compatible avec firefox, d'utiliser le format audio jo sur des pages web.de manière à améliorer encore la génération de vidéo en HTML que j'ai créé. This article is licensed under the GNU Free Documentation License http://www.gnu.org/copyleft/fdl.html

Optionnel: [Capture d'écran du logiciel fonctionnant sous Ubuntu (voir ce tutoriel)]

Chaque section aura un titre de niveau 2 (H2) puis ses sous-sections, un titre de niveau 3 (H3) et ainsi de suite… Remarque : il n'y a que 5 niveaux de titre, ce qui devrait être amplement suffisant.
Connaitre le langage c ou cpp n'est pas une obligation, mais peut apporter beaucoup en modifiant l'application pour sa propre utilisation.
  • Savoir utiliser un terminal.
  • Pour plus tard quand le .deb sera créé savoir installer un ppa

Pour utiliser ce logiciel, il suffit d'ouvrir un terminal et d'écrire
nano convertisseur.cpp
et d'entrer dans le fichier
pour compiler g++ convertisseur.cpp -o convertisseur -Wall converti un fichier nommé 10.jo en 10.wav #include <stdio.h> #include <stdlib.h> #include <stdio.h> #include <iostream> #include <sys/types.h> #include <signal.h> #include <unistd.h> #define total1 256 #define total 256 #define combientab1 1 #define combientab2 2 #define combientab3 3 #define combientab4 4 #define combientab5 5 #define combientab6 6 #define combientab7 7 #define combientab8 8 #define combientab9 9 #define combientab10 10 #define combientab11 11 #define combientab12 12 #define combientab13 13 #define combientab14 14 #define combientab15 15 #define combientab16 16 #define combientab17 17 #define combientab18 18 #define combientab19 19 #define combientab20 20 #define combientab21 21 #define combientab22 22 #define combientab23 23 #define combientab24 24 #define combientab25 25 #define combientab26 26 #define combientab27 27 #define combientab28 28 #define combientab29 29 #define combientab30 30 #define combientab31 31 #define combientab32 32 #define combientab33 33 #define combientab34 34 #define combientab35 35 #define combientab36 36 #define combientab37 37 #define combientab38 38 #define combientab39 39 #define combientab40 40 #define combientab41 41 #define combientab42 42 #define combientab43 43 #define combientab44 44 #define combientab45 45 #define combientab46 46 #define combientab47 47 #define combientab48 48 #define combientab49 49 #define combientab50 50 #define combientab51 51 #define combientab52 52 #define combientab53 53 #define combientab54 54 #define combientab55 55 #define combientab56 56 #define combientab57 57 #define combientab58 58 #define combientab59 59 #define combientab60 60 #define combientab61 61 #define combientab62 62 #define combientab63 63 #define combientab64 64 #define combientab65 65 #define combientab66 66 #define combientab67 67 #define combientab68 68 #define combientab69 69 #define combientab70 70 #define combientab71 71 #define combientab72 72 #define combientab73 73 #define combientab74 74 #define combientab75 75 #define combientab76 76 #define combientab77 77 #define combientab78 78 #define combientab79 79 #define combientab80 80 #define combientab81 81 #define combientab82 82 #define combientab83 83 #define combientab84 84 #define combientab85 85 #define combientab86 86 #define combientab87 87 #define combientab88 88 #define combientab89 89 #define combientab90 90 #define combientab91 91 #define combientab92 92 #define combientab93 93 #define combientab94 94 #define combientab95 95 #define combientab96 96 #define combientab97 97 #define combientab98 98 #define combientab99 99 #define combientab100 100 #define combientab101 101 #define combientab102 102 #define combientab103 103 #define combientab104 104 #define combientab105 105 #define combientab106 106 #define combientab107 107 #define combientab108 108 #define combientab109 109 #define combientab110 110 #define combientab111 111 #define combientab112 112 #define combientab113 113 #define combientab114 114 #define combientab115 115 #define combientab116 116 #define combientab117 117 #define combientab118 118 #define combientab119 119 #define combientab120 120 #define combientab121 121 #define combientab122 122 #define combientab123 123 #define combientab124 124 #define combientab125 125 #define combientab126 126 #define combientab127 127 #define combientab128 128 #define NumDeTab 128 Nom du fichier piste char awav[32]; Nom du fichier piste char ajo[32]; char awav[] = {"1.wav"}; char ajo[] = {"1.jo"}; double codebash; Calcule le nombre de points du fichier jo fichierjo static int nbdepointsFichierJo(FILE* fichierjo) { Retour au début du fichier rewind(fichierjo); Initialisation compteur de points int nbdepoints = 0; int abadie = EOF; for(int impair=1; (abadie=fgetc(fichierjo))!= EOF; impair=1-impair) { if(impair) continue; nbdepoints += abadie; } return nbdepoints; } Écrit l'en-tête wave du fichier cn.wav en fonction du fichier cn.jo static void enteteFichierWave(FILE* fichierwav, FILE* fichierjo) { int nbdepoints = nbdepointsFichierJo(fichierjo); /*ici*je*commence*le*traitement*comme*jécris*chaque*base*de*temps*sur*deux*octets*je*multiplis*par*2*/ int durerentete = nbdepoints * 2; int longueurentete = durerentete + 44 - 8; /declarationtypeaudio*4octets/ unsigned char riff[4] = { 0x52, 0x49, 0x46, 0x46 }; fwrite (riff, 1, sizeof (riff), fichierwav); /longueurentete*du*fichier*audio*ici*21200/ fwrite (&longueurentete, sizeof (longueurentete), 1, fichierwav); /declarationtypewave*4octets/ unsigned char wave[4] = { 0x57, 0x41, 0x56, 0x45 }; fwrite (wave, 1, sizeof (wave), fichierwav); /declarationtypefmt suivit d'un espace qui s'écrit 0x20 soit 4octets/ unsigned char fmt[4] = { 0x66, 0x6D, 0x74, 0x20 }; fwrite (fmt, 1, sizeof (fmt), fichierwav); /declarationde*la*maniere d'écrire*sous forme*d'un*entier long (unsigned int) soit 4octets/ /comme c'est du 16 octets en exadécimal cela donne 0x10/ unsigned char poids[4] = { 0x10, 0x00, 0x00, 0x00 }; fwrite (poids, 1, sizeof (poids), fichierwav); /codage pour indiquer le PCM c'est : 1 soit 2octets/ unsigned char pourpcm[2] = { 0x01, 0x00 }; fwrite (pourpcm, 1, sizeof (pourpcm), fichierwav); /nombre de piste sur 2octets*ici c'est du mono, donc 1*/ unsigned char piste[2] = { 0x01, 0x00 }; fwrite (piste, 1, sizeof (piste), fichierwav); /nombre d'échantillons par secondesur 4 octets/ unsigned char tempsunitaire[4] = { 0x44, 0xAC, 0x00, 0x00 }; fwrite (tempsunitaire, 1, sizeof (tempsunitaire), fichierwav); /nombre d'octets par secondessur 4 octets*le*double*du*précédent*dans*ce*cas*/ unsigned char octetpars[4] = { 0x88, 0x58, 0x01, 0x00 }; fwrite (octetpars, 1, sizeof (octetpars), fichierwav); /*taille en octet d'1 échantillon*sur*2octets/ unsigned char tailleechant[2] = { 0x02, 0x00 }; fwrite (tailleechant, 1, sizeof (tailleechant), fichierwav); /*contient le nombre de bits par échantillon*2x8=16*soit*10*en*exasur*2octets/ unsigned char bitparechan[2] = { 0x10, 0x00 }; fwrite (bitparechan, 1, sizeof (bitparechan), fichierwav); /On ecrit ici data pour dire que le fichier commencesur 4cotets/ unsigned char mono[4] = { 0x64, 0x61, 0x74, 0x61 }; fwrite (mono, 1, sizeof (mono), fichierwav); fwrite (&durerentete, sizeof (durerentete), 1, fichierwav); } Conversion d'un fichier piste.jo en un fichier piste.wav void conversionJoWav(int piste) { snprintf(awav, 32, "%d.wav", piste); snprintf(ajo, 32, "%d.jo", piste); Nom du fichier wave cn.wav char nomfichierwav[32]; snprintf(nomfichierwav, 32, "%d.wav", piste); char numeropourwav[1]; snprintf(numeropourwav, 1, "%d", piste); Ouverture du fichier wave FILE *fichierwav; if (!(fichierwav=fopen(nomfichierwav,"wb"))) { printf ("Erreur: impossible d'ouvrir le fichier .wav suivant: %s\n", nomfichierwav); exit(-1); } Nom du fichier jo cn.jo char nomfichierjo[32]; snprintf(nomfichierjo, 32, "%d.jo", piste); Ouverture du fichier jo FILE *fichierjo; if(!(fichierjo=fopen(nomfichierjo,"rb"))) { printf ("Erreur: impossible d'ouvrir le fichier .jo suivant: %s\n", nomfichierjo); exit(-1); } Écritude de l'en-tête du fichier .wav enteteFichierWave(fichierwav,fichierjo); rewind(fichierjo); fclose(fichierjo); fclose(fichierwav); Table magique de conversion /*j ouvre mon fichier de donner*/ FILE *jojo = NULL; int abadie = 0; int placement[NumDeTab] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128 }; int tab1jo17[combientab1] = { 99997 }; int tab2jo17[combientab2] = { 2985, 99993 }; int tab3jo17[combientab3] = { 2985, 67671, 99999 }; int tab4jo17[combientab4] = { 2985, 51512, 76121, 99995 }; int tab5jo17[combientab5] = { 2985, 41825, 61806, 81191, 99997 }; int tab6jo17[combientab6] = { 2985, 35372, 52270, 68664, 84569, 99998 }; int tab7jo17[combientab7] = { 2985, 30766, 45464, 59723, 73556, 86977, 99997 }; int tab8jo17[combientab8] = { 2985, 27316, 40366, 53026, 65308, 77224, 88784, 99999 }; int tab9jo17[combientab9] = { 2985, 24636, 36405, 47823, 58900, 69647, 80073, 90187, 100000 }; int tab10jo17[combientab10] = { 2985, 22494, 33240, 43665, 53779, 63591, 73111, 82346, 91305, 99997 }; int tab11jo17[combientab11] = { 2985, 20745, 30656, 40270, 49598, 58647, 67426, 75943, 84206, 92223, 100000 }; int tab12jo17[combientab12] = { 2985, 19290, 28505, 37445, 46118, 54532, 62695, 70615, 78298, 85752, 92983, 99999 }; int tab13jo17[combientab13] = { 2985, 18060, 26688, 35058, 43179, 51057, 58700, 66115, 73308, 80287, 87058, 93626, 99998 }; int tab14jo17[combientab14] = { 2985, 17009, 25134, 33017, 40665, 48084, 55282, 62266, 69040, 75613, 81989, 88175, 94176, 99998 }; int tab15jo17[combientab15] = { 2985, 16099, 23790, 31252, 38491, 45513, 52327, 58936, 65349, 71570, 77605, 83460, 89141, 94652, 99998 }; int tab16jo17[combientab16] = { 2985, 15306, 22618, 29711, 36593, 43270, 49747, 56031, 62127, 68042, 73780, 79346, 84747, 89986, 95069, 100000 }; int tab17jo17[combientab17] = { 2985, 14607, 21585, 28355, 34923, 41294, 47476, 53473, 59291, 64935, 70411, 75724, 80878, 85878, 90728, 95434, 100000 }; int tab18jo17[combientab18] = { 2985, 13987, 20669, 27152, 33441, 39542, 45461, 51204, 56775, 62180, 67424, 72511, 77446, 82234, 86879, 91385, 95757, 99998 }; int tab19jo17[combientab19] = { 2985, 13434, 19852, 26079, 32119, 37979, 43665, 49180, 54531, 59722, 64759, 69645, 74385, 78984, 83445, 87773, 91972, 96046, 99998 }; int tab20jo17[combientab20] = { 2985, 12938, 19119, 25116, 30933, 36577, 42053, 47365, 52518, 57518, 62368, 67074, 71639, 76068, 80364, 84533, 88577, 92500, 96306, 99999 }; int tab21jo17[combientab21] = { 2985, 12491, 18458, 24247, 29864, 35312, 40598, 45727, 50702, 55529, 60211, 64754, 69161, 73437, 77585, 81610, 85514, 89301, 92976, 96541, 99999 }; int tab22jo17[combientab22] = { 2985, 12085, 17859, 23460, 28894, 34166, 39280, 44242, 49056, 53726, 58256, 62652, 66916, 71053, 75066, 78960, 82737, 86402, 89957, 93406, 96752, 99999 }; int tab23jo17[combientab23] = { 2985, 11716, 17314, 22744, 28012, 33123, 38081, 42892, 47558, 52086, 56478, 60739, 64873, 68884, 72775, 76549, 80212, 83764, 87211, 90555, 93799, 96946, 100000 }; int tab24jo17[combientab24] = { 2985, 11379, 16816, 22089, 27206, 32170, 36985, 41657, 46190, 50587, 54853, 58991, 63007, 66902, 70681, 74347, 77904, 81354, 84702, 87949, 91100, 94157, 97122, 99999 }; int tab25jo17[combientab25] = { 2985, 11070, 16359, 21490, 26467, 31297, 35981, 40527, 44936, 49214, 53364, 57390, 61296, 65086, 68762, 72329, 75789, 79146, 82402, 85562, 88627, 91601, 94486, 97284, 100000 }; int tab26jo17[combientab26] = { 2985, 10786, 15939, 20938, 25788, 30493, 35057, 39486, 43782, 47950, 51994, 55916, 59722, 63414, 66996, 70471, 73843, 77113, 80286, 83365, 86351, 89249, 92059, 94786, 97432, 99998 }; int tab27jo17[combientab27] = { 2985, 10524, 15552, 20430, 25162, 29752, 34206, 38527, 42719, 46785, 50731, 54558, 58272, 61874, 65369, 68760, 72049, 75241, 78337, 81340, 84254, 87081, 89824, 92484, 95066, 97570, 99999 }; int tab28jo17[combientab28] = { 2985, 10282, 15194, 19959, 24582, 29067, 33418, 37640, 41735, 45708, 49563, 53302, 56930, 60449, 63864, 67177, 70390, 73508, 76533, 79467, 82314, 85076, 87755, 90355, 92877, 95323, 97697, 99999 }; int tab29jo17[combientab29] = { 2985, 10057, 14862, 19523, 24045, 28432, 32688, 36817, 40823, 44709, 48479, 52137, 55686, 59128, 62468, 65708, 68852, 71901, 74860, 77730, 80515, 83216, 85837, 88380, 90847, 93240, 95561, 97814, 99999 }; int tab30jo17[combientab30] = { 2985, 9848, 14553, 19118, 23546, 27842, 32010, 36053, 39976, 43781, 47473, 51055, 54530, 57901, 61172, 64345, 67423, 70409, 73307, 76117, 78844, 81490, 84056, 86546, 88962, 91305, 93579, 95784, 97924, 100000 }; int tab31jo17[combientab31] = { 2985, 9654, 14266, 18740, 23081, 27292, 31378, 35341, 39186, 42917, 46536, 50047, 53453, 56758, 59964, 63074, 66092, 69019, 71859, 74614, 77287, 79880, 82396, 84837, 87205, 89502, 91730, 93893, 95990, 98025, 99999 }; int tab32jo17[combientab32] = { 2985, 9472, 13998, 18388, 22647, 26779, 30788, 34677, 38450, 42110, 45661, 49106, 52448, 55691, 58837, 61888, 64849, 67721, 70508, 73212, 75834, 78379, 80847, 83242, 85565, 87819, 90006, 92128, 94186, 96182, 98119, 99999 }; int tab33jo17[combientab33] = { 2985, 9303, 13747, 18059, 22242, 26300, 30237, 34056, 37762, 41357, 44844, 48228, 51510, 54694, 57784, 60781, 63689, 66510, 69247, 71902, 74477, 76976, 79401, 81753, 84034, 86248, 88396, 90479, 92500, 94461, 96364, 98210, 100000 }; int tab34jo17[combientab34] = { 2985, 9144, 13512, 17750, 21862, 25850, 29720, 33474, 37116, 40650, 44078, 47403, 50630, 53760, 56796, 59742, 62600, 65373, 68063, 70673, 73205, 75661, 78044, 80356, 82598, 84774, 86885, 88933, 90920, 92847, 94717, 96531, 98291, 99999 }; int tab35jo17[combientab35] = { 2985, 8995, 13292, 17461, 21506, 25429, 29236, 32929, 36512, 39988, 43360, 46631, 49805, 52884, 55871, 58769, 61581, 64308, 66954, 69522, 72012, 74428, 76772, 79047, 81253, 83393, 85470, 87484, 89439, 91335, 93174, 94959, 96690, 98370, 99999 }; int tab36jo17[combientab36] = { 2985, 8855, 13085, 17190, 21171, 25034, 28781, 32417, 35944, 39366, 42685, 45906, 49030, 52061, 55002, 57855, 60623, 63308, 65913, 68440, 70892, 73271, 75578, 77817, 79989, 82096, 84140, 86123, 88047, 89914, 91725, 93482, 95186, 96839, 98444, 100000 }; int tab37jo17[combientab37] = { 2985, 8723, 12891, 16934, 20856, 24661, 28353, 31934, 35409, 38780, 42050, 45223, 48301, 51287, 54184, 56994, 59721, 62366, 64932, 67422, 69837, 72180, 74454, 76659, 78799, 80875, 82888, 84842, 86737, 88576, 90360, 92091, 93770, 95399, 96979, 98512, 99999 }; int tab38jo17[combientab38] = { 2985, 8599, 12707, 16693, 20559, 24310, 27950, 31480, 34905, 38228, 41452, 44579, 47614, 50557, 53413, 56183, 58871, 61479, 64008, 66463, 68844, 71153, 73394, 75568, 77678, 79724, 81709, 83635, 85503, 87316, 89074, 90780, 92436, 94041, 95599, 97110, 98577, 99999 }; int tab39jo17[combientab39] = { 2985, 8482, 12535, 16466, 20280, 23980, 27569, 31052, 34430, 37708, 40888, 43973, 46966, 49869, 52686, 55419, 58070, 60642, 63138, 65559, 67907, 70186, 72396, 74541, 76621, 78639, 80598, 82497, 84340, 86128, 87863, 89546, 91178, 92762, 94299, 95789, 97236, 98639, 100000 }; int tab40jo17[combientab40] = { 2985, 8372, 12371, 16251, 20015, 23667, 27210, 30647, 33981, 37216, 40355, 43400, 46353, 49219, 51999, 54696, 57313, 59852, 62314, 64704, 67022, 69270, 71452, 73569, 75622, 77614, 79547, 81421, 83240, 85005, 86717, 88378, 89989, 91552, 93069, 94540, 95968, 97352, 98696, 99999 }; int tab41jo17[combientab41] = { 2985, 8267, 12217, 16048, 19765, 23372, 26870, 30264, 33557, 36752, 39851, 42858, 45775, 48605, 51350, 54014, 56598, 59104, 61536, 63896, 66185, 68406, 70560, 72650, 74678, 76645, 78554, 80405, 82201, 83944, 85635, 87275, 88866, 90410, 91907, 93360, 94770, 96137, 97464, 98751, 100000 }; int tab42jo17[combientab42] = { 2985, 8168, 12070, 15856, 19529, 23092, 26549, 29902, 33155, 36312, 39374, 42345, 45227, 48023, 50735, 53367, 55920, 58397, 60800, 63131, 65392, 67587, 69715, 71780, 73784, 75727, 77613, 79442, 81217, 82939, 84609, 86230, 87802, 89327, 90807, 92242, 93635, 94986, 96297, 97568, 98802, 99999 }; int tab43jo17[combientab43] = { 2985, 8074, 11932, 15674, 19305, 22827, 26244, 29559, 32775, 35895, 38922, 41859, 44708, 47471, 50153, 52754, 55278, 57726, 60102, 62406, 64642, 66811, 68915, 70956, 72937, 74858, 76722, 78530, 80285, 81987, 83638, 85240, 86794, 88302, 89764, 91183, 92560, 93896, 95191, 96449, 97668, 98851, 99999 }; int tab44jo17[combientab44] = { 2985, 7986, 11800, 15501, 19092, 22575, 25955, 29233, 32414, 35500, 38493, 41398, 44215, 46949, 49601, 52173, 54669, 57091, 59440, 61719, 63930, 66075, 68156, 70175, 72134, 74034, 75877, 77666, 79401, 81084, 82717, 84301, 85838, 87329, 88776, 90179, 91541, 92862, 94143, 95386, 96592, 97763, 98898, 99999 }; int tab45jo17[combientab45] = { 2985, 7901, 11676, 15338, 18890, 22337, 25680, 28924, 32071, 35124, 38086, 40960, 43748, 46452, 49076, 51622, 54091, 56487, 58811, 61066, 63254, 65376, 67435, 69433, 71371, 73251, 75075, 76844, 78561, 80226, 81842, 83410, 84930, 86406, 87837, 89226, 90573, 91880, 93148, 94378, 95571, 96729, 97852, 98942, 99999 }; int tab46jo17[combientab46] = { 2985, 7821, 11557, 15182, 18698, 22110, 25420, 28631, 31746, 34768, 37700, 40544, 43304, 45981, 48578, 51098, 53542, 55914, 58215, 60447, 62612, 64713, 66751, 68728, 70647, 72508, 74313, 76065, 77764, 79412, 81012, 82563, 84069, 85529, 86946, 88320, 89654, 90947, 92202, 93420, 94601, 95747, 96859, 97938, 98984, 99999 }; int tab47jo17[combientab47] = { 2985, 7745, 11445, 15034, 18516, 21894, 25172, 28352, 31436, 34429, 37332, 40149, 42882, 45533, 48105, 50600, 53020, 55369, 57647, 59858, 62002, 64082, 66100, 68058, 69958, 71801, 73589, 75323, 77006, 78638, 80222, 81759, 83249, 84695, 86098, 87460, 88780, 90061, 91304, 92510, 93679, 94814, 95915, 96983, 98019, 99025, 100000 }; int tab48jo17[combientab48] = { 2985, 7672, 11337, 14893, 18342, 21689, 24936, 28086, 31142, 34106, 36982, 39772, 42479, 45106, 47653, 50125, 52523, 54850, 57106, 59296, 61420, 63481, 65480, 67420, 69302, 71127, 72898, 74617, 76284, 77901, 79470, 80992, 82468, 83901, 85291, 86639, 87947, 89216, 90447, 91642, 92801, 93925, 95015, 96073, 97100, 98096, 99062, 99999 }; int tab49jo17[combientab49] = { 2985, 7603, 11235, 14759, 18177, 21494, 24711, 27833, 30861, 33799, 36649, 39414, 42097, 44699, 47224, 49673, 52050, 54355, 56592, 58762, 60867, 62909, 64890, 66813, 68677, 70486, 72242, 73944, 75596, 77199, 78754, 80262, 81725, 83145, 84522, 85858, 87155, 88412, 89632, 90816, 91964, 93078, 94159, 95208, 96225, 97212, 98169, 99098, 99999 }; int tab50jo17[combientab50] = { 2985, 7537, 11138, 14631, 18020, 21307, 24497, 27591, 30593, 33506, 36331, 39073, 41732, 44312, 46815, 49243, 51599, 53884, 56102, 58253, 60339, 62364, 64328, 66234, 68082, 69876, 71616, 73304, 74941, 76530, 78071, 79567, 81017, 82425, 83790, 85115, 86400, 87646, 88856, 90029, 91168, 92272, 93343, 94383, 95391, 96370, 97319, 98239, 99133, 99999 }; int tab51jo17[combientab51] = { 2985, 7474, 11045, 14509, 17869, 21130, 24293, 27361, 30338, 33227, 36029, 38747, 41384, 43942, 46425, 48833, 51169, 53435, 55634, 57767, 59836, 61844, 63792, 65681, 67515, 69293, 71019, 72692, 74316, 75892, 77420, 78903, 80342, 81737, 83091, 84405, 85679, 86916, 88115, 89279, 90407, 91503, 92565, 93596, 94596, 95566, 96507, 97420, 98306, 99166, 99999 }; int tab52jo17[combientab52] = { 2985, 7414, 10956, 14392, 17726, 20960, 24098, 27142, 30095, 32960, 35740, 38436, 41052, 43590, 46052, 48441, 50758, 53007, 55188, 57304, 59357, 61348, 63280, 65155, 66973, 68738, 70449, 72110, 73720, 75283, 76800, 78270, 79697, 81082, 82425, 83728, 84992, 86219, 87408, 88563, 89682, 90769, 91823, 92845, 93837, 94800, 95733, 96639, 97518, 98370, 99198, 100000 }; int tab53jo17[combientab53] = { 2985, 7357, 10872, 14281, 17589, 20798, 23912, 26932, 29862, 32705, 35463, 38139, 40735, 43253, 45696, 48066, 50366, 52597, 54761, 56861, 58898, 60874, 62791, 64651, 66455, 68206, 69904, 71552, 73151, 74701, 76206, 77665, 79081, 80455, 81788, 83081, 84335, 85552, 86733, 87878, 88989, 90067, 91113, 92128, 93112, 94067, 94993, 95892, 96764, 97610, 98431, 99227, 99999 }; int tab54jo17[combientab54] = { 2985, 7302, 10791, 14175, 17458, 20644, 23734, 26732, 29640, 32462, 35200, 37855, 40432, 42931, 45356, 47709, 49991, 52206, 54354, 56438, 58460, 60421, 62324, 64170, 65961, 67699, 69384, 71020, 72606, 74146, 75639, 77088, 78493, 79857, 81179, 82463, 83708, 84916, 86087, 87224, 88327, 89397, 90435, 91442, 92419, 93367, 94287, 95179, 96044, 96884, 97698, 98489, 99255, 99999 }; int tab55jo17[combientab55] = { 2985, 7250, 10713, 14073, 17333, 20496, 23564, 26540, 29428, 32230, 34947, 37584, 40142, 42624, 45031, 47367, 49633, 51832, 53964, 56033, 58041, 59988, 61878, 63710, 65489, 67214, 68887, 70511, 72086, 73615, 75097, 76535, 77931, 79285, 80598, 81872, 83108, 84307, 85471, 86600, 87695, 88757, 89787, 90787, 91757, 92698, 93611, 94497, 95356, 96190, 96999, 97783, 98544, 99283, 99999 }; int tab56jo17[combientab56] = { 2985, 7200, 10639, 13976, 17214, 20354, 23401, 26357, 29225, 32007, 34706, 37325, 39865, 42330, 44720, 47040, 49290, 51474, 53592, 55647, 57640, 59574, 61450, 63271, 65036, 66750, 68412, 70024, 71589, 73106, 74579, 76007, 77393, 78737, 80041, 81307, 82534, 83725, 84881, 86002, 87089, 88144, 89167, 90160, 91124, 92058, 92965, 93844, 94698, 95526, 96329, 97108, 97864, 98597, 99309, 99999 }; int tab57jo17[combientab57] = { 2985, 7152, 10569, 13883, 17099, 20219, 23245, 26182, 29030, 31794, 34475, 37076, 39600, 42048, 44423, 46727, 48963, 51131, 53235, 55276, 57257, 59178, 61041, 62850, 64604, 66306, 67957, 69558, 71112, 72620, 74082, 75501, 76878, 78213, 79509, 80766, 81985, 83168, 84316, 85429, 86510, 87558, 88574, 89561, 90517, 91446, 92346, 93220, 94068, 94890, 95688, 96462, 97213, 97941, 98648, 99334, 99999 }; int tab58jo17[combientab58] = { 2985, 7106, 10501, 13794, 16990, 20089, 23097, 26014, 28844, 31590, 34254, 36839, 39346, 41779, 44138, 46428, 48649, 50804, 52894, 54922, 56890, 58799, 60651, 62447, 64190, 65881, 67521, 69113, 70657, 72155, 73608, 75018, 76385, 77712, 79000, 80249, 81460, 82636, 83776, 84882, 85956, 86997, 88007, 88987, 89938, 90860, 91755, 92623, 93465, 94282, 95075, 95844, 96590, 97314, 98016, 98698, 99359, 100000 }; int tab59jo17[combientab59] = { 2985, 7037, 10399, 13660, 16824, 19893, 22871, 25760, 28563, 31282, 33920, 36480, 38962, 41371, 43708, 45975, 48175, 50308, 52378, 54387, 56335, 58225, 60059, 61838, 63564, 65238, 66863, 68439, 69968, 71451, 72890, 74286, 75641, 76955, 78229, 79466, 80666, 81830, 82959, 84054, 85117, 86148, 87149, 88119, 89061, 89974, 90860, 91720, 92554, 93363, 94148, 94910, 95648, 96365, 97060, 97735, 98390, 99024, 99640 }; int tab60jo17[combientab60] = { 2985, 7020, 10374, 13627, 16784, 19846, 22817, 25699, 28495, 31208, 33840, 36393, 38870, 41273, 43604, 45866, 48060, 50189, 52254, 54258, 56201, 58087, 59916, 61691, 63413, 65084, 66704, 68276, 69802, 71281, 72717, 74110, 75461, 76772, 78043, 79277, 80474, 81635, 82762, 83855, 84915, 85944, 86942, 87910, 88849, 89760, 90644, 91502, 92334, 93141, 93924, 94684, 95421, 96136, 96830, 97503, 98156, 98789, 99404, 100000 }; int tab61jo17[combientab61] = { 2985, 6980, 10314, 13549, 16687, 19732, 22686, 25551, 28331, 31028, 33645, 36183, 38646, 41035, 43353, 45602, 47783, 49900, 51953, 53945, 55878, 57753, 59571, 61336, 63048, 64709, 66320, 67883, 69400, 70871, 72298, 73683, 75026, 76330, 77594, 78821, 80011, 81165, 82285, 83372, 84426, 85449, 86441, 87404, 88338, 89244, 90123, 90975, 91802, 92605, 93384, 94139, 94872, 95583, 96272, 96942, 97591, 98221, 98832, 99424, 99999 }; int tab62jo17[combientab62] = { 2985, 6941, 10257, 13474, 16595, 19622, 22560, 25409, 28174, 30856, 33458, 35983, 38432, 40808, 43113, 45349, 47518, 49623, 51665, 53646, 55568, 57432, 59241, 60996, 62698, 64350, 65952, 67507, 69015, 70478, 71897, 73274, 74610, 75906, 77164, 78384, 79567, 80715, 81829, 82910, 83958, 84975, 85962, 86919, 87848, 88749, 89623, 90471, 91293, 92091, 92866, 93617, 94346, 95052, 95738, 96404, 97049, 97676, 98283, 98873, 99445, 99999 }; int tab63jo17[combientab63] = { 2985, 6904, 10202, 13402, 16506, 19517, 22439, 25273, 28023, 30691, 33279, 35790, 38226, 40589, 42882, 45106, 47264, 49357, 51388, 53359, 55270, 57125, 58924, 60669, 62363, 64005, 65599, 67145, 68645, 70101, 71512, 72882, 74211, 75500, 76751, 77964, 79141, 80283, 81391, 82466, 83508, 84520, 85501, 86454, 87377, 88273, 89143, 89986, 90804, 91598, 92368, 93116, 93840, 94544, 95226, 95888, 96530, 97153, 97757, 98343, 98912, 99464, 99999 }; int tab64jo17[combientab64] = { 2985, 6868, 10149, 13332, 16421, 19417, 22323, 25143, 27879, 30533, 33107, 35605, 38029, 40380, 42661, 44873, 47020, 49103, 51123, 53083, 54985, 56830, 58620, 60356, 62041, 63675, 65260, 66799, 68291, 69739, 71143, 72506, 73828, 75110, 76354, 77561, 78732, 79869, 80971, 82040, 83077, 84084, 85060, 86007, 86926, 87818, 88683, 89522, 90336, 91125, 91892, 92635, 93356, 94056, 94734, 95393, 96032, 96651, 97252, 97836, 98402, 98951, 99483, 100000 }; int tab65jo17[combientab65] = { 2985, 6834, 10099, 13266, 16339, 19320, 22212, 25018, 27740, 30380, 32942, 35428, 37839, 40178, 42448, 44650, 46786, 48858, 50868, 52819, 54711, 56547, 58327, 60055, 61731, 63358, 64935, 66466, 67950, 69391, 70789, 72144, 73460, 74736, 75974, 77175, 78340, 79470, 80567, 81631, 82663, 83665, 84636, 85578, 86493, 87380, 88240, 89075, 89885, 90671, 91433, 92173, 92891, 93587, 94262, 94917, 95553, 96169, 96768, 97348, 97911, 98457, 98987, 99501, 100000 }; int tab66jo17[combientab66] = { 2985, 6801, 10050, 13202, 16260, 19227, 22105, 24897, 27606, 30234, 32783, 35257, 37657, 39985, 42243, 44434, 46560, 48622, 50623, 52564, 54447, 56274, 58046, 59766, 61434, 63052, 64622, 66145, 67623, 69056, 70447, 71796, 73105, 74375, 75607, 76803, 77962, 79087, 80179, 81237, 82265, 83261, 84228, 85166, 86076, 86958, 87815, 88646, 89452, 90234, 90993, 91729, 92443, 93135, 93807, 94459, 95092, 95706, 96301, 96879, 97439, 97982, 98510, 99021, 99518, 99999 }; int tab67jo17[combientab67] = { 2985, 6769, 10003, 13141, 16184, 19137, 22002, 24781, 27477, 30093, 32631, 35093, 37481, 39799, 42047, 44228, 46343, 48396, 50388, 52319, 54194, 56012, 57776, 59488, 61148, 62759, 64321, 65838, 67308, 68735, 70120, 71463, 72765, 74029, 75256, 76445, 77600, 78719, 79806, 80860, 81882, 82874, 83836, 84770, 85675, 86554, 87407, 88234, 89036, 89814, 90569, 91302, 92013, 92702, 93371, 94020, 94650, 95261, 95853, 96428, 96986, 97527, 98052, 98561, 99055, 99534, 99999 }; int tab68jo17[combientab68] = { 2985, 6739, 9958, 13082, 16112, 19051, 21903, 24670, 27354, 29958, 32484, 34935, 37313, 39620, 41858, 44029, 46135, 48179, 50161, 52084, 53950, 55761, 57517, 59220, 60873, 62477, 64033, 65542, 67006, 68426, 69805, 71141, 72439, 73697, 74918, 76102, 77251, 78366, 79447, 80496, 81514, 82502, 83460, 84389, 85291, 86165, 87014, 87837, 88636, 89411, 90163, 90892, 91599, 92286, 92952, 93598, 94225, 94833, 95422, 95995, 96550, 97089, 97611, 98118, 98610, 99087, 99550, 99999 }; int tab69jo17[combientab69] = { 2985, 6710, 9915, 13025, 16042, 18969, 21808, 24563, 27235, 29828, 32344, 34784, 37151, 39448, 41676, 43838, 45935, 47970, 49944, 51859, 53716, 55519, 57267, 58964, 60609, 62206, 63755, 65258, 66715, 68130, 69502, 70833, 72124, 73377, 74593, 75772, 76916, 78026, 79103, 80147, 81161, 82144, 83098, 84023, 84921, 85792, 86637, 87456, 88252, 89023, 89772, 90498, 91202, 91886, 92549, 93192, 93816, 94421, 95009, 95579, 96131, 96668, 97188, 97693, 98182, 98658, 99119, 99566, 99999 }; int tab70jo17[combientab70] = { 2985, 6682, 9874, 12970, 15975, 18889, 21717, 24460, 27121, 29703, 32208, 34638, 36996, 39283, 41502, 43654, 45743, 47769, 49734, 51641, 53491, 55286, 57027, 58716, 60355, 61945, 63488, 64984, 66436, 67844, 69210, 70536, 71822, 73070, 74280, 75454, 76594, 77699, 78771, 79811, 80820, 81799, 82749, 83671, 84565, 85432, 86273, 87090, 87882, 88650, 89395, 90118, 90820, 91500, 92161, 92801, 93423, 94026, 94610, 95178, 95728, 96262, 96781, 97283, 97771, 98244, 98703, 99148, 99580, 99999 }; int tab71jo17[combientab71] = { 2985, 6655, 9834, 12918, 15910, 18813, 21629, 24361, 27011, 29583, 32077, 34498, 36846, 39124, 41333, 43477, 45557, 47575, 49533, 51432, 53274, 55062, 56796, 58479, 60111, 61694, 63230, 64721, 66167, 67569, 68930, 70250, 71531, 72774, 73979, 75149, 76283, 77384, 78452, 79488, 80493, 81468, 82414, 83332, 84222, 85086, 85924, 86737, 87526, 88291, 89033, 89753, 90452, 91130, 91787, 92425, 93044, 93645, 94227, 94792, 95341, 95872, 96388, 96889, 97375, 97846, 98303, 98747, 99177, 99594, 99999 }; int tab72jo17[combientab72] = { 2985, 6628, 9795, 12867, 15848, 18739, 21544, 24266, 26906, 29467, 31952, 34363, 36702, 38971, 41172, 43307, 45379, 47389, 49339, 51231, 53066, 54847, 56574, 58250, 59876, 61453, 62983, 64468, 65908, 67305, 68660, 69976, 71251, 72489, 73690, 74855, 75985, 77081, 78145, 79177, 80178, 81149, 82092, 83006, 83893, 84753, 85588, 86398, 87183, 87945, 88685, 89402, 90098, 90773, 91428, 92064, 92680, 93278, 93859, 94422, 94968, 95497, 96011, 96510, 96994, 97463, 97919, 98360, 98789, 99205, 99608, 99999 }; int tab73jo17[combientab73] = { 2985, 6603, 9758, 12819, 15788, 18668, 21463, 24174, 26804, 29356, 31831, 34233, 36563, 38823, 41016, 43143, 45207, 47210, 49152, 51037, 52865, 54639, 56360, 58029, 59649, 61220, 62745, 64224, 65658, 67050, 68401, 69711, 70982, 72215, 73411, 74571, 75697, 76790, 77849, 78877, 79875, 80842, 81781, 82692, 83575, 84432, 85264, 86071, 86853, 87613, 88349, 89064, 89757, 90430, 91082, 91715, 92330, 92925, 93503, 94064, 94608, 95136, 95648, 96145, 96627, 97094, 97548, 97988, 98415, 98829, 99231, 99621, 99999 }; int tab74jo17[combientab74] = { 2985, 6579, 9722, 12772, 15730, 18600, 21384, 24086, 26706, 29249, 31715, 34108, 36429, 38681, 40866, 42986, 45043, 47038, 48973, 50851, 52672, 54440, 56154, 57818, 59431, 60997, 62516, 63989, 65419, 66806, 68151, 69456, 70723, 71951, 73143, 74300, 75421, 76510, 77565, 78590, 79583, 80547, 81483, 82390, 83270, 84124, 84953, 85757, 86537, 87293, 88027, 88739, 89430, 90100, 90750, 91381, 91993, 92586, 93162, 93721, 94263, 94789, 95299, 95794, 96274, 96740, 97192, 97631, 98056, 98469, 98869, 99258, 99634, 100000 }; int tab75jo17[combientab75] = { 2985, 6556, 9688, 12727, 15674, 18534, 21309, 24000, 26612, 29145, 31603, 33987, 36301, 38545, 40722, 42834, 44883, 46871, 48800, 50671, 52486, 54247, 55956, 57613, 59221, 60781, 62295, 63763, 65188, 66570, 67910, 69211, 70473, 71697, 72885, 74037, 75155, 76239, 77291, 78312, 79302, 80263, 81195, 82099, 82976, 83827, 84653, 85454, 86231, 86985, 87716, 88425, 89114, 89782, 90429, 91058, 91668, 92259, 92833, 93390, 93930, 94454, 94962, 95456, 95934, 96398, 96849, 97286, 97710, 98121, 98520, 98907, 99282, 99647, 100000 }; int tab76jo17[combientab76] = { 2985, 6534, 9655, 12683, 15621, 18471, 21236, 23918, 26521, 29045, 31495, 33871, 36176, 38413, 40583, 42688, 44730, 46711, 48633, 50498, 52307, 54062, 55764, 57416, 59019, 60573, 62082, 63545, 64965, 66342, 67678, 68974, 70232, 71452, 72635, 73784, 74898, 75978, 77027, 78044, 79031, 79988, 80917, 81818, 82692, 83540, 84363, 85161, 85936, 86687, 87416, 88123, 88809, 89474, 90120, 90746, 91354, 91944, 92515, 93070, 93609, 94131, 94638, 95129, 95606, 96069, 96517, 96953, 97375, 97785, 98183, 98568, 98942, 99306, 99658, 99999 }; int tab77jo17[combientab77] = { 2985, 6512, 9623, 12641, 15569, 18410, 21166, 23839, 26433, 28950, 31391, 33759, 36057, 38286, 40449, 42547, 44582, 46557, 48473, 50331, 52134, 53883, 55580, 57227, 58824, 60374, 61877, 63335, 64750, 66123, 67455, 68747, 70000, 71216, 72396, 73540, 74650, 75728, 76773, 77786, 78770, 79724, 80650, 81548, 82419, 83265, 84085, 84880, 85652, 86401, 87127, 87832, 88516, 89179, 89823, 90447, 91053, 91640, 92210, 92763, 93300, 93820, 94325, 94815, 95290, 95751, 96199, 96633, 97054, 97462, 97859, 98243, 98616, 98978, 99329, 99669, 100000 }; int tab78jo17[combientab78] = { 2985, 6491, 9592, 12601, 15519, 18351, 21098, 23763, 26349, 28857, 31290, 33651, 35942, 38164, 40319, 42411, 44439, 46408, 48317, 50170, 51967, 53711, 55402, 57044, 58636, 60180, 61679, 63133, 64543, 65911, 67239, 68526, 69776, 70988, 72164, 73305, 74411, 75485, 76527, 77537, 78518, 79469, 80392, 81287, 82155, 82998, 83815, 84608, 85378, 86124, 86848, 87551, 88232, 88894, 89535, 90157, 90761, 91347, 91915, 92466, 93001, 93520, 94023, 94512, 94985, 95445, 95891, 96323, 96743, 97150, 97545, 97929, 98300, 98661, 99011, 99350, 99680, 99999 }; int tab79jo17[combientab79] = { 2985, 6471, 9563, 12562, 15472, 18294, 21033, 23690, 26267, 28768, 31194, 33547, 35831, 38046, 40195, 42280, 44302, 46265, 48168, 50015, 51807, 53545, 55232, 56868, 58455, 59995, 61489, 62938, 64344, 65708, 67031, 68315, 69561, 70769, 71942, 73079, 74182, 75253, 76291, 77298, 78276, 79224, 80144, 81036, 81902, 82742, 83557, 84348, 85115, 85859, 86581, 87281, 87960, 88620, 89259, 89880, 90481, 91065, 91632, 92181, 92714, 93232, 93734, 94220, 94693, 95151, 95595, 96027, 96445, 96851, 97245, 97627, 97997, 98357, 98706, 99044, 99373, 99691, 100000 }; int tab80jo17[combientab80] = { 2985, 6452, 9534, 12524, 15425, 18240, 20970, 23619, 26189, 28682, 31101, 33447, 35723, 37932, 40075, 42153, 44170, 46126, 48024, 49866, 51652, 53385, 55066, 56697, 58280, 59815, 61305, 62750, 64151, 65511, 66831, 68111, 69353, 70557, 71726, 72860, 73960, 75027, 76063, 77067, 78041, 78987, 79904, 80794, 81657, 82494, 83307, 84095, 84860, 85602, 86321, 87020, 87697, 88354, 88992, 89610, 90210, 90793, 91357, 91905, 92437, 92952, 93453, 93938, 94409, 94866, 95309, 95739, 96156, 96561, 96953, 97334, 97704, 98062, 98410, 98748, 99075, 99392, 99701, 99999 }; int tab81jo17[combientab81] = { 2985, 6433, 9507, 12488, 15381, 18187, 20909, 23551, 26113, 28599, 31011, 33350, 35620, 37822, 39959, 42031, 44042, 45993, 47885, 49722, 51503, 53231, 54907, 56534, 58112, 59642, 61128, 62568, 63966, 65322, 66638, 67914, 69152, 70353, 71519, 72649, 73746, 74810, 75843, 76844, 77816, 78759, 79673, 80560, 81421, 82256, 83066, 83852, 84615, 85354, 86072, 86768, 87444, 88099, 88735, 89351, 89950, 90530, 91093, 91640, 92170, 92684, 93183, 93667, 94136, 94592, 95034, 95463, 95878, 96282, 96673, 97053, 97422, 97779, 98126, 98462, 98789, 99105, 99413, 99711, 100000 }; int tab82jo17[combientab82] = { 2985, 6415, 9480, 12453, 15338, 18136, 20851, 23485, 26040, 28519, 30924, 33257, 35520, 37716, 39847, 41914, 43919, 45864, 47751, 49582, 51358, 53082, 54753, 56375, 57949, 59475, 60956, 62393, 63787, 65139, 66451, 67724, 68958, 70156, 71318, 72446, 73540, 74601, 75630, 76629, 77598, 78538, 79450, 80335, 81193, 82026, 82833, 83617, 84378, 85115, 85831, 86525, 87199, 87852, 88486, 89101, 89698, 90276, 90838, 91383, 91911, 92424, 92922, 93404, 93872, 94327, 94767, 95195, 95610, 96012, 96402, 96781, 97149, 97505, 97851, 98186, 98512, 98828, 99134, 99431, 99719, 99999 }; int tab83jo17[combientab83] = { 2985, 6398, 9454, 12420, 15296, 18087, 20795, 23421, 25970, 28442, 30840, 33167, 35425, 37615, 39739, 41801, 43800, 45740, 47622, 49448, 51220, 52938, 54606, 56223, 57792, 59315, 60792, 62225, 63615, 64963, 66272, 67541, 68772, 69967, 71126, 72250, 73341, 74399, 75426, 76422, 77389, 78326, 79235, 80118, 80974, 81804, 82610, 83392, 84150, 84886, 85599, 86292, 86963, 87615, 88247, 88861, 89456, 90033, 90593, 91136, 91663, 92175, 92671, 93152, 93619, 94072, 94512, 94938, 95352, 95753, 96142, 96520, 96886, 97242, 97587, 97921, 98246, 98561, 98866, 99163, 99450, 99729, 100000 }; int tab84jo17[combientab84] = { 2985, 6381, 9429, 12387, 15256, 18040, 20740, 23360, 25901, 28367, 30759, 33080, 35332, 37516, 39635, 41691, 43685, 45620, 47497, 49318, 51085, 52799, 54462, 56075, 57641, 59159, 60632, 62061, 63448, 64793, 66098, 67364, 68592, 69783, 70939, 72061, 73149, 74204, 75228, 76222, 77185, 78120, 79027, 79907, 80761, 81589, 82393, 83173, 83929, 84663, 85374, 86065, 86735, 87385, 88015, 88627, 89221, 89796, 90355, 90897, 91423, 91933, 92428, 92908, 93373, 93825, 94264, 94689, 95101, 95502, 95890, 96267, 96632, 96987, 97331, 97664, 97988, 98302, 98607, 98902, 99189, 99467, 99737, 99999 }; int tab85jo17[combientab85] = { 2985, 6365, 9406, 12356, 15217, 17994, 20687, 23301, 25836, 28295, 30681, 32996, 35242, 37421, 39535, 41585, 43575, 45505, 47377, 49194, 50956, 52666, 54324, 55933, 57495, 59009, 60478, 61904, 63287, 64629, 65930, 67193, 68418, 69606, 70760, 71878, 72963, 74016, 75038, 76028, 76990, 77922, 78827, 79705, 80557, 81383, 82184, 82962, 83716, 84448, 85158, 85847, 86515, 87164, 87793, 88403, 88995, 89569, 90126, 90667, 91191, 91700, 92193, 92672, 93137, 93588, 94025, 94449, 94860, 95260, 95647, 96023, 96387, 96741, 97084, 97417, 97740, 98053, 98357, 98652, 98938, 99215, 99485, 99746, 99999 }; int tab86jo17[combientab86] = { 2985, 6349, 9383, 12325, 15180, 17950, 20637, 23244, 25772, 28226, 30606, 32915, 35156, 37329, 39438, 41483, 43468, 45393, 47261, 49073, 50831, 52537, 54191, 55796, 57354, 58865, 60330, 61752, 63132, 64470, 65769, 67028, 68250, 69436, 70586, 71702, 72784, 73835, 74854, 75842, 76801, 77731, 78634, 79510, 80359, 81183, 81983, 82759, 83511, 84241, 84949, 85637, 86303, 86950, 87577, 88186, 88777, 89350, 89905, 90445, 90968, 91475, 91968, 92445, 92909, 93358, 93794, 94217, 94628, 95026, 95413, 95787, 96151, 96504, 96846, 97178, 97500, 97813, 98116, 98410, 98695, 98972, 99241, 99501, 99754, 99999 }; int tab87jo17[combientab87] = { 2985, 6334, 9360, 12296, 15144, 17907, 20588, 23188, 25711, 28159, 30534, 32837, 35072, 37241, 39344, 41385, 43365, 45286, 47149, 48957, 50711, 52412, 54063, 55664, 57218, 58725, 60187, 61606, 62982, 64317, 65613, 66869, 68089, 69271, 70419, 71532, 72612, 73660, 74676, 75662, 76619, 77547, 78448, 79321, 80169, 80991, 81789, 82562, 83313, 84042, 84748, 85434, 86099, 86744, 87370, 87977, 88566, 89138, 89692, 90230, 90752, 91258, 91750, 92226, 92688, 93137, 93572, 93994, 94404, 94801, 95186, 95560, 95923, 96275, 96617, 96948, 97269, 97581, 97883, 98177, 98462, 98738, 99006, 99266, 99518, 99763, 100000 }; int tab88jo17[combientab88] = { 2985, 6320, 9339, 12268, 15109, 17866, 20540, 23135, 25652, 28094, 30463, 32762, 34992, 37155, 39254, 41290, 43265, 45181, 47041, 48844, 50594, 52292, 53938, 55536, 57086, 58590, 60049, 61464, 62837, 64169, 65462, 66716, 67932, 69112, 70257, 71368, 72445, 73490, 74505, 75488, 76443, 77369, 78267, 79139, 79984, 80805, 81601, 82373, 83122, 83848, 84553, 85237, 85901, 86544, 87169, 87775, 88363, 88933, 89486, 90023, 90543, 91049, 91539, 92014, 92475, 92923, 93357, 93778, 94187, 94583, 94968, 95341, 95703, 96054, 96394, 96725, 97046, 97357, 97658, 97951, 98235, 98511, 98778, 99037, 99289, 99533, 99770, 100000 }; int tab89jo17[combientab89] = { 2985, 6306, 9318, 12241, 15076, 17826, 20495, 23084, 25595, 28032, 30396, 32689, 34914, 37073, 39167, 41198, 43169, 45081, 46936, 48736, 50482, 52175, 53819, 55413, 56959, 58460, 59916, 61328, 62698, 64027, 65317, 66568, 67781, 68959, 70101, 71209, 72284, 73327, 74339, 75321, 76273, 77197, 78094, 78963, 79807, 80625, 81419, 82190, 82937, 83662, 84366, 85048, 85710, 86352, 86975, 87580, 88166, 88735, 89287, 89823, 90342, 90846, 91335, 91810, 92270, 92716, 93150, 93570, 93978, 94373, 94757, 95129, 95490, 95841, 96180, 96510, 96830, 97140, 97442, 97734, 98017, 98292, 98559, 98818, 99069, 99312, 99548, 99778, 100000 }; int tab90jo17[combientab90] = { 2985, 6292, 9298, 12214, 15043, 17788, 20451, 23034, 25540, 27971, 30330, 32619, 34839, 36992, 39082, 41109, 43076, 44984, 46835, 48630, 50373, 52063, 53702, 55293, 56836, 58334, 59786, 61195, 62562, 63889, 65175, 66424, 67635, 68810, 69949, 71055, 72128, 73169, 74178, 75158, 76108, 77030, 77925, 78793, 79634, 80451, 81243, 82012, 82758, 83481, 84183, 84864, 85525, 86166, 86787, 87391, 87976, 88544, 89094, 89629, 90147, 90650, 91138, 91611, 92071, 92516, 92948, 93368, 93774, 94169, 94552, 94923, 95284, 95633, 95973, 96302, 96621, 96931, 97231, 97522, 97805, 98080, 98346, 98604, 98854, 99098, 99333, 99562, 99784, 99999 }; int tab91jo17[combientab91] = { 2985, 6279, 9279, 12189, 15012, 17751, 20408, 22986, 25487, 27913, 30267, 32551, 34766, 36915, 39001, 41023, 42986, 44890, 46737, 48529, 50268, 51954, 53591, 55178, 56718, 58212, 59662, 61068, 62432, 63756, 65040, 66285, 67494, 68666, 69804, 70907, 71978, 73016, 74024, 75002, 75950, 76870, 77763, 78628, 79469, 80284, 81074, 81841, 82586, 83308, 84008, 84687, 85347, 85986, 86607, 87209, 87793, 88359, 88909, 89442, 89959, 90461, 90948, 91421, 91879, 92323, 92755, 93173, 93579, 93973, 94355, 94726, 95085, 95434, 95773, 96101, 96420, 96729, 97029, 97319, 97602, 97875, 98141, 98399, 98649, 98891, 99126, 99355, 99576, 99791, 99999 }; int tab92jo17[combientab92] = { 2985, 6266, 9260, 12164, 14982, 17715, 20367, 22940, 25436, 27857, 30206, 32485, 34696, 36841, 38922, 40941, 42899, 44800, 46643, 48431, 50166, 51850, 53483, 55067, 56604, 58095, 59541, 60945, 62306, 63627, 64909, 66152, 67358, 68528, 69663, 70764, 71833, 72869, 73875, 74851, 75797, 76715, 77606, 78470, 79309, 80122, 80911, 81677, 82419, 83140, 83839, 84517, 85175, 85813, 86432, 87033, 87616, 88181, 88730, 89262, 89778, 90279, 90765, 91236, 91694, 92138, 92568, 92986, 93391, 93784, 94165, 94535, 94894, 95242, 95580, 95908, 96225, 96534, 96833, 97123, 97405, 97678, 97943, 98201, 98450, 98692, 98927, 99155, 99376, 99590, 99798, 100000 }; int tab93jo17[combientab93] = { 2985, 6254, 9242, 12140, 14952, 17680, 20327, 22895, 25386, 27802, 30147, 32421, 34628, 36769, 38846, 40861, 42816, 44712, 46552, 48337, 50068, 51748, 53378, 54959, 56493, 57981, 59425, 60826, 62184, 63503, 64782, 66022, 67226, 68394, 69527, 70626, 71692, 72727, 73730, 74704, 75649, 76565, 77454, 78317, 79153, 79965, 80753, 81517, 82258, 82977, 83675, 84352, 85008, 85645, 86263, 86863, 87444, 88009, 88556, 89087, 89603, 90103, 90587, 91058, 91514, 91957, 92387, 92804, 93208, 93600, 93981, 94350, 94708, 95056, 95393, 95720, 96037, 96345, 96644, 96933, 97214, 97487, 97752, 98008, 98257, 98499, 98733, 98961, 99181, 99395, 99603, 99804, 100000 }; int tab94jo17[combientab94] = { 2985, 6242, 9224, 12117, 14924, 17647, 20289, 22851, 25338, 27750, 30090, 32360, 34563, 36699, 38772, 40784, 42735, 44627, 46464, 48245, 49974, 51650, 53277, 54855, 56386, 57872, 59313, 60711, 62067, 63383, 64659, 65898, 67099, 68265, 69395, 70493, 71557, 72589, 73591, 74563, 75506, 76420, 77308, 78169, 79004, 79814, 80600, 81363, 82103, 82820, 83517, 84192, 84848, 85483, 86100, 86699, 87279, 87842, 88389, 88919, 89433, 89932, 90416, 90886, 91342, 91783, 92212, 92628, 93032, 93423, 93803, 94172, 94529, 94876, 95213, 95539, 95856, 96163, 96461, 96750, 97031, 97303, 97567, 97823, 98072, 98313, 98547, 98774, 98994, 99207, 99415, 99616, 99811, 100000 }; int tab95jo17[combientab95] = { 2985, 6231, 9207, 12095, 14897, 17615, 20251, 22810, 25291, 27699, 30035, 32301, 34499, 36632, 38701, 40709, 42656, 44546, 46379, 48157, 49882, 51556, 53179, 54755, 56283, 57766, 59204, 60599, 61953, 63267, 64541, 65777, 66976, 68140, 69268, 70363, 71426, 72456, 73456, 74426, 75367, 76280, 77166, 78025, 78859, 79668, 80452, 81214, 81952, 82668, 83364, 84038, 84692, 85327, 85942, 86540, 87119, 87681, 88227, 88756, 89269, 89767, 90251, 90719, 91174, 91615, 92043, 92458, 92861, 93252, 93631, 93999, 94356, 94702, 95038, 95364, 95680, 95987, 96284, 96573, 96853, 97125, 97388, 97644, 97892, 98133, 98366, 98593, 98812, 99025, 99232, 99433, 99628, 99816, 100000 }; int tab96jo17[combientab96] = { 2985, 6220, 9191, 12074, 14870, 17583, 20215, 22769, 25246, 27650, 29981, 32244, 34438, 36567, 38633, 40636, 42580, 44466, 46296, 48071, 49793, 51464, 53085, 54657, 56183, 57663, 59099, 60492, 61843, 63154, 64426, 65660, 66857, 68018, 69145, 70238, 71299, 72328, 73326, 74294, 75233, 76145, 77029, 77887, 78719, 79526, 80309, 81069, 81806, 82522, 83215, 83889, 84542, 85175, 85790, 86386, 86964, 87526, 88070, 88598, 89111, 89608, 90090, 90558, 91012, 91452, 91880, 92294, 92696, 93086, 93465, 93832, 94188, 94534, 94869, 95194, 95510, 95816, 96113, 96401, 96681, 96952, 97215, 97470, 97718, 97958, 98191, 98417, 98637, 98850, 99056, 99256, 99451, 99639, 99822, 99999 }; int tab97jo17[combientab97] = { 2985, 6209, 9175, 12053, 14845, 17553, 20181, 22730, 25203, 27602, 29930, 32188, 34379, 36504, 38566, 40567, 42507, 44390, 46217, 47989, 49708, 51376, 52994, 54563, 56086, 57564, 58997, 60388, 61737, 63045, 64315, 65547, 66742, 67901, 69026, 70117, 71176, 72203, 73199, 74166, 75104, 76014, 76896, 77753, 78583, 79389, 80171, 80930, 81666, 82380, 83072, 83744, 84396, 85028, 85642, 86237, 86815, 87375, 87919, 88446, 88957, 89454, 89935, 90402, 90855, 91295, 91722, 92135, 92537, 92926, 93304, 93671, 94026, 94371, 94706, 95031, 95346, 95651, 95948, 96235, 96514, 96785, 97048, 97303, 97550, 97790, 98022, 98248, 98467, 98679, 98886, 99085, 99279, 99468, 99650, 99827, 99999 }; int tab98jo17[combientab98] = { 2985, 6199, 8879, 11664, 14366, 16987, 19530, 21996, 24390, 26712, 28964, 31149, 33269, 35326, 37322, 39258, 41136, 42958, 44725, 46440, 48104, 49718, 51284, 52803, 54276, 55706, 57093, 58439, 59745, 61011, 62240, 63432, 64588, 65710, 66799, 67855, 68879, 69873, 70837, 71773, 72680, 73561, 74415, 75244, 76048, 76828, 77584, 78318, 79030, 79721, 80392, 81042, 81673, 82285, 82879, 83455, 84013, 84556, 85082, 85592, 86087, 86567, 87033, 87485, 87924, 88349, 88762, 89162, 89551, 89928, 90293, 90648, 90992, 91326, 91650, 91964, 92269, 92565, 92852, 93130, 93400, 93662, 93916, 94163, 94402, 94634, 94859, 95078, 95290, 95495, 95695, 95888, 96076, 96258, 96435, 96606, 96772, 96934 }; int tab99jo17[combientab99] = { 2985, 6189, 9145, 12013, 14796, 17496, 20115, 22655, 25120, 27512, 29832, 32083, 34266, 36385, 38440, 40434, 42368, 44245, 46065, 47831, 49545, 51207, 52820, 54385, 55903, 57375, 58804, 60190, 61535, 62839, 64105, 65332, 66524, 67679, 68800, 69888, 70943, 71967, 72960, 73923, 74858, 75765, 76645, 77498, 78326, 79129, 79909, 80665, 81398, 82110, 82800, 83470, 84120, 84750, 85362, 85955, 86531, 87089, 87631, 88156, 88666, 89161, 89641, 90106, 90558, 90996, 91421, 91834, 92234, 92622, 92999, 93364, 93718, 94062, 94396, 94720, 95034, 95338, 95634, 95920, 96199, 96468, 96730, 96984, 97231, 97470, 97701, 97926, 98145, 98356, 98562, 98761, 98955, 99142, 99324, 99501, 99672, 99838, 99999 }; int tab100jo17[combientab100] = { 2985, 6179, 9131, 11995, 14773, 17468, 20083, 22620, 25081, 27469, 29786, 32033, 34213, 36328, 38380, 40371, 42302, 44176, 45994, 47757, 49468, 51128, 52738, 54300, 55816, 57286, 58712, 60096, 61439, 62741, 64005, 65231, 66420, 67574, 68693, 69779, 70833, 71855, 72846, 73808, 74742, 75647, 76525, 77378, 78204, 79006, 79785, 80539, 81272, 81982, 82672, 83340, 83989, 84618, 85229, 85821, 86396, 86954, 87495, 88019, 88528, 89022, 89501, 89966, 90417, 90855, 91279, 91691, 92090, 92478, 92854, 93219, 93573, 93916, 94249, 94572, 94886, 95190, 95485, 95771, 96049, 96318, 96580, 96833, 97079, 97318, 97550, 97774, 97992, 98203, 98409, 98608, 98801, 98988, 99170, 99346, 99517, 99683, 99844, 100000 }; int tab101jo17[combientab101] = { 2985, 6170, 9117, 11977, 14751, 17442, 20053, 22586, 25043, 27428, 29741, 31984, 34161, 36273, 38322, 40310, 42238, 44109, 45924, 47685, 49393, 51051, 52658, 54218, 55731, 57200, 58624, 60006, 61346, 62647, 63908, 65132, 66320, 67472, 68590, 69674, 70726, 71746, 72736, 73697, 74629, 75533, 76410, 77261, 78086, 78887, 79664, 80418, 81149, 81858, 82547, 83214, 83862, 84491, 85100, 85692, 86266, 86822, 87362, 87886, 88395, 88888, 89366, 89830, 90281, 90717, 91141, 91552, 91951, 92338, 92714, 93078, 93431, 93774, 94107, 94429, 94742, 95046, 95341, 95627, 95904, 96173, 96434, 96687, 96933, 97171, 97402, 97626, 97844, 98055, 98260, 98459, 98651, 98838, 99020, 99196, 99367, 99532, 99693, 99849, 100000 }; int tab102jo17[combientab102] = { 2985, 6161, 9104, 11959, 14729, 17416, 20024, 22553, 25007, 27387, 29697, 31937, 34111, 36220, 38266, 40251, 42176, 44044, 45857, 47615, 49321, 50976, 52581, 54139, 55650, 57116, 58538, 59918, 61256, 62555, 63815, 65037, 66223, 67373, 68489, 69572, 70622, 71641, 72630, 73589, 74519, 75422, 76298, 77147, 77972, 78771, 79547, 80300, 81030, 81738, 82426, 83092, 83739, 84367, 84975, 85566, 86139, 86695, 87234, 87757, 88265, 88757, 89235, 89699, 90148, 90584, 91008, 91418, 91817, 92203, 92578, 92942, 93294, 93637, 93969, 94291, 94603, 94907, 95201, 95486, 95763, 96032, 96292, 96545, 96790, 97028, 97259, 97483, 97701, 97911, 98116, 98314, 98507, 98693, 98875, 99050, 99221, 99386, 99547, 99702, 99853, 100000 }; int tab103jo17[combientab103] = { 2985, 6152, 9091, 11942, 14708, 17392, 19995, 22521, 24971, 27348, 29655, 31892, 34063, 36169, 38211, 40193, 42116, 43982, 45792, 47547, 49251, 50903, 52506, 54062, 55571, 57034, 58455, 59832, 61169, 62466, 63724, 64944, 66128, 67277, 68391, 69473, 70522, 71539, 72526, 73484, 74413, 75315, 76189, 77038, 77861, 78659, 79434, 80186, 80915, 81622, 82308, 82974, 83620, 84247, 84855, 85444, 86016, 86572, 87110, 87633, 88139, 88631, 89108, 89571, 90020, 90456, 90878, 91288, 91686, 92072, 92446, 92809, 93162, 93503, 93835, 94157, 94469, 94772, 95065, 95350, 95627, 95895, 96155, 96408, 96653, 96890, 97121, 97345, 97562, 97772, 97976, 98174, 98367, 98553, 98734, 98909, 99080, 99245, 99405, 99561, 99711, 99858, 100000 }; int tab104jo17[combientab104] = { 2985, 6143, 9078, 11926, 14688, 17368, 19968, 22490, 24937, 27311, 29614, 31848, 34016, 36119, 38159, 40138, 42058, 43921, 45728, 47482, 49183, 50833, 52434, 53987, 55494, 56956, 58374, 59750, 61085, 62380, 63636, 64855, 66037, 67184, 68297, 69377, 70424, 71440, 72426, 73383, 74311, 75211, 76084, 76931, 77753, 78551, 79324, 80075, 80803, 81509, 82195, 82860, 83505, 84130, 84738, 85326, 85898, 86452, 86990, 87512, 88018, 88509, 88985, 89447, 89896, 90331, 90753, 91162, 91559, 91945, 92319, 92681, 93033, 93374, 93706, 94027, 94339, 94641, 94934, 95219, 95495, 95763, 96023, 96275, 96519, 96757, 96987, 97210, 97427, 97637, 97841, 98039, 98231, 98417, 98598, 98773, 98943, 99108, 99268, 99423, 99574, 99720, 99862, 99999 }; int tab105jo17[combientab105] = { 2985, 6135, 9066, 11910, 14668, 17345, 19941, 22460, 24904, 27274, 29575, 31806, 33971, 36071, 38108, 40085, 42003, 43863, 45668, 47419, 49118, 50766, 52364, 53916, 55420, 56880, 58297, 59671, 61004, 62297, 63552, 64769, 65950, 67095, 68207, 69285, 70331, 71346, 72330, 73286, 74212, 75111, 75983, 76829, 77650, 78447, 79219, 79969, 80696, 81401, 82086, 82750, 83394, 84019, 84625, 85213, 85784, 86338, 86875, 87396, 87901, 88392, 88867, 89329, 89777, 90211, 90633, 91041, 91438, 91823, 92196, 92558, 92910, 93251, 93581, 93902, 94214, 94516, 94809, 95093, 95369, 95636, 95896, 96147, 96392, 96629, 96858, 97082, 97298, 97508, 97711, 97909, 98101, 98287, 98467, 98642, 98812, 98977, 99136, 99291, 99442, 99588, 99729, 99867, 100000 }; int tab106jo17[combientab106] = { 2985, 6127, 9055, 11894, 14649, 17322, 19915, 22431, 24872, 27239, 29536, 31765, 33927, 36024, 38059, 40033, 41948, 43806, 45609, 47358, 49054, 50700, 52297, 53846, 55349, 56807, 58221, 59594, 60925, 62216, 63469, 64685, 65864, 67009, 68119, 69195, 70240, 71254, 72237, 73191, 74116, 75014, 75885, 76730, 77550, 78345, 79117, 79866, 80592, 81296, 81980, 82643, 83286, 83910, 84516, 85103, 85673, 86226, 86762, 87283, 87788, 88277, 88753, 89214, 89661, 90095, 90515, 90924, 91320, 91704, 92077, 92439, 92790, 93130, 93461, 93781, 94092, 94393, 94686, 94970, 95245, 95512, 95772, 96023, 96267, 96504, 96733, 96956, 97172, 97382, 97585, 97783, 97974, 98160, 98340, 98515, 98684, 98849, 99008, 99163, 99313, 99459, 99601, 99738, 99871, 100000 }; int tab107jo17[combientab107] = { 2985, 6120, 9043, 11880, 14631, 17301, 19890, 22403, 24840, 27205, 29499, 31725, 33884, 35979, 38011, 39983, 41896, 43752, 45552, 47298, 48993, 50637, 52231, 53779, 55280, 56736, 58149, 59519, 60849, 62139, 63390, 64604, 65782, 66925, 68033, 69109, 70152, 71165, 72147, 73099, 74024, 74920, 75790, 76634, 77453, 78248, 79018, 79766, 80491, 81195, 81877, 82540, 83182, 83806, 84410, 84997, 85566, 86118, 86654, 87174, 87678, 88167, 88642, 89102, 89549, 89982, 90402, 90810, 91206, 91590, 91962, 92323, 92674, 93014, 93344, 93664, 93974, 94276, 94568, 94851, 95126, 95393, 95652, 95903, 96147, 96383, 96613, 96835, 97051, 97260, 97463, 97660, 97852, 98037, 98217, 98392, 98561, 98725, 98885, 99039, 99189, 99335, 99476, 99613, 99746, 99875, 100000 }; int tab108jo17[combientab108] = { 2985, 6112, 9032, 11865, 14613, 17280, 19866, 22376, 24810, 27172, 29464, 31687, 33843, 35935, 37965, 39934, 41845, 43698, 45496, 47241, 48933, 50575, 52168, 53713, 55212, 56667, 58078, 59447, 60775, 62063, 63313, 64526, 65702, 66843, 67951, 69025, 70067, 71078, 72059, 73011, 73934, 74829, 75698, 76541, 77359, 78152, 78922, 79669, 80393, 81096, 81778, 82439, 83081, 83704, 84308, 84894, 85462, 86014, 86549, 87068, 87571, 88060, 88534, 88994, 89440, 89873, 90293, 90700, 91095, 91478, 91850, 92211, 92561, 92901, 93230, 93550, 93860, 94161, 94453, 94736, 95011, 95277, 95536, 95787, 96030, 96266, 96495, 96717, 96933, 97142, 97345, 97542, 97733, 97918, 98098, 98272, 98441, 98605, 98764, 98919, 99069, 99214, 99355, 99492, 99625, 99754, 99878, 100000 }; int tab109jo17[combientab109] = { 2985, 6105, 9022, 11851, 14596, 17259, 19843, 22349, 24781, 27140, 29429, 31649, 33803, 35893, 37921, 39888, 41796, 43647, 45443, 47185, 48876, 50516, 52107, 53650, 55148, 56600, 58010, 59377, 60703, 61990, 63239, 64450, 65625, 66765, 67871, 68944, 69985, 70995, 71974, 72925, 73847, 74742, 75609, 76451, 77268, 78061, 78829, 79575, 80299, 81001, 81682, 82343, 82984, 83606, 84209, 84794, 85362, 85913, 86447, 86966, 87469, 87957, 88430, 88889, 89335, 89767, 90187, 90593, 90988, 91371, 91743, 92103, 92453, 92792, 93121, 93440, 93750, 94050, 94342, 94625, 94899, 95165, 95424, 95674, 95917, 96153, 96382, 96604, 96819, 97028, 97231, 97427, 97618, 97803, 97983, 98157, 98326, 98490, 98649, 98803, 98953, 99098, 99239, 99375, 99508, 99637, 99761, 99882, 100000 }; int tab110jo17[combientab110] = { 2985, 6098, 9011, 11838, 14580, 17240, 19820, 22324, 24753, 27109, 29395, 31613, 33765, 35852, 37877, 39842, 41748, 43597, 45391, 47132, 48820, 50458, 52047, 53589, 55085, 56536, 57944, 59309, 60634, 61920, 63167, 64377, 65550, 66689, 67794, 68865, 69905, 70914, 71892, 72842, 73763, 74656, 75523, 76364, 77180, 77972, 78740, 79485, 80207, 80909, 81589, 82249, 82889, 83510, 84113, 84697, 85265, 85815, 86349, 86866, 87369, 87856, 88329, 88788, 89233, 89665, 90084, 90490, 90884, 91267, 91638, 91998, 92347, 92686, 93015, 93334, 93643, 93943, 94234, 94517, 94791, 95057, 95315, 95565, 95808, 96043, 96272, 96494, 96709, 96917, 97120, 97316, 97507, 97691, 97871, 98045, 98213, 98377, 98536, 98690, 98840, 98985, 99125, 99262, 99394, 99523, 99648, 99768, 99886, 100000 }; int tab111jo17[combientab111] = { 2985, 6091, 9001, 11825, 14564, 17221, 19799, 22299, 24726, 27080, 29363, 31579, 33728, 35813, 37836, 39798, 41702, 43549, 45341, 47080, 48766, 50403, 51990, 53530, 55024, 56474, 57880, 59244, 60568, 61852, 63097, 64306, 65478, 66616, 67719, 68790, 69828, 70836, 71813, 72762, 73682, 74574, 75440, 76280, 77095, 77886, 78653, 79397, 80119, 80820, 81499, 82158, 82798, 83418, 84020, 84604, 85171, 85721, 86254, 86771, 87273, 87760, 88232, 88690, 89135, 89566, 89985, 90391, 90785, 91167, 91537, 91897, 92246, 92584, 92913, 93231, 93540, 93840, 94131, 94413, 94687, 94952, 95210, 95460, 95703, 95938, 96166, 96388, 96602, 96811, 97013, 97209, 97400, 97584, 97763, 97937, 98106, 98269, 98428, 98582, 98731, 98876, 99017, 99153, 99285, 99414, 99538, 99659, 99776, 99890, 100000 }; int tab112jo17[combientab112] = { 2985, 6085, 8992, 11812, 14548, 17202, 19777, 22275, 24699, 27050, 29332, 31545, 33692, 35774, 37795, 39756, 41657, 43503, 45293, 47029, 48714, 50348, 51934, 53473, 54965, 56413, 57818, 59180, 60502, 61785, 63029, 64237, 65408, 66544, 67646, 68716, 69753, 70760, 71736, 72683, 73602, 74494, 75359, 76198, 77012, 77802, 78568, 79312, 80033, 80733, 81411, 82070, 82709, 83329, 83930, 84513, 85079, 85628, 86161, 86678, 87179, 87665, 88137, 88595, 89039, 89470, 89888, 90293, 90687, 91069, 91439, 91798, 92147, 92485, 92813, 93131, 93440, 93739, 94030, 94312, 94585, 94850, 95108, 95357, 95600, 95835, 96063, 96284, 96499, 96707, 96909, 97105, 97295, 97479, 97658, 97832, 98000, 98163, 98322, 98476, 98625, 98770, 98910, 99046, 99178, 99307, 99431, 99552, 99669, 99782, 99892, 99999 }; int tab113jo17[combientab113] = { 2985, 6079, 8982, 11800, 14533, 17184, 19757, 22252, 24674, 27022, 29301, 31512, 33657, 35737, 37756, 39714, 41614, 43458, 45246, 46981, 48664, 50296, 51881, 53417, 54908, 56355, 57758, 59119, 60440, 61721, 62964, 64170, 65340, 66475, 67576, 68645, 69681, 70687, 71662, 72608, 73526, 74417, 75281, 76119, 76933, 77722, 78487, 79230, 79950, 80649, 81327, 81985, 82623, 83243, 83843, 84426, 84991, 85540, 86072, 86588, 87089, 87575, 88046, 88503, 88947, 89377, 89795, 90200, 90593, 90974, 91344, 91703, 92051, 92389, 92717, 93035, 93343, 93642, 93932, 94214, 94487, 94752, 95009, 95259, 95501, 95736, 95963, 96184, 96399, 96607, 96809, 97004, 97194, 97378, 97557, 97731, 97899, 98062, 98220, 98374, 98523, 98668, 98808, 98944, 99076, 99204, 99328, 99449, 99566, 99679, 99789, 99896, 100000 }; int tab114jo17[combientab114] = { 2985, 6072, 8973, 11788, 14518, 17167, 19737, 22230, 24649, 26995, 29272, 31480, 33623, 35702, 37718, 39675, 41573, 43414, 45200, 46934, 48615, 50246, 51829, 53364, 54853, 56298, 57700, 59060, 60379, 61659, 62901, 64106, 65275, 66409, 67509, 68576, 69611, 70616, 71590, 72536, 73453, 74343, 75206, 76043, 76856, 77644, 78409, 79151, 79870, 80568, 81246, 81903, 82541, 83159, 83759, 84341, 84906, 85454, 85986, 86501, 87002, 87487, 87958, 88415, 88858, 89288, 89705, 90110, 90502, 90883, 91253, 91611, 91959, 92296, 92624, 92941, 93249, 93548, 93838, 94120, 94393, 94657, 94914, 95163, 95405, 95640, 95867, 96088, 96302, 96510, 96712, 96907, 97097, 97281, 97459, 97633, 97801, 97964, 98122, 98275, 98424, 98569, 98709, 98845, 98977, 99105, 99229, 99349, 99466, 99579, 99689, 99796, 99899, 100000 }; int tab115jo17[combientab115] = { 2985, 6067, 8965, 11776, 14504, 17150, 19718, 22208, 24625, 26969, 29243, 31450, 33590, 35667, 37681, 39636, 41532, 43372, 45156, 46888, 48567, 50197, 51778, 53311, 54799, 56243, 57643, 59002, 60320, 61599, 62840, 64043, 65211, 66344, 67443, 68509, 69543, 70547, 71520, 72464, 73381, 74270, 75132, 75969, 76780, 77568, 78332, 79073, 79792, 80490, 81166, 81823, 82460, 83078, 83677, 84259, 84823, 85370, 85901, 86417, 86916, 87401, 87872, 88328, 88771, 89200, 89617, 90021, 90414, 90794, 91163, 91522, 91869, 92206, 92533, 92850, 93158, 93457, 93746, 94027, 94300, 94565, 94821, 95070, 95312, 95546, 95773, 95994, 96208, 96415, 96617, 96812, 97002, 97186, 97364, 97537, 97705, 97868, 98026, 98179, 98328, 98472, 98612, 98748, 98880, 99007, 99131, 99252, 99368, 99482, 99592, 99698, 99802, 99902, 99999 }; int tab116jo17[combientab116] = { 2985, 6061, 8956, 11765, 14490, 17134, 19699, 22188, 24602, 26944, 29216, 31420, 33559, 35633, 37646, 39599, 41493, 43331, 45114, 46844, 48522, 50150, 51729, 53261, 54748, 56190, 57589, 58947, 60264, 61541, 62781, 63983, 65150, 66281, 67379, 68444, 69478, 70480, 71453, 72397, 73312, 74200, 75062, 75897, 76708, 77495, 78258, 78999, 79717, 80414, 81090, 81746, 82382, 83000, 83599, 84180, 84743, 85290, 85821, 86336, 86835, 87319, 87789, 88245, 88688, 89117, 89533, 89937, 90329, 90709, 91078, 91436, 91783, 92120, 92446, 92763, 93071, 93369, 93658, 93939, 94212, 94476, 94732, 94981, 95222, 95456, 95684, 95904, 96118, 96325, 96526, 96721, 96911, 97094, 97273, 97446, 97613, 97776, 97934, 98087, 98236, 98380, 98520, 98655, 98787, 98915, 99038, 99159, 99275, 99388, 99498, 99605, 99708, 99808, 99905, 100000 }; int tab117jo17[combientab117] = { 2985, 6055, 8948, 11755, 14477, 17119, 19681, 22167, 24579, 26919, 29189, 31391, 33528, 35601, 37611, 39562, 41455, 43291, 45072, 46801, 48477, 50104, 51682, 53213, 54698, 56139, 57537, 58893, 60208, 61485, 62723, 63924, 65090, 66221, 67318, 68382, 69414, 70416, 71387, 72330, 73245, 74132, 74993, 75828, 76638, 77424, 78187, 78926, 79644, 80340, 81016, 81671, 82307, 82924, 83522, 84103, 84666, 85212, 85742, 86256, 86755, 87239, 87709, 88164, 88606, 89035, 89451, 89855, 90246, 90626, 90994, 91352, 91699, 92035, 92362, 92678, 92985, 93283, 93573, 93853, 94125, 94389, 94645, 94894, 95135, 95369, 95596, 95816, 96030, 96237, 96438, 96633, 96822, 97005, 97183, 97356, 97524, 97686, 97844, 97997, 98146, 98290, 98429, 98565, 98696, 98824, 98948, 99068, 99184, 99297, 99407, 99513, 99617, 99717, 99814, 99908, 99999 }; int tab118jo17[combientab118] = { 2985, 6050, 8940, 11744, 14464, 17103, 19664, 22148, 24557, 26895, 29163, 31363, 33498, 35569, 37578, 39527, 41418, 43253, 45033, 46759, 48434, 50059, 51636, 53166, 54649, 56089, 57486, 58841, 60155, 61430, 62668, 63868, 65032, 66162, 67258, 68321, 69353, 70353, 71324, 72266, 73180, 74066, 74926, 75761, 76570, 77356, 78117, 78857, 79574, 80269, 80944, 81599, 82234, 82850, 83448, 84028, 84591, 85137, 85666, 86180, 86679, 87162, 87631, 88086, 88528, 88956, 89372, 89775, 90166, 90546, 90914, 91271, 91618, 91954, 92280, 92596, 92903, 93201, 93490, 93770, 94042, 94306, 94562, 94810, 95051, 95285, 95511, 95731, 95945, 96152, 96352, 96547, 96736, 96920, 97097, 97270, 97437, 97600, 97758, 97910, 98059, 98203, 98342, 98478, 98609, 98737, 98860, 98980, 99097, 99209, 99319, 99425, 99528, 99628, 99725, 99820, 99911, 100000 }; int tab119jo17[combientab119] = { 2985, 6045, 8932, 11734, 14452, 17089, 19647, 22128, 24536, 26872, 29138, 31336, 33469, 35538, 37546, 39493, 41383, 43215, 44994, 46719, 48393, 50016, 51591, 53120, 54602, 56041, 57436, 58790, 60103, 61377, 62613, 63813, 64976, 66105, 67200, 68262, 69293, 70293, 71263, 72204, 73117, 74002, 74862, 75695, 76504, 77289, 78050, 78788, 79505, 80200, 80874, 81528, 82163, 82779, 83376, 83956, 84518, 85063, 85592, 86106, 86604, 87087, 87556, 88010, 88452, 88880, 89295, 89698, 90088, 90468, 90835, 91192, 91538, 91874, 92200, 92516, 92823, 93120, 93409, 93689, 93961, 94224, 94480, 94728, 94969, 95202, 95429, 95649, 95862, 96069, 96269, 96464, 96653, 96836, 97014, 97186, 97353, 97516, 97673, 97826, 97974, 98118, 98257, 98393, 98524, 98651, 98775, 98895, 99011, 99124, 99233, 99339, 99442, 99542, 99639, 99733, 99825, 99913, 99999 }; int tab120jo17[combientab120] = { 2985, 6040, 8925, 11724, 14440, 17075, 19631, 22110, 24516, 26850, 29114, 31311, 33442, 35509, 37515, 39461, 41348, 43180, 44957, 46680, 48353, 49975, 51549, 53076, 54557, 55995, 57389, 58741, 60054, 61327, 62562, 63760, 64923, 66050, 67145, 68206, 69236, 70235, 71204, 72144, 73057, 73942, 74800, 75633, 76441, 77225, 77986, 78724, 79439, 80134, 80808, 81461, 82095, 82711, 83307, 83887, 84448, 84993, 85522, 86035, 86532, 87015, 87484, 87938, 88379, 88806, 89221, 89624, 90014, 90393, 90761, 91117, 91463, 91799, 92124, 92440, 92747, 93044, 93332, 93612, 93883, 94147, 94402, 94650, 94891, 95124, 95350, 95570, 95783, 95989, 96190, 96384, 96573, 96756, 96934, 97106, 97273, 97435, 97593, 97745, 97893, 98037, 98176, 98312, 98443, 98570, 98694, 98813, 98930, 99042, 99152, 99258, 99361, 99461, 99557, 99651, 99743, 99831, 99917, 100000 }; int tab121jo17[combientab121] = { 2985, 6035, 8918, 11715, 14428, 17061, 19615, 22092, 24496, 26828, 29090, 31285, 33414, 35480, 37484, 39429, 41315, 43145, 44920, 46642, 48313, 49934, 51507, 53033, 54513, 55949, 57342, 58694, 60005, 61277, 62511, 63708, 64870, 65997, 67090, 68151, 69180, 70178, 71146, 72086, 72997, 73882, 74739, 75572, 76379, 77162, 77922, 78660, 79375, 80069, 80742, 81395, 82029, 82643, 83240, 83818, 84380, 84924, 85452, 85965, 86462, 86945, 87413, 87867, 88307, 88734, 89149, 89551, 89941, 90320, 90687, 91043, 91389, 91724, 92049, 92365, 92671, 92968, 93256, 93536, 93807, 94070, 94326, 94573, 94814, 95047, 95273, 95492, 95705, 95911, 96112, 96306, 96495, 96678, 96855, 97027, 97194, 97356, 97513, 97666, 97814, 97957, 98097, 98232, 98363, 98490, 98613, 98733, 98849, 98962, 99071, 99177, 99280, 99380, 99476, 99570, 99662, 99750, 99836, 99919, 100000 }; int tab122jo17[combientab122] = { 2985, 6030, 8911, 11706, 14417, 17047, 19599, 22075, 24477, 26807, 29068, 31261, 33388, 35453, 37455, 39398, 41283, 43111, 44885, 46606, 48276, 49895, 51467, 52991, 54470, 55905, 57297, 58648, 59958, 61229, 62462, 63659, 64819, 65945, 67038, 68097, 69126, 70123, 71091, 72029, 72940, 73824, 74681, 75513, 76319, 77102, 77861, 78598, 79313, 80006, 80679, 81332, 81965, 82579, 83175, 83753, 84314, 84858, 85386, 85898, 86395, 86877, 87344, 87798, 88238, 88665, 89079, 89481, 89871, 90249, 90616, 90972, 91317, 91652, 91977, 92293, 92599, 92896, 93184, 93463, 93734, 93997, 94252, 94499, 94739, 94972, 95198, 95418, 95630, 95837, 96037, 96231, 96419, 96602, 96779, 96951, 97118, 97280, 97437, 97590, 97737, 97881, 98020, 98155, 98286, 98413, 98536, 98656, 98772, 98884, 98994, 99100, 99202, 99302, 99399, 99493, 99584, 99672, 99758, 99841, 99921, 100000 }; int tab123jo17[combientab123] = { 2985, 6026, 8904, 11697, 14406, 17034, 19584, 22058, 24458, 26787, 29045, 31237, 33363, 35426, 37427, 39368, 41251, 43078, 44851, 46571, 48239, 49857, 51428, 52951, 54429, 55863, 57254, 58603, 59912, 61183, 62415, 63610, 64770, 65895, 66987, 68046, 69073, 70070, 71037, 71975, 72885, 73768, 74624, 75455, 76261, 77043, 77802, 78538, 79253, 79945, 80618, 81270, 81902, 82516, 83111, 83689, 84250, 84793, 85321, 85832, 86329, 86810, 87278, 87731, 88171, 88597, 89011, 89413, 89802, 90180, 90547, 90903, 91248, 91583, 91907, 92223, 92528, 92825, 93113, 93392, 93663, 93925, 94180, 94427, 94667, 94900, 95126, 95345, 95557, 95764, 95964, 96158, 96346, 96529, 96706, 96878, 97044, 97206, 97363, 97515, 97663, 97806, 97945, 98080, 98211, 98338, 98461, 98581, 98697, 98809, 98918, 99024, 99127, 99226, 99323, 99417, 99508, 99596, 99682, 99765, 99845, 99924, 99999 }; int tab124jo17[combientab124] = { 2985, 6021, 8898, 11688, 14395, 17022, 19570, 22042, 24440, 26767, 29024, 31214, 33339, 35400, 37399, 39339, 41221, 43047, 44818, 46537, 48204, 49821, 51390, 52912, 54389, 55822, 57212, 58560, 59869, 61138, 62369, 63564, 64723, 65847, 66938, 67996, 69022, 70018, 70985, 71922, 72831, 73714, 74570, 75400, 76206, 76987, 77745, 78481, 79195, 79887, 80559, 81210, 81842, 82456, 83051, 83628, 84188, 84731, 85258, 85770, 86266, 86747, 87214, 87667, 88106, 88533, 88946, 89348, 89737, 90115, 90481, 90836, 91181, 91516, 91840, 92155, 92461, 92757, 93045, 93324, 93594, 93857, 94111, 94358, 94598, 94831, 95056, 95275, 95488, 95694, 95893, 96087, 96275, 96458, 96635, 96807, 96973, 97135, 97292, 97444, 97592, 97735, 97874, 98009, 98139, 98266, 98389, 98509, 98625, 98737, 98846, 98952, 99054, 99154, 99251, 99344, 99435, 99523, 99609, 99692, 99772, 99851, 99926, 100000 }; int tab125jo17[combientab125] = { 2985, 6017, 8891, 11680, 14385, 17010, 19556, 22026, 24423, 26748, 29003, 31192, 33315, 35374, 37372, 39311, 41191, 43016, 44786, 46503, 48169, 49785, 51353, 52874, 54350, 55782, 57171, 58518, 59826, 61094, 62324, 63518, 64676, 65799, 66889, 67947, 68973, 69968, 70934, 71870, 72779, 73661, 74516, 75346, 76151, 76932, 77689, 78424, 79138, 79829, 80501, 81152, 81783, 82396, 82991, 83568, 84127, 84670, 85197, 85708, 86204, 86685, 87151, 87604, 88043, 88469, 88882, 89283, 89672, 90050, 90416, 90771, 91116, 91450, 91774, 92089, 92394, 92690, 92978, 93256, 93527, 93789, 94044, 94291, 94530, 94762, 94988, 95207, 95419, 95625, 95824, 96018, 96206, 96389, 96565, 96737, 96904, 97065, 97222, 97374, 97521, 97665, 97803, 97938, 98069, 98196, 98319, 98438, 98554, 98666, 98775, 98881, 98983, 99083, 99179, 99273, 99364, 99452, 99537, 99620, 99701, 99779, 99854, 99928, 99999 }; int tab126jo17[combientab126] = { 2985, 6013, 8885, 11672, 14375, 16998, 19542, 22011, 24406, 26729, 28983, 31170, 33292, 35350, 37346, 39284, 41163, 42986, 44755, 46471, 48136, 49751, 51318, 52838, 54313, 55743, 57131, 58478, 59784, 61052, 62281, 63474, 64631, 65754, 66843, 67900, 68925, 69920, 70885, 71821, 72729, 73610, 74465, 75294, 76098, 76879, 77636, 78370, 79083, 79774, 80445, 81096, 81727, 82340, 82934, 83510, 84069, 84612, 85138, 85649, 86144, 86625, 87091, 87543, 87982, 88408, 88821, 89222, 89610, 89988, 90353, 90708, 91053, 91387, 91711, 92025, 92330, 92626, 92913, 93192, 93462, 93724, 93979, 94225, 94465, 94697, 94922, 95141, 95353, 95559, 95758, 95952, 96140, 96322, 96499, 96670, 96837, 96998, 97155, 97307, 97454, 97597, 97736, 97871, 98001, 98128, 98251, 98370, 98486, 98598, 98707, 98812, 98915, 99014, 99111, 99204, 99295, 99383, 99468, 99551, 99632, 99710, 99785, 99859, 99930, 99999 }; int tab127jo17[combientab127] = { 2985, 6009, 8879, 11664, 14366, 16987, 19530, 21996, 24390, 26712, 28964, 31149, 33269, 35326, 37322, 39258, 41136, 42958, 44725, 46440, 48104, 49718, 51284, 52803, 54276, 55706, 57093, 58439, 59745, 61011, 62240, 63432, 64588, 65710, 66799, 67855, 68879, 69873, 70837, 71773, 72680, 73561, 74415, 75244, 76048, 76828, 77584, 78318, 79030, 79721, 80392, 81042, 81673, 82285, 82879, 83455, 84013, 84556, 85082, 85592, 86087, 86567, 87033, 87485, 87924, 88349, 88762, 89162, 89551, 89928, 90293, 90648, 90992, 91326, 91650, 91964, 92269, 92565, 92852, 93130, 93400, 93662, 93916, 94163, 94402, 94634, 94859, 95078, 95290, 95495, 95695, 95888, 96076, 96258, 96435, 96606, 96772, 96934, 97090, 97242, 97389, 97532, 97671, 97806, 97936, 98063, 98185, 98305, 98420, 98532, 98641, 98747, 98849, 98948, 99045, 99138, 99229, 99317, 99402, 99485, 99566, 99644, 99719, 99793, 99864, 99933, 100000 }; int tab128jo17[combientab128] = { 2985, 6005, 8873, 11656, 14356, 16976, 19517, 21982, 24374, 26694, 28945, 31129, 33248, 35303, 37297, 39232, 41109, 42930, 44696, 46410, 48072, 49685, 51250, 52768, 54241, 55670, 57056, 58401, 59706, 60971, 62199, 63390, 64546, 65667, 66755, 67811, 68834, 69828, 70791, 71726, 72633, 73513, 74366, 75195, 75998, 76777, 77534, 78267, 78979, 79669, 80339, 80989, 81619, 82231, 82824, 83400, 83959, 84500, 85026, 85536, 86031, 86511, 86976, 87428, 87866, 88291, 88704, 89104, 89492, 89869, 90234, 90589, 90933, 91266, 91590, 91904, 92209, 92504, 92791, 93069, 93339, 93601, 93855, 94101, 94340, 94572, 94797, 95016, 95227, 95433, 95632, 95826, 96013, 96195, 96372, 96543, 96709, 96870, 97027, 97179, 97326, 97469, 97607, 97742, 97872, 97999, 98121, 98240, 98356, 98468, 98577, 98682, 98784, 98884, 98980, 99074, 99164, 99252, 99337, 99420, 99501, 99578, 99654, 99727, 99798, 99867, 99934, 99999 }; int *table[] = { tab1jo17, tab2jo17, tab3jo17, tab4jo17, tab5jo17, tab6jo17, tab7jo17, tab8jo17, tab9jo17, tab10jo17, tab11jo17, tab12jo17, tab13jo17, tab14jo17, tab15jo17, tab16jo17, tab17jo17, tab18jo17, tab19jo17, tab20jo17, tab21jo17, tab22jo17, tab23jo17, tab24jo17, tab25jo17, tab26jo17, tab27jo17, tab28jo17, tab29jo17, tab30jo17, tab31jo17, tab32jo17, tab33jo17, tab34jo17, tab35jo17, tab36jo17, tab37jo17, tab38jo17, tab39jo17, tab40jo17, tab41jo17, tab42jo17, tab43jo17, tab44jo17, tab45jo17, tab46jo17, tab47jo17, tab48jo17, tab49jo17, tab50jo17, tab51jo17, tab52jo17, tab53jo17, tab54jo17, tab55jo17, tab56jo17, tab57jo17, tab58jo17, tab59jo17, tab60jo17, tab61jo17, tab62jo17, tab63jo17, tab64jo17, tab65jo17, tab66jo17, tab67jo17, tab68jo17, tab69jo17, tab70jo17, tab71jo17, tab72jo17, tab73jo17, tab74jo17, tab75jo17, tab76jo17, tab77jo17, tab78jo17, tab79jo17, tab80jo17, tab81jo17, tab82jo17, tab83jo17, tab84jo17, tab85jo17, tab86jo17, tab87jo17, tab88jo17, tab89jo17, tab90jo17, tab91jo17, tab92jo17, tab93jo17, tab94jo17, tab95jo17, tab96jo17, tab97jo17, tab98jo17, tab99jo17, tab100jo17, tab101jo17, tab102jo17, tab103jo17, tab104jo17, tab105jo17, tab106jo17, tab107jo17, tab108jo17, tab109jo17, tab110jo17, tab111jo17, tab112jo17, tab113jo17, tab114jo17, tab115jo17, tab116jo17, tab117jo17, tab118jo17, tab119jo17, tab120jo17, tab121jo17, tab122jo17, tab123jo17, tab124jo17, tab125jo17, tab126jo17, tab127jo17, tab128jo17 }; unsigned char tab1[total1] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C, 0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x5B, 0x5C, 0x5D, 0x5E, 0x5F, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A, 0x7B, 0x7C, 0x7D, 0x7E, 0x7F, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9A, 0x9B, 0x9C, 0x9D, 0x9E, 0x9F, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7, 0xB8, 0xB9, 0xBA, 0xBB, 0xBC, 0xBD, 0xBE, 0xBF, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF, 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF }; jojo = fopen (ajo, "rb"); if (jojo == NULL) { printf ("Ce fichier ne va pas %s\n", ajo); exit (1); } if (jojo != NULL) { int assemble = 0; int ludion = 32768; int enclanche = 0; int nbdepoints; int ouaitu; int amplitude = 32768; int force1 = 0; float jo; abadie = fgetc (jojo); /* abadie vient chercher tout ce qui bouge */ while (abadie != EOF) { for (ouaitu = 0; ouaitu < 255; ouaitu++) { if (abadie == tab1[ouaitu]) { force1 = ouaitu; assemble++; } } /*debut assemble*/ switch (assemble) { case 1: amplitude = (force1 * 256); /traitement*amplitude/ break; default: nbdepoints = force1; /fin traitement bin/ float okioki; okioki = (float) (nbdepoints); jo = okioki; if (jo < 2) { jo = 1; } int sens; if (ludion > amplitude) { sens = 2; } else { sens = 1; } /*fin conversion*/ double codebash; FILE *temps = NULL; unsigned char tab[total] = { 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9A, 0x9B, 0x9C, 0x9D, 0x9E, 0x9F, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7, 0xB8, 0xB9, 0xBA, 0xBB, 0xBC, 0xBD, 0xBE, 0xBF, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF, 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C, 0x2D, 0x2E, 0x2F, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x5B, 0x5C, 0x5D, 0x5E, 0x5F, 0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A, 0x7B, 0x7C, 0x7D, 0x7E, 0x7F }; unsigned char *ptr; unsigned char *petr; temps = fopen (awav, "ab"); /* pour ajouter a. possible w ou r+ w+ tester */ if (temps != NULL) { /*/ if (sens == 2) /*ajouter dessous*/ { if (nbdepoints < 2) { codebash = (int) (amplitude); int ji; int ij; int ola; ola = (int) codebash; /*ji = ola%256;*/ ij = (int) (ola * 0.00390625); ji = ola - (256 * ij); ptr = &tab[ji]; petr = &tab[ij]; fwrite (ptr, sizeof (char), 1, temps); fwrite (petr, sizeof (char), 1, temps); } else { float ote, ote1; ote1 = 1; int boucle; boucle = nbdepoints * 0.5; int reste; reste = nbdepoints - boucle; ote = (ludion - amplitude) * 0.5; int i, j, *p; for (i = boucle - 1; i + 1 > 0; i–) { for (p = table[boucle - 1], j = 0; j < placement[i]; j++) ote1 = ote * 0.00001 * p[j]; /* fprintf(temps,"%d ", (int)codebash ); */ codebash = (int) (amplitude + ote + ote1); int ji; int ij; int ola; ola = (int) codebash; /*ji = ola%256;*/ ij = (int) (ola * 0.00390625); ji = ola - (256 * ij); ptr = &tab[ji]; petr = &tab[ij]; fwrite (ptr, sizeof (char), 1, temps); fwrite (petr, sizeof (char), 1, temps); /*fin modif*/ } enclanche = 2; /* deuxieme enclanche du sens 2/ if (enclanche == 2) { float ote, ote1; ote1 = 1; ote = (ludion - amplitude) * 0.5; int i, j, *p; for (i = 0; i < reste; i++) { for (p = table[reste], j = 0; j < placement[i]; j++) ote1 = ote * 0.00001 * p[j]; codebash = (int) (ludion - ote - ote1); int ji; int ij; int ola; ola = (int) codebash; /*ji = ola%256;*/ ij = (int) (ola * 0.00390625); ji = ola - (256 * ij); ptr = &tab[ji]; petr = &tab[ij]; fwrite (ptr, sizeof (char), 1, temps); fwrite (petr, sizeof (char), 1, temps); /*fin modif*/ } enclanche = 0; /* fin descente 2*/ } } } /*en attente*/ // if (sens == 1) { if (nbdepoints < 2) { codebash = (int) (amplitude); int ji; int ij; int ola; ola = (int) codebash; /*ji = ola%256;*/ ij = (int) (ola * 0.00390625); ji = ola - (256 * ij); ptr = &tab[ji]; petr = &tab[ij]; fwrite (ptr, sizeof (char), 1, temps); fwrite (petr, sizeof (char), 1, temps); } else { float ote, ote1; ote1 = 1; int boucle; boucle = nbdepoints * 0.5; int ajuste; ajuste = nbdepoints - boucle; if (boucle == 0) { boucle = 1; } ote = (amplitude - ludion) * 0.5; int i, j, *p; for (i = boucle - 1; i + 1 > 0; i–) { for (p = table[boucle - 1], j = 0; j < placement[i]; j++) ote1 = ote * 0.00001 * p[j]; codebash = amplitude - ote - ote1; /* fprintf(temps,"%d ", (int)codebash ); */ codebash = (int) (amplitude - ote - ote1); int ji; int ij; int ola; ola = (int) codebash; /*ji = ola%256;*/ ij = (int) (ola * 0.00390625); ji = ola - (256 * ij); ptr = &tab[ji]; petr = &tab[ij]; fwrite (ptr, sizeof (char), 1, temps); fwrite (petr, sizeof (char), 1, temps); /*fin modif*/ } enclanche = 1; /* debut descente inverse du sens 1 */ if (enclanche == 1) { float ote, ote1; ote1 = 1; int boucle, boncompte; boucle = 1; ote = (amplitude - ludion) * 0.5; boncompte = ajuste; if (boncompte == 0) { boncompte = 1; } int i, j, *p; for (i = 0; i < boncompte; i++) { for (p = table[boncompte], j = 0; j < placement[i]; j++) ote1 = ote * 0.00001 * p[j]; codebash = (int) (ludion + ote + ote1); int ji; int ij; int ola; ola = (int) codebash; /*ji = ola%256;*/ ij = (int) (ola * 0.00390625); ji = ola - (256 * ij); ptr = &tab[ji]; petr = &tab[ij]; fwrite (ptr, sizeof (char), 1, temps); fwrite (petr, sizeof (char), 1, temps); /*fin modif*/ boucle++; } enclanche = 0; } } } /* fin*/ // /*/ fclose (temps), temps = NULL;; } ludion = amplitude; /*pas*toucher*/ assemble = 0; } /*fin assemble*/ abadie = fgetc (jojo); /* abadie va chercher la suivante */ } fclose (jojo), jojo = NULL;; } // fclose(fichierjo); fclose(fichierwav); } int main( int argc, char* args[] ) { int piste = 10; conversionJoWav (piste); return 0; } '' Puis, enregistrer
puis compiler avec
g++ convertisseur.cpp -o convertisseur -Wall
ce qui permet de convertir un fichier nommé 10.jo en 10.wav ===== Configuration ===== Tout d'abord, ouvrez le fichier /truc/machin/bidule en modification puis … <note tip>Configuration particulière ? Expliquez les détails utiles de configuration (il n'est pas nécessaire de faire un copier-coller de la page de manuel ; les grandes lignes suffisent avec éventuellement un lien dans les références). </note> ===== Utilisation===== Lancez l'application via le tableau de bord (Unity) ou via le terminal (toutes versions ou variantes d'Ubuntu) avec la commande suivante : <code>machin-chose</code> <note tip>Raccourcis intéressants ? Fonctions cachées ? Expliquez le fonctionnement général de ce que vous présentez (là non plus, il n'est pas nécessaire de copier-coller la page de manuel). </note> ===== Désinstallation ===== Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés. ===== Voir aussi ===== * (en) Site officiel du logiciel Bidule * (fr, en) Manuel d'utilisation du logiciel Bidule * Discussion « J'ai un soucis avec le logiciel Bidule » sur le forum Ubuntu-fr —- <note help>Si vous considérez que votre contribution à la page de documentation est significative et/ou que vous souhaitez pouvoir être contacté par les lecteurs, vous avez la possibilité de la signer en ajoutant votre identifiant dans la ligne ci-dessous. Vous pouvez aussi vous abonner aux modifications de la page en cliquant sur "S'abonner à la page" (menu en haut à gauche). </note>
Contributeurs principaux : votre nom ou pseudonyme, nom ou pseudo autre. <note help>Si vous vous êtes basé sur un document existant pour écrire votre article, citez la source originale ! Ceci est indispensable afin de respecter les droits d'auteur.</note> Basé sur « Titre original de l'article » par Auteur Original. —[ Modèle à copier/coller ]— <file text modèle_application>

—- ====== Nom affiché de l'application ====== [DESCRIPTION DE L'APPLICATION] ===== Pré-requis ===== * Disposer des droits d'administration. * Disposer d'une connexion à Internet configurée et activée. * Avoir activé l'accès au dépôt Partenaires de Canonical. * Avoir installé le paquet paquet 1. [AUTRES PRÉ-REQUIS NÉCESSAIRES] ===== Installation ===== Pour installer ce logiciel, il suffit d'installer les paquets paquet1 paquet2 paquet3. Puis, … ===== Configuration ===== Tout d'abord, ouvrez le fichier /truc/machin/bidule en modification puis … ===== Utilisation ===== Lancez l'application via le tableau de bord (Unity) ou via le terminal (toutes versions d'Ubuntu) avec la commande suivante : <code>machin-chose</code> ===== Désinstallation ===== Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés. ===== Voir aussi ===== * (en) Site officiel du logiciel * (fr) Site de la communauté francophone du logiciel Bidule * Discussion « J'ai un soucis avec le logiciel Bidule » sur le forum Ubuntu-fr —- Contributeurs principaux : votre nom ou pseudonyme, nom ou pseudo autre. Basé sur « Titre original de l'article » par Auteur Original. </file>


1)
versions d'Ubuntu LTS pour lesquelles la page est valide
2)
au moins un, à choisir parmi les tags existants
  • wiki/modeles/application.1464904634.txt.gz
  • Dernière modification: Le 02/06/2016, 23:57
  • par temps