Autor Tema: ejercicio resolver ecuación de grado dos mediante iteraciones (CU00111A)  (Leído 12423 veces)

Mario R. Rancel

  • Administrador
  • Experto
  • ********
  • APR2.COM
  • Mensajes: 1978
    • Ver Perfil
F(x) = 5x² – 3x – 4

F(1,2434) = 5.1,2434² – 3.1,2434 – 4 = 5 * (1,5460) – 3,7302 – 4 = 0,0000178

Por otro lado, el ejercicio no está bien resuelto. Tienes que revisarlo. Te explico lo que tienes que hacer, si te quedan dudas escribe una consulta en el foro.

El ejercicio lo que nos pregunta es qué valor de x hace que la función dé un resultado igual aproximadamente a cero (en concreto sería válido cualquier resultado dentro del margen de error admitido que va desde -0,01 hasta + 0,01). En realidad el símbolo nos da igual. Para eliminar el símbolo negativo usamos el símbolo de valor absoluto. Así |-3| representa el valor absoluto del número, que es el mismo número pero sin el signo, es decir, |-3| = 3. De la misma forma |-4,2832| = 4,2832

Ahora tienes que situarte en el esquema de la página 46 e ir paso por paso:

Inicio: empezamos

Definir f(x): para nosotros f(x) es F(x) = 5x² – 3x – 4

Definir parámetros: para nosotros el error admisible e nos lo dice el ejercicio es 0,01; el límite inferior es 1; el límite superior es 10. Es decir, sabemos que la solución va a estar entre 1 y 10, pero no sabemos cuál es (en realidad sí podemos sacar la solución con una fórmula matemática, pero no se trata de eso: se trata de obtener una solución haciendo sucesivas pruebas hasta encontrarla). El valor incremental es cuánto vamos a sumar o restar en cada repetición de la búsqueda de la solución: podemos coger un valor por ejemplo de 0,05 (aunque tú para el ejercicio debes usar 0,001).

Ahora empezamos el proceso desde el número de partida. Supongamos que fuera el 3. Calculamos f(3) y resulta 32.

Ahora estamos en el punto del esquema de “Evaluar si el resultado obtenido en valor absoluto es menor que 0,01. Como 32 no es menor que 0,01 significa que no hemos llegado a la solución y tenemos que seguir probando excepto si hemos superado el número máximo de pruebas que hayamos establecido (en el ejercicio son 9000 pruebas). Como no hemos superado el límite máximo, volvemos a repetir el cálculo con otro valor.

 Sabemos que f(1) es -2 y que f(10) es 466. Si en 3 estoy en 32 y en 1 estoy en -2 significa que en algún punto intermedio se va a encontrar el valor de x que hace la ecuación igual a cero. Por tanto nuestro próximo valor de prueba será 3 – 0,05 = 2,95.

Ahora probamos a calcular el resultado con 2,95 . F(2,95 ) = 30,66. Es más próximo a cero, pero todavía no es cero. Tenemos que volver a probar ahora con 2,95 – 0,05 = 2,90

F(2,90) = 29,35. Es más próximo a cero, pero todavía no es cero. Tenemos que volver a probar ahora con 2,95 – 0,05 = 2,90

¿Probamos con 2,90? Seguramente se quede lejos todavía de cero. Vamos a suponer que hubiéramos probado 2.90, 2.85, 2.80, 2.75, 2.70, 2.65, 2.60. 2.55, 2.50, 2.45, 2.40, 2.35, 2.30, 2.25, 2.20

F(2.20) = 13,60. Es más próximo a cero pero todavía no es cero ni un valor con una diferencia menor a 0,01 respecto a cero.

Seguimos probando. Suponemos que ya hubiéramos probado 2.15, 2.10, 2.05, 2.00, 1.95, … 1.40

F(1.40) = 1,6. Es más próximo a cero pero todavía no nos vale porque es mayor que 0,01.

Suponemos que hemos probado 1.35, 1.30, 1.25. 1.20, 1.15, 1.10

F(1.10) = -1.25. En este caso el signo ha cambiado ¡¡¡Significa que ya nos hemos pasado!!! La solución tiene que estar entre 1.40 y entre 1.10.

Probamos F(1.15 ) = -0,8375 ; es mayor que 0,01 por lo que no nos vale

Probamos F(1.20) = -0,4; es mayor que 0,01 por lo que no nos vale

