Solo para aclararte que tu problema si bien de programacion para que *aprendas* a programar.
Lo puedes simplificar si sabes matematicas.
Supon que te piden allar la suma de los numeros imapres. (Caso contrario a lo que te piden)
Entonces puedes representar los numeros impares de la siguiente manera:
Código:
2n - 1 -> Esto es el n-esimo numero impar
s -> Es el resultado de la suma
1 + 3 + 5 + ... + 2n - 1 = s
2n - 1 + 2(n-1) - 1 + 2(n - 2) - 1 + ... + 1 = s +
__________________________________________________________
2n + 2n + 2n + ... + 2n = 2s
^ ^
| n veces sumado 2n |
Entonces esto lo escribos como 2n * n = 2s
Dividimos entre 2 en ambos lados. Y nos queda: n * n = s
Por ultimo solo nos queda saber que n debemos de tomar para un rango.
Supon que empiezas desde 1 hasta m entonces, supon que el limite superior m es tu n-esimo termino:
Código:
2n - 1 = m
n = (m + 1)
-------
2
Entonces solo te quedaría, imprimir n ^ 2 o lo que es lo mismo n * n
Lo que en python 2.x seria:
Código Python:
Ver originalm = int(raw_input("Dame un numero: "))
n = (m + 1) / 2
print "La suma de los numeros impares de 1 a", m, "es:", n * n
¿Puedes hacerlo para los pares?