var etapes = new Array(2, 34, 61, 86, 111, 134, 158, 181, 204, 227, 250, 272, 295, 317, 340, 
362, 385, 407, 430, 452, 474, 496, 519, 541, 563, 585, 608, 630, 652, 674, 696, 719, 741, 
763, 785, 807, 829, 851, 873, 895, 918, 940, 962, 984, 1006, 1028, 1050, 1072, 1094, 1116, 
1138, 1160, 1182, 1204, 1226, 1248, 1270, 1292, 1314, 1336, 1358, 1380, 1402, 1424, 1446, 
1468, 1490, 1512, 1534, 1556, 1578, 1600, 1622, 1644, 1666, 1688, 1710, 1732, 1754, 1776, 
1798, 1820, 1842, 1864, 1886, 1908, 1930, 1952, 1974, 1996, 2018, 2040, 2062, 2084, 2106, 
2128, 2149, 2171, 2193, 2215, 2237, 2259, 2281, 2303, 2325, 2347, 2369, 2391, 2413, 2435, 
2457, 2479, 2501, 2523, 2544, 2566, 2588, 2610, 2632, 2654, 2676, 2698, 2720, 2742, 2764, 
2786, 2808, 2830, 2852, 2873, 2895, 2917, 2939, 2961, 2983, 3005, 3027, 3049, 3071, 3093, 
3115, 3137, 3158, 3180, 3202, 3224, 3246, 3268, 3290, 3312, 3334, 3356, 3378, 3400, 3421, 
3443, 3465, 3487, 3509, 3531, 3553, 3575, 3597, 3619, 3641, 3662, 3684, 3706, 3728, 3750, 
3772, 3794, 3816, 3838, 3860, 3882, 3903, 3925, 3947, 3969, 3991, 4013, 4035, 4057, 4079, 
4101, 4123, 4144, 4166, 4188, 4210, 4232, 4254, 4276, 4298, 4320, 4342, 4363, 4385, 4407, 
4429, 4451, 4473, 4495, 4517, 4539, 4561, 4583, 4604, 4626, 4648, 4670, 4692, 4714, 4736, 
4758, 4780, 4801, 4823, 4845, 4867, 4889, 4911, 4933, 4955, 4977, 4999, 5020, 5042, 5064, 
5086, 5108, 5130, 5152, 5174, 5196, 5218, 5239, 5261, 5283, 5305, 5327, 5349, 5371, 5393, 
5415, 5436, 5458, 5480, 5502, 5524, 5546, 5568, 5590, 5612, 5633, 5655, 5677, 5699, 5721, 
5743, 5765, 5787, 5809, 5830, 5852, 5874, 5896, 5918, 5940, 5962, 5984, 6006, 6027, 6049, 
6071, 6093, 6115, 6137, 6159, 6181, 6203, 6224, 6246, 6268, 6290, 6312, 6334, 6356, 6378, 
6400, 6421, 6443, 6465, 6487, 6509, 6531, 6553, 6575, 6597, 6618, 6640, 6662, 6684, 6706, 
6728, 6750, 6772, 6794, 6815, 6837, 6859, 6881, 6903, 6925, 6947, 6969, 6990, 7012, 7034, 
7056, 7078, 7100, 7122, 7144, 7166, 7187, 7209, 7231, 7253, 7275, 7297, 7319, 7341, 7363, 
7384, 7406, 7428, 7450, 7472, 7494, 7516, 7538, 7559, 7581, 7603, 7625, 7647, 7669, 7691, 
7713, 7734, 7756, 7778, 7800, 7822, 7844, 7866, 7888, 7910, 7931, 7953, 7975, 7997, 8019, 
8041, 8063, 8085, 8106, 8128, 8150, 8172, 8194, 8216, 8238, 8260, 8282, 8303, 8325, 8347, 
8369, 8391, 8413, 8435, 8457, 8478, 8500, 8522, 8544, 8566, 8588, 8610, 8632, 8653, 8675, 
8697, 8719, 8741, 8763, 8785, 8807, 8828, 8850, 8872, 8894, 8916, 8938, 8960, 8982, 9003, 
9025, 9047, 9069, 9091, 9113, 9135, 9157, 9179, 9200, 9222, 9244, 9266, 9288, 9310, 9332, 
9354, 9375, 9397, 9419, 9441, 9463, 9485, 9507, 9529, 9550, 9572, 9594, 9616, 9638, 9660, 
9682, 9704, 9725, 9747, 9769, 9791, 9813, 9835, 9857, 9879, 9900, 9922, 9944, 9966, 9988,
10010, 10032, 10054, 10075, 10097)

var etapesMax = function(m) {
	var n = Math.floor(m)
	if (n > etapes[etapes.length-1] || n < 61) {
		return
	}
	var t= 0, etp=0;
	for(var i=0; i< etapes.length && etapes[i] < n; i++) {
		t = i
	}
	var k
	//var sa = ""
	for (var p = n; p > 60 ; ) {
		//sa += etapes[t]+" "+p+" "
		u = p- parseInt(etapes[t])+1
		k = t-1
		d=Math.ceil(u/k);
		etp += d
		t--
		p -= d*k
		//sa += k+" "+d+" "+etp+" \n"
	}
	//alert(etp+"\n"+sa)
	return etp
}

var etpCherche = function() {
	var n = parseInt(document.fetp.n.value)
	var etp = etapesMax(n)
	var s = "En r=" + etp + " étapes au plus, T<sup>r</sup>(N) a 60 chiffres ou moins.<br />"
	document.getElementById("IDetp").innerHTML=s
}

var etpEfface = function() {
        document.fetp.n.value=""
	document.getElementById("IDetp").innerHTML=""
}

var etpHasard = function() {
	var a = Math.floor(61+(etapes[etapes.length-1]-61)*Math.random())
	document.getElementById("IDetp").innerHTML=""
        document.fetp.n.value=a
	etpCherche()
}


