Autor Tema: Problemas empezando curso bases de la programación nivel i  (Leído 3254 veces)

jnkpgc

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 1
    • Ver Perfil
Hola a todos, debido a la situación actual y al interés que siempre ha despertado en mí, he decidido empezar a introducirme en el mundo de la programación, con el simple interés de ver hasta donde llego, ya que siempre me ha parecido algo excesivamente complejo.

Pues bien, he empezado con el curso "Bases de la programación Nivel I. Pseudocódigo" y con la teoría bastante bien, aunque al llegar a los primeros ejercicios resueltos se han venido encima todos los fantasmas de las matemáticas, ya que llevo bastantes años sin cursarlas y, aunque siempre se me han dado relativamente bien (no tengo estudios avanzados, ni mucho menos), aquí ando algo perdido, en el problema:

Objetivo: Buscar el valor de x que siendo un número real positivo hace f(x) = 5x2 - 3x - 4 igual a cero de acuerdo con estas reglas.
 
1.   Se admite la desviación de f(x) respecto al valor pedido de ± 0'01.
2.   Hemos perdido toda nuestra memoria: no se admite el uso de fórmulas o estrategias de resolución gráficas o analíticas: debemos basarnos en un tanteo puro ordenado (no aleatorio) y constante.
3.   Se sabe que la solución está entre 1 y 10, debiendo comenzar la búsqueda por uno de estos dos extremos.

Logro comprender hasta el momento de exponer los datos, pero luego llega el planteamiento inicial y no entiendo la fórmula de iteraciones/enteros en el que las iteraciones son 10000, y a partir de ahí no comprendo el resto de procedimiento.

Supongo que tantos años sin dar matemáticas influyen y también querría preguntar si vosotros creéis que deba prepararme algo relacionado con éstas para continuar. La verdad que los siguientes ejercicios resueltos me cuesta menos comprenderlos, aunque tampoco los he analizado a fondo, ya que soy de estrés fácil y quiero ir paso a paso.

Por último añadir que he buscado por el foro para ver si alguien tenía este problema en concreto, pero la verdad es que no he encontrado nada y pido mil disculpas, que si ya hay un tema relacionado con este, redireccionarme directamente a él.

Muchas gracias, saludos.
« Última modificación: 02 de Septiembre 2014, 18:46 por Alex Rodríguez »

César Krall

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2078
  • No vales por lo que dices, sino por lo que haces
    • Ver Perfil
    • aprenderaprogramar.com
Re:Problemas empezando.
« Respuesta #1 en: 03 de Marzo 2014, 12:45 »
Hola, la idea es que según nos dice el problema "se sabe que la solución está entre 1 y 10" y que a partir de ahí vamos a intentar encontrar la solución haciendo pruebas. Podemos hacer miles de pruebas (porque un ordenador tiene capacidad para ello) pero no infinitas pruebas, porque en ese caso el ordenador se podría quedar colgado.

En el ejemplo se dice, "vamos a limitar el número de pruebas a 10000 pruebas" (podríamos haber cogido otro valor, 5000 ó 20000, pero en el ejemplo cogemos 10000) y a partir de aquí dice: si la solución está entre 1 y 10 es que tengo que buscar en el 1, 2, 3, 4, 5, 6, 7, 8, 9 que son 9 enteros (digamos que llegaríamos justo hasta 10). Así se llega a que aproximadamente resultan 1111 iteraciones a realizar en cada entero, por ejemplo entre el 1 y el 2 tendríamos que hacer 1111 pruebas. Redondeando se deciden hacer 1000 pruebas, lo que supone que en cada prueba se sumará 0,001 al número probado anteriormente. Por ejemplo:

prueba 1 con 1,000
prueba 2 con 1,001
prueba 3 con 1,002
prueba 4 con 1,003
...
...
así hasta encontrar la solución o terminar el número máximo de pruebas previstas (no podemos hacerlo a mano porque nos llevaría mucho tiempo, pero sí podemos imaginarnos cómo va el proceso).

Por otro lado te recomiendo que te mires esto para tener más referencias:

https://www.aprenderaprogramar.com/foros/index.php?topic=649

https://www.aprenderaprogramar.com/foros/index.php?topic=172

Saludos.

Responsable de departamento de producción aprenderaprogramar.com

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".