Probamos F(1.25) = 0,0625; la solución estará próxima a 1.25. Si en vez de usar el valor incremental 0,05 usas 0,001 obtendrás el resultado con bastante precisión.
« Última modificación: 12 de Febrero 2015, 08:06 por Alex Rodríguez »

Mario R. Rancel

  • Administrador
  • Experto
  • ********
  • APR2.COM
  • Mensajes: 1978
    • Ver Perfil
Re:ejercicio resolver ecuación mediante iteraciones
« Respuesta #1 en: 13 de Marzo 2012, 08:38 »
el ultimo ejercicio me pide que encuentre el valor de F(x) sin sobrepasar los margenes de error -0,01 y +0,01
despues de muchos calculos creo haber encontrado los resultados.

a 1.25 le e restado 0.001 dandome como resultado 1.249

aplicando la formula el resultado me da F(0,05)30049999999989 lo cual sobrepasa los margenes de error
decidi restar 0.004 dandome como resultado 1.245

aplicando la formula el resultado me da F(0.01)51249999999994 este resultado si no estoy en lo erroneo es correcto ya que esta en el margen de error permitido +0.01

decidi seguir haciendo el ejercicio y a 1.245 le reste 0.003 quedando en 1.242
aplicando la formula el resultado de F(-0.01)31800000000002

creo q los dos ultimos resultados estan dentro del margen de error despues de a ver probado varias formulas espero que este correcto y si no pues seguire intentando entenderlo.


El resultado quizás es correcto, pero no está bien expresado.

F(-0.01)31800000000002 no es una expresión correcta.

F(-0.01) = - 3,9695 sí es una expresión correcta que significa, "el resultado de la ecuación al introducir -0,01 como valor de x es -3,9695.

Hay que corregir las expresiones incorrectas y escribirlas correctamente.

alfonso1

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 9
    • Ver Perfil
Re:ejercicio resolver ecuación mediante iteraciones
« Respuesta #2 en: 13 de Marzo 2012, 15:04 »
Hola. si exprese mal el ejercicio

lo que hice es

F(1.242) = 5*1.242² - 3*1.242 - 4
F(1.242) = 5*1.542564 - 3.726 - 4
F(1.242) = 7.71282 - 3.726 - 4
F(1.242) = -0.0131800000000002

si estoy en lo correcto F(1.242) = -0.0131800000000002
esto me dise que estoy en el margen de error permitido creo

lo que no entiendo es por que F(-0.01) = - 3,9695 sí es una expresión correcta que significa, "el resultado de la ecuación al introducir -0,01 como valor de x es -3,9695.
no se si estoy un poco desorientado o algo asi pero jeje espero que este bien jeje.
« Última modificación: 13 de Marzo 2012, 16:48 por alfonso1 »

César Krall

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2078
  • No vales por lo que dices, sino por lo que haces
    • Ver Perfil
    • aprenderaprogramar.com
Re:ejercicio resolver ecuación mediante iteraciones
« Respuesta #3 en: 13 de Marzo 2012, 19:45 »
Hola, si como leo más arriba "margen de error admitido que va desde -0,01 hasta + 0,01"

-0,01318 está fuera del margen de error porque 0,01318 está fuera del intervalo.

En cambio si se hace f(1.243) = -0,003755 sí estaríamos en un resultado dentro del margen de error permitido. Saludos.
Responsable de departamento de producción aprenderaprogramar.com

Papipanchi

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 38
    • Ver Perfil
Re:ejercicio resolver ecuación mediante iteraciones (CU00111A)
« Respuesta #4 en: 05 de Febrero 2015, 17:39 »
Buenas tardes.
Buscando en algún foro algo referente al tema de estrategias de resolución, he visto de casualidad este tema en el que se resuelve el ejercicio CU00111A y me surgen varias preguntas ya que me ha extrañado ver ejercicios resueltos por varios miembros de los foros y que a mi entender no había que resolver ya que en este caso, creo yo, el resultado no es la prioridad de dicho ejercicio y me gustaría que me contestaseis al respecto.

El ejercicio no consiste en que sepamos como plantear el problema para finalmente llegar a un procedimiento, método, fórmula, etc. que nos dé el resultado con solo indicarle los datos?

No es en este caso irrelevante el resultado puesto que lo estamos calculando como diríamos "a la cuenta de la vieja" y lo importante es que nos quedemos con la idea de como plantear un problema de cara a programarlo?

