'\nDeseja executar diversas vezes com esse parametros para obter estatisticas? (s/n)\n',
    's', 'n')

if multipleExecutions:
    n = readIntMin('Numero de execucoes do algoritmo: ', 1)
    itCountList = []
    itFitnnesList = []
    itAvgBestFitnessList = []
    didtnMakeIt = 0
    print('\nExecutando...')
    nextPoint = 0
    start = time.time()
    for i in range(n):
        population = []
        for j in range(popSize):
            population.append(BinaryString.newRandom(zero.size))

        [
            population, bestGene, bestFitness, lastFitnessList,
            lastBestGeneIndex, generationCount, avgFitnessList, bestFitnessList
        ] = geneticAlgorithm(population, maxIt, rouletteWheelSelection,
                             crossover2by2, mutate, fitnessCalculation,
                             equalsZero, newFitnessIsBetter)

        if bestFitness != 12:
            didtnMakeIt += 1

        itAvgBestFitnessList.append(
            sum(bestFitnessList) / len(bestFitnessList))
        itFitnnesList.append(bestFitness)
        itCountList.append(generationCount)
if multipleExecutions:
	n = readIntMin('Numero de execucoes do algoritmo: ', 1)
	itCountList = []
	itAvgBestFitnessList = []
	itFitnnesList = []
	bestGeneAmongIts = BinaryString([0,1,0,1])
	bestFitnessAmongIts = float('inf')
	gotToLimitIt = 0
	print('\nExecutando...')
	start = time.time()
	nextPoint = 0
	for i in range(n):	
		population = []
		for j in range(popSize):
			population.append(BinaryString.newRandom(stringSize))

		[population, bestGene, bestFitness, lastFitnessList, lastBestGeneIndex, generationCount, avgFitnessList, bestFitnessList] = geneticAlgorithm(population, maxIt,rouletteWheelSelection, crossover2by2, mutate, populationFitnessCalculation, shouldStop, newFitnessIsBetter, maxItNoImprove)

		itCountList.append(generationCount)
		itFitnnesList.append(bestFitness)
		itAvgBestFitnessList.append(sum(bestFitnessList)/len(bestFitnessList))
		if generationCount >= maxIt:
				gotToLimitIt += 1

		if newFitnessIsBetter(bestFitnessAmongIts, bestFitness):
			bestFitnessAmongIts = bestFitness
			bestGeneAmongIts = bestGene
		
		prct = float(i)/n
		if(prct >= nextPoint):