Respuestas para Pensar

Un complemento para el Blog del querido profesor Nestor del Prado en Cubadebate

  • Inicio
  • Explicaciones y Respuestas
  • Retos y Soluciones
  • ¿Cómo lo hice?
  • Programadores
  • Curiosidades
  • Acerca de

Código Visual Basic (Excel) para descifrar suma de cinco números (diferentes) oblongos que suman 540

19 agosto, 2019 by yosue1970 Leave a Comment

Yosue dijo:

Esta vez utilizamos Excel y Visual Basic para Aplicaciones por ser sencilla la búsqueda y no requiere mucho tiempo…

Public Sub Oblongo540()

  Dim a(17), S1(16807), S2(16807), S3(16807), S4(16807), S5(16807), S6(16807)

  t = 0

  a(0) = 6: a(1) = 56: a(2) = 156: a(3) = 0: a(4) = 20: a(5) = 30: a(6) = 90: a(7) = 110

  a(8) = 210: a(9) = 240: a(10) = 2: a(11) = 12: a(12) = 42: a(13) = 72: a(14) = 132: a(15) = 182

  a(16) = 272

  Rem primero

  For i = 0 To 16

    For j = 0 To 16

      For k = 0 To 16

        For l = 0 To 16

          For m = 0 To 16

            n = a(i) + a(j) + a(k) + a(l) + a(m)

            DoEvents

            If n = 540 Then

              S1(t) = a(i)

              S2(t) = a(j)

              S3(t) = a(k)

              S4(t) = a(l)

              S5(t) = a(m)

              If ((S1(t) <> S2(t)) And (S1(t) <> S3(t)) And (S1(t) <> S4(t)) And (S1(t) <> S5(t)) And (S2(t) <> S3(t)) And (S2(t) <> S4(t)) And (S2(t) <> S5(t)) And (S3(t) <> S4(t)) And (S3(t) <> S5(t)) And (S4(t) <> S5(t))) Then

                t = t + 1

                S6(t – 1) = (S1(t – 1) + 1) * (S2(t – 1) + 1) * (S3(t – 1) + 1) * (S4(t – 1) + 1) * (S5(t – 1) + 1)

                Dist = True

                For Z = 0 To t – 2

                  If (S6(Z) = S6(t – 1)) Then

                    t = t – 1

                    Dist = False

                    Exit For

                  End If

                Next Z

                If Dist Then

                  Rem En la Hoja 3 las soluciones

                  Hoja3.Cells(t + 1, 1).Value = S1(t – 1)

                  Hoja3.Cells(t + 1, 2).Value = S2(t – 1)

                  Hoja3.Cells(t + 1, 3).Value = S3(t – 1)

                  Hoja3.Cells(t + 1, 4).Value = S4(t – 1)

                  Hoja3.Cells(t + 1, 5).Value = S5(t – 1)

                End If

              End If

            End If

          Next m

        Next l

      Next k

    Next j

  Next i

End Sub

 


Easy, verdad.

Filed Under: Programadores

Deja un comentario Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Últimas Entradas

  • Respuesta Números Malvados y Odiosos. 26 septiembre, 2019
  • Función recursiva para obtener números capicúas 3 septiembre, 2019
  • Código Visual Basic (Excel) para descifrar suma de cinco números (diferentes) oblongos que suman 540 19 agosto, 2019
  • Si la suma de cinco números oblongos menores de 300 es igual a 540 ¿Cuáles son esos cinco números? 15 agosto, 2019
  • Halle cinco números oblongos cuya suma sea igual a 99. 12 agosto, 2019

Comentarios

  • yosue1970 en Si la suma de cinco números oblongos menores de 300 es igual a 540 ¿Cuáles son esos cinco números?
  • Nestor del Prado Arza en Si la suma de cinco números oblongos menores de 300 es igual a 540 ¿Cuáles son esos cinco números?
  • yosue1970 en Respuesta a “Ejes rotando y tú calculando; y además completar refranes”
  • cam en Respuesta a “Ejes rotando y tú calculando; y además completar refranes”

Encuestas

¿Cómo es mi sitio?

Ver resultados

Cargando ... Cargando ...

Acceso al Sitio

  • Registrarse
  • Acceder
  • RSS de las entradas
  • RSS de los comentarios
  • WordPress.org
  • Inicio
  • Explicaciones y Respuestas
  • Retos y Soluciones
  • ¿Cómo lo hice?
  • Programadores
  • Curiosidades
  • Acerca de

Copyright © 2019 · Enterprise Pro Theme on Genesis Framework · WordPress · Log in