Lo importante, desde mi punto de vista y desde mi ignorancia, es que vayamos aprendiendo los pasos a seguir para poder plantear un problema con iteración para búsqueda de soluciones y no creo que se deba divagar intentando buscar la solución, sino centrarse en buscar la forma de programar una respuesta que nos dé el resultado a dicho problema, no es asi?

En fin, no se si estoy equivocado, pero me ha extrañado mucho que las respuestas a las preguntas de los foros se centren en explicar como ir probando para calcular el resultado.

Decir que soy totalmente novato en el tema de programación y que hace poco que comencé el curso y no es mi intención para nada rectificar a nadie, solo que viendo de donde venían las respuestas me ha extrañado bastante, de todas formas si he dicho algo que pueda molestar a alguien pido perdón de antemano y eso si, me gustaría que me contestaseis si mi razonamiento es correcto o no.

Un saludo. 
« Última modificación: 06 de Febrero 2015, 09:00 por Mario R. Rancel »

Mario R. Rancel

  • Administrador
  • Experto
  • ********
  • APR2.COM
  • Mensajes: 1978
    • Ver Perfil
Re:ejercicio resolver ecuación mediante iteraciones (CU00111A)
« Respuesta #5 en: 06 de Febrero 2015, 09:11 »
Hola Papichanchi, efectivamente el ejercicio tiene por finalidad aprender a plantear el problema con un punto de vista "general" con vistas a determinar un método. El interés de obtener resultados concretos por tanto es relativo, como bien dices lo importante será la idea que hay detrás, no los cálculos concretos. El interés de resolver el problema con datos concretos es precisamente probar el método. Supongamos que defines un algoritmo o técnica para resolver un problema: ¿cómo determinar si es correcto? Una forma para hacerlo es precisamente probándolo a mano. Si en las pruebas a mano (como tú dices "con la cuenta de la vieja") falla, podrás detectar errores en el algoritmo y corregirlos. Si en las pruebas a mano es correcto, entonces puedes pasar a programarlo en ordenador. Una idea interesante de cara a la programación es "no podrás programar aquello que no sepas hacer o definir". Esto refleja que si quieres hacer por ejemplo un programa que obtenga el valor de x que hace cero una ecuación cuadrática del tipo ax² + bx + c = 0, debes saber los pasos exactos a dar para poder programarlo. En resumen, lo importante no son los cálculos concretos sino el método (la algoritmia), pero para determinar el método en muchas ocasiones es de interés plantear casos con datos concretos. Saludos.

Papipanchi

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 38
    • Ver Perfil
Re:ejercicio resolver ecuación mediante iteraciones (CU00111A)
« Respuesta #6 en: 06 de Febrero 2015, 20:21 »
Buenas tardes Mario, gracias por contestar a mis opiniones, lo que yo quiero decir es lo siguiente.

Tu dices "El interés de resolver el problema con datos concretos es precisamente PROBAR EL MÉTODO", pero realmente no se está probando ningún método dándole valores a la x en una formula ya existente, como mucho, a base de darle múltiples valores a la x, podemos recabar información para fijar las reglas a la hora de definir el método, como por ejemplo el intervalo de búsqueda entre 1 y 10 para que no sea muy largo, o la desviación de 0,01, etc.

Una vez fijadas las reglas y definido el método con los pasos exactos a dar para poder programarlo, hay que determinar si es correcto y como tu dices "Una forma para hacerlo es precisamente probándolo a mano", pero estaríamos probando el método con sus reglas, no una formula,¿Entiendes lo que quiero llegar a decir?

Vaya tela como le doy vueltas al coco, estoy que me mareo!!!!  :o :o :o :o :o :o :o


Mario R. Rancel

  • Administrador
  • Experto
  • ********
  • APR2.COM
  • Mensajes: 1978
    • Ver Perfil
Re:ejercicio resolver ecuación mediante iteraciones (CU00111A)
« Respuesta #7 en: 07 de Febrero 2015, 23:36 »
Hola, creo que la cuestión está en que según enfoques las cosas, obtendrás una visión u otra. Si consideras que le estás dando valores a la x en una fórmula ya existente, pues eso es lo que verás. Si lo enfocas desde el punto de vista de que antes de darle valores a la x has planteado un método para resolver fórmulas de tipo ax2 + bx + c = 0, que antes de probar valores has decidido por qué valor debes empezar a probar, que antes de darle valores a la x has decidido cuánto debe incrementarse la x en cada repetición, y que has decidido una serie de factores que puedes aplicar a otras ecuaciones, a través de lo cual defines un método repetible, que puedes aplicar no a esta ecuación sino a cualquiera, con este enfoque, se podrá considerar que estamos probando un método.

