ALGORITMOS Y SERIES NUMÉRICAS
Comentarios: El resultado del programa es el mismo que el anterior, aunque en esta ocasión no hemos usado arrays. Cuantos más conocimientos tenemos más vías alternativas existen para llegar a un mismo objetivo. Algunas son más válidas que otras y algunas igual de válidas. En este caso, ¿Mejor usar o no usar arrays? Preferimos no pronunciarnos directamente: depende. En general, será preferible no usar arrays cuando se puede prescindir de ellos, igual que es preferible usar dos variables en vez de cuatro. Pero serán las circunstancias las que manden: si por ejemplo usar 4 variables, pudiendo resolver sólo con 2, introduce una facilidad de lectura y comprensión considerable, puede ser conveniente. Si pensáramos en estos programas como parte de programas más amplios, tendríamos que valorar, que en un caso tenemos almacenada una serie de datos (en el array) y en el otro no. Por tanto, si nos hace falta la serie de datos puede que sea conveniente usar el array.
Hay una cierta ambigüedad en lo que decimos y en esas decisiones nos diferenciamos como programadores. Querer usar siempre arrays o querer usar siempre el mismo tipo de bucles es un error: continuamente hay que estar evaluando la situación para tomar decisiones.
Hasta procesos muy sencillos como determinar si un número es par gozan de vías alternativas.
Veamos lo que serían resultados del programa:
n
|
1 + 3 + 5 + ... + n
|
1 * 3 * 5 * ... * n
|
1
|
1
|
1
|
5
|
9
|
15
|
9
|
25
|
945
|
15
|
64
|
2027025
|
19
|
100
|
654729075
|
A poco que nos fijemos comprobamos que los sumatorios son cuadrados perfectos... ¿Casualidad? Veamos más datos:
3 genera un sumatorio igual a 4
7 --> 16
11 --> 36
|
Trataremos de hallar una relación:
n = 3 --> 22
n = 5 --> 32
n = 7 --> 42
|
Expresamos el resultado en función de n:
n = 3 --> (n – 1) 2 --> 1 = ((3 + 1) / 2) – 1 = ((n + 1) / 2) – 1
n = 5 --> (n – 2) 2 --> 2 = ((5 + 1) / 2) – 1 = ((n + 1) / 2) – 1
n = 7 --> (n – 3) 2 --> 3 = ((7 + 1) / 2) – 1 = ((n + 1) / 2) – 1
n = 9 --> (n – 4) 2 --> 4 = ((9 + 1) / 2) – 1 = ((n + 1) / 2) – 1
n = 11 --> (n – 5) 2 --> 5 = ((11 + 1) / 2) – 1 = ((n + 1) / 2) – 1
|
IMÁGENES
COMO PODEMOS VER SUS FUNCIONES
El análisis numérico o cálculo numérico es la rama de las matemáticas que se encarga de diseñar algoritmos para, a través de números y reglas matemáticas simples, simular procesos matemáticos más complejos aplicados a procesos del mundo real.
El análisis numérico cobra especial importancia con la llegada de los ordenadores. Los ordenadores son útiles para cálculos matemáticos extremadamente complejos, pero en última instancia operan con números binarios y operaciones matemáticas simples.
Desde este punto de vista, el análisis numérico proporcionará todo el andamiaje necesario para llevar a cabo todos aquellos procedimientos matemáticos susceptibles de expresarse algorítmicamente, basándose en algoritmos que permitan su simulación o cálculo en procesos más sencillos empleando números.
Definido el error, junto con el error admisible, pasamos al concepto de estabilidad de los algoritmos. Muchas de las operaciones matemáticas pueden llevarse adelante a través de la generación de una serie de números que a su vez alimentan de nuevo el algoritmo (feedback). Esto proporciona un poder de cálculo y refinamiento importantísimo a la máquina que a medida que va completando un ciclo va llegando a la solución. El problema ocurre en determinar hasta cuándo deberá continuar con el ciclo, o si nos estamos alejando de la solución del problema.
Finalmente, otro concepto paralelo al análisis numérico es el de la representación, tanto de los números como de otros conceptos matemáticos como los vectores, polinomios, etc. Por ejemplo, para la representación en ordenadores de números reales, se emplea el concepto de coma flotante que dista mucho del empleado por la matemática convencional.
En general, estos métodos se aplican cuando se necesita un valor numérico como solución a un problema matemático, y los procedimientos "exactos" o "analíticos" (manipulaciones algebraicas, teoría de ecuaciones diferenciales, métodos de integración, etc.) son incapaces de dar una respuesta. Debido a ello, son procedimientos de uso frecuente por físicos e ingenieros, y cuyo desarrollo se ha visto favorecido por la necesidad de éstos de obtener soluciones, aunque la precisión no sea completa. Debe recordarse que la física experimental, por ejemplo, nunca arroja valores exactos sino intervalos que engloban la gran mayoría de resultados experimentales obtenidos, ya que no es habitual que dos medidas del mismo fenómeno arrojen valores exactamente iguales.
EL PROCESO DE SU FUNCIONAMIENTO
Los problemas de secuencias numéricas (llamadas normalmente series, aunque el término no sea muy correcto) son clásicos en las matemáticas recreativas. Se trata normalmente de averiguar cómo continúa una sucesión de números enteros de la que nos dan los primeros términos. Si te gustan este tipo de acertijos te recomiendo la página de Marcia Levitus, que posee una estupenda sección sobre series. También te interesará la Enciclopedia On-Line de las Secuencias de Números Enteros, mantenida por N. J. A. Sloane, de AT&T Research. En este sitio podemos introducir varios términos consecutivos para buscar qué secuencias los contienen. En el momento de escribir esto (marzo de 2004) hay allí más de 92.000 secuencias.
El índice de un término de la secuencia es el número de orden que ocupa. Normalmente se empieza a contar desde el 1, aunque a veces se empieza por el 0. Si la sucesión se llama s, el término de índice n se escribe s(n) o sn. Hay varias formas de definir una secuencia:
- Mediante una regla que nos dice cómo formar un término a partir de los anteriores. El primer o primeros términos pueden ser arbitrarios, dando origen a distintas alternativas de la serie. A estos términos iniciales se les puede llamar semilla.
- Mediante una regla que nos dice cómo formar un término a partir de su índice.
- Mediante una regla que, dado un número, nos permite comprobar si pertenece o no a la serie. Estas series se suelen escribir por orden creciente.
- Algunas series se puede decir que tienen «existencia previa». Por ejemplo 1, 4, 1, 4, 2, 1, 3, 5, 6,... es la secuencia de los dígitos de la raíz cuadrada de 2 (A002193). 31, 28, 31, 30, 31, 30, 31, 31,... es la secuencia de la duración en días de los meses de un año no bisiesto (en este caso es una serie finita, con sólo 12 términos). Otras se construyen a partir de otra secuencia previa.
Aquí hay unas cuantas series para que intentes adivinar cómo continúan y cómo se han construido. Puedes poner un número o varios separados por comas y pulsar el botón «Comprobar» para ver si vas por buen camino. El botón «Más términos» muestra algunos términos adicionales. En algunos casos se puede también conocer un término de índice arbitrario o comprobar si un número cualquiera pertenece a la serie. Para unas pocas series también he preparado pistas. Para que todo esto funcione tienes que tener habilitado JavaScript en tu navegador.
- 1, 1, 2, 4, 7, 11, 18, 36, 65,...
- 1, 4, 9, 61, 52, 63, 94...
- 1, 2, 4, 5, 8, 9, 10 13, 16, 17,...
- 2, 3, 5, 7, 11, 13, 14, 16, 17, 20,...
- 4, 6, 9, 10, 14, 15, 21, 22, 25,...
- 1, 11, 21, 1211, 111221, 312211,...
- 1, 1, 2, 4, 8, 16, 23, 28, 38, 49,...
- 1, 1, 2, 4, 8, 7, 5, 10, 11, 13, 8,...
- 1, 2, 4, 8, 16, 77, 145, 668, 1345,...
- 3, 2, 1, 7, 4, 1, 1, 8, 5, 2, 9,...
- 31, 41, 59, 53, 89, 79,...
- 3, 3, 4, 6, 5, 4, 5, 4, 5, 4,...
- 1, 0, 5, 4, 14, 40, 16, 17,...
- 1, 2, 3, 2, 1, 2, 3, 4, 2, 1,...
- 1, 0, 0, 0, 0, 0, 1, 0, 2, 1, 1, 0,...
- 0, 1, 8, 11, 69, 88, 96, 101,...
- 0, 1, 11, 101, 111, 181, 1001,...
- 1, 2, 3, 5, 10, 19, 20, 30, 1000...
- 6, 2, 5, 5, 4, 5, 6, 3, 7,...
- 1, 2, 3, 3, 2, 3, 4, 5,...
- 20, 1, 18, 4, 13, 6, 10,...
- 0, 32, 15, 19, 4, 21, 2, 25, 17,...
- 1, 5, 6, 9, 12, 14, 18, 19, 23, 26, 27,...
CAPITULO I. INTRODUCCION AL ANALISIS NUMERICO
1. ALGORITMOS Y DIAGRAMAS DE FLUJO
El hecho de que el An´alisis Num´erico sea tanto una ciencia como un arte es la
opini´on de los especialistas en este campo pero, frecuentemente es mal entendido por los no
especialistas. ¿Se dice que es un arte, y a la vez una ciencia, ´unicamente como eufemismo,
para ocultar el hecho de que el An´alisis Num´erico no es una disciplina suficientemente
precisa para merecer el que se le considere como una ciencia? ¿Es cierto que el nombre
de an´alisis num´erico se emplea err´oneamente, porque el significado cl´asico del an´alisis
en matem´aticas no es aplicable al trabajo num´erico? De hecho, la respuesta a ambas
preguntas es “no”. M´as bien la yuxtaposici´on de ciencia y arte se debe a un principio
de incertidumbre que frecuentemente se presenta en la soluci´on de problemas, es decir, el
hecho de que para determinar la mejor forma de resolver un problema, puede ser necesaria
la soluci´on del problema en s´ı. En otros casos, la mejor forma de resolver un problema
puede depender de un conocimiento de las propiedades de las funciones involucradas, las
que no se pueden obtener ni te´orica ni pr´acticamente.
Como una ciencia, el An´alisis Num´erico est´a interesado en los procesos por los cuales
pueden resolverse los problemas matem´aticos, por las operaciones de la aritm´etica. Algunas
veces esto involucrar´a el desarrollo de algoritmos para resolver un problema que
est´a ya en una forma en la cual pueda encontrarse la soluci´on por medio aritm´eticos. Frecuentemente
involucrar´a la necesidad de sustituir cantidades que no pueden ser calculadas
aritm´eticamente, por aproximaciones que permiten que sea determinada una soluci´on
aproximada. En este caso estar´ıamos interesados, naturalmente, en los errores cometidos
en nuestra aproximaci´on. Pero, en cualquier caso, las herramientas que usar´ıamos
en el desarrollo de los procesos de an´alisis num´erico, ser´an las herramientas del an´alisis
matem´atico exacto, tan conocidas cl´asicamente.
Como un arte, el An´alisis Num´erico est´a interesado en la elecci´on del procedimiento,
y conveniente aplicaci´on del mismo, “m´as” adecuado a la soluci´on de un problema particular.
Esto implica la necesidad de desarrollar la experiencia y con ello esperar que se
desarrolle la intuici´on del especialista.
As´ı pues, el An´alisis Num´erico trata de dise˜nar m
Con reglas adecuadas los operadores actu´an sobre las variables y las constantes para
obtener valores nuevos. Una serie de s´ımbolos usados para indicar los operadores se da
en la tabla 1. Y en la tabla 2 se dan los resultados de los operadores and, or y xor de las
variables l´ogicas.
Tabla 1
Simbolo Tipo de valor Operaci´on
del resultado
+ num´erico suma
− num´erico resta
∗ num´erico multiplicaci´on
∗∗ num´erico exponenciaci´on
/ num´erico divisi´on
[ ] num´erico parte entera
P num´erico suma finita
= l´ogico igualdad
6= l´ogico no igualdad
< l´ogico menor que
> l´ogico mayor que
≤ l´ogico menor o igual que
≥ l´ogico mayor o igual que
not l´ogico cambio de T (F) en F (T)
and l´ogico (a la vez)
or l´ogico (o bien)
xor l´ogico (o bien exc
Las series matemáticas son bien importantes para el estudio e investigación de procesos. Igualmente permiten crear simulaciones y también pueden representarse mediante computador. El análisis de progresiones depende de la agudeza y generalización de los datos. Claramente existen series infinitas de números que no son sucesión, como por ejemplo los números primos.
ResponderEliminarComparto un programa en C++ que determina los elementos de una serie antes que la suma sobrepase un valor: https://tutorias.co/ciclo-while-c-sobrepasar-serie-matematica-epsilon/