Algoritmos sencillos para los números

 

descarga

Hay veces que el ponernos a pensar (divagar) en muchas cosas mientras estamos en una fila, mirando el techo del cuarto, o vamos caminando por la calle; nos permite encontrar las soluciones o nuevas formas de ver las cosas de las que en ocasiones tenemos el efecto túnel. Algunas cosas podrán ser de importancia, algunas no; lo principal y más importante es que ejercitamos nuestras mentes y fortalecemos nuestros lazos neuronales, lo cual agradecemos cuando estemos en la tercera edad.

A continuación describiré algunos algoritmos que llegué a pensar cuando a penas estaba entrando a la universidad y me entretenía mucho con ejercicios mentales.

 

Conocer la suma de todos los números del 1 a N:

Cuenta la anécdota del matemático Gauss, que descubrió (se llamaó progresión aritmética) que sumando 1 mas N y multiplicando por N / 2 nos da el resultado de la suma de cada uno de esos números. Por ejemplo

La suma de 1 a 6 es igual a 21:

  • 1 + 6 = 7
  • 6 / 2 = 3
  • 7 * 3 = 21

La suma de 1 a 10 es igual a 55

  • 1 + 10 = 11
  • 10 / 2 = 5
  • 11 * 5 = 55

La suma de 1 a 9 = 45

  • 1 + 9 = 10
  • 9 / 2 = 4.5
  • 10 * 4.5 = 45

 

Un método alternativo es el siguiente:

Para números pares: La suma de 1 a N = N * (N / 2 + N / 2)

La suma de 1 a 6 es igual a 21:

  • 6 / 2 = 3
  • 6 * 3 = 18
  • 18 + 3 = 21

La suma de 1 a 10 es igual a 55

  • 10 / 2 = 5
  • 10 * 5 = 50
  • 50 + 5 = 55

Para números nones: La suma de 1 a P = P * ((P – 1) / 2) + P

La suma de 1 a 9 = 45

  • 9 – 1 = 8
  • 8 / 2 = 4
  • 9 * 4 = 36
  • 36 + 9 = 45

Claro, el método del matemático Gauss es mas simple y surte efecto para pares y nones, aunque en éste método se evitan lsa decimales, y siempre es bueno conocer al menos un método alterno.

 

Intercambiar el contenido de dos variable numéricas sin utilizar una tercera

Siendo que A y B tiene valores numéricos, se requiere que A tenga el valor de B y B el de A.

Método tradicional:

  • C = A
  • A = B
  • B = C

Sin utilizar una tercera variable:

  • B = A + B
  • A = B – A
  • B = B – A

Ejemplo

A = 13, B = 34

  • B = A + B (47)
  • A = B – A (47 – 13) A = 34
  • B = B – A (47 – 34) B = 13

Es por ello que cuando es mi turno en la fila de las tortillas, olvido cuánto iba a comprar.

Author: angelinux

Desarrollador de páginas web desde el año 2000 y con experiencia en programación de sistemas para empresas desde el 2008; cofundador de CONSoluciones; autor del blog de software libre “Angelinux-slack”; docente en maestría en UPAV y fundador de la distribución Linux Falco que está en desarrollo para la Universidad Veracruzana.
Además, ponente, organizador de congreso, laborista social, impartidor de cursos de programación y servidores Linux, webmaster, y ex invitado en programa de televisión.

Deja un comentario