El fondo de la cuestión es probar el método, aplicar el método sobre una fórmula es sólo un medio, una prueba, que trata de determinar si el método es válido y responde a las suposiciones que se han  hecho sobre él, o por el contrario, el método no alcanza los objetivos que se suponían que iba a alcanzar. El método puede ser descrito de diferentes maneras (por ejemplo con un esquema o diagrama de flujo). Esa definición es lo que se discute y prueba (por cierto, que se prueba sólo a forma de ejemplo, ya que la ecuación de segundo grado tiene un método conocido de resolución directa y exacta, pero eso no es de lo que se trata...). Saludos.

Papipanchi

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 38
    • Ver Perfil
Re:ejercicio resolver ecuación mediante iteraciones (CU00111A)
« Respuesta #8 en: 08 de Febrero 2015, 18:31 »
Hola de nuevo Mario.

Hasta ahora no había reparado en que el método servía para cualquier ecuación de este tipo, de ahí mi incomprensión del porque de resolver la ecuación a mano.

Ahora entiendo perfectamente el porque de tu explicación del 12/03 de 2012, en la que vas enumerando cada uno de los pasos del método y a su vez dándole valores reales, hasta conseguir el valor buscado.

Esto, aunque no es el momento, también se podría hacer aplicando este mismo método a otra ecuación distinta del mismo tipo para ver si nos da el resultado esperado, no es así?

Bueno, creo que por el momento he comprendido todo lo que tenía que comprender.

Gracias de nuevo por tu paciencia y perdona mi insistencia en el tema, esto sera cosa de la edad  ;D ;D ;D ;D ;D ;D

Un saludo.

Mario R. Rancel

  • Administrador
  • Experto
  • ********
  • APR2.COM
  • Mensajes: 1978
    • Ver Perfil
Re:ejercicio resolver ecuación mediante iteraciones (CU00111A)
« Respuesta #9 en: 08 de Febrero 2015, 19:15 »
Citar
Esto, aunque no es el momento, también se podría hacer aplicando este mismo método a otra ecuación distinta del mismo tipo para ver si nos da el resultado esperado, no es así?

Exactamente, esa es la idea que hay detrás de todo esto. Saludos.

Voy a poner otro ejemplo: supongamos que tratamos de saber qué solución hay para la ecuación 3*x = 6,25
Aquí es fácil obtener la solución directamente (x=6,25/3 = 2,08333) pero tal y como plantea el ejercicio de la página 45, vamos a suponer que vamos a resolverlo por tanteo, es decir, haciendo pruebas, y que sabemos que la solución está entre 2 y 3.

El error admisible sería la desviación del resultado exacto buscado máxima que admitimos para dar un valor de x por bueno como solución. No se aplica en la ecuación, sino que lo usamos para evaluar si el resultado es el buscado o no. Supongamos que el error admisible es +-0,01 igual que en el ejemplo. Esto significa que en cuanto encontráramos un valor de x que nos devuelva 6,24 (-0,01) ó 6,26 (+0,01) ya diríamos que hemos encontrado solución. En el ejercicio de la página 45 como el resultado buscado es cero, se da por bueno un valor de x desde que nos devuelva un resultado entre -0,01 y +0,01.
Ahora suponiendo un intervalo de búsqueda 0,001 empezaríamos las pruebas, supongamos que partimos de 2:
Primera prueba: 3*2= 6 y buscamos 6,25 +-error admisible, es decir entre 6,24 y 6,26 por tanto 2 no es una solución admisible.
Segunda prueba: 3*2,001 = 6,003 tampoco está entre 6,24 y 6,26 por tanto 2,001 no es una solución admisible
Tercera prueba: 3*2,002 = ...
Cuarta prueba: 3*2,003 = ...

Así seguiríamos haciendo pruebas. Para hacerlo más llevadero, podemos usar una hoja excel que nos sirva de simulación donde en una columna tenemos siempre 3 y en la otra columna los valores a multiplicar (2; 2,001; 2,002; 2,003; ... ) y en otra columna los resultados obtenidos.

Siguiendo las pruebas tras ochenta pruebas llegaríamos a 3*2,080 = 6,24 ; como este resultado tiene un error de -0,01 respecto al buscado 0,25 y ese error está dentro de lo admisible, lo daríamos por bueno y diríamos que hemos llegado a la solución x=2,08
« Última modificación: 12 de Octubre 2020, 12:25 por Ogramar »

 

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".