Monografias.com > Computación > Programación
Descargar Imprimir Comentar Ver trabajos relacionados

Programacion de applet de polinomios basados en listas simples




Enviado por Andrea Paz Roca



  1. Conceptos generales
  2. Definición de clase conformando
    nodo
  3. Polinomios
  4. Applet

Conceptos
generales

Nodo.- en informática u n nodo
puede ser definido como una intersección o conexión
entre varios elementos que confluyen en el mismo lugar. En redes
un nodo es un punto en el que la curva se intersecta consigo
misma, pero puede depender del tipo de red.

En programación concretamente en
estructura de datos, un nodo es uno de los elementos de una lista
enlazada, de un árbol o de un grafo. Cada nodo será
una estructura o registro que dispondrá de varios campos,
y al menos uno de esos campos será un puntero o referencia
a otro nodo, de forma que, conocido un nodo, a partir de esa
referencia, será posible en teoría tener acceso a
otros nodos de la estructura. Los nodos son herramientas
esenciales para la construcción de estructuras de datos
dinámicas.

 Puntero.-  es una variable
que almacena la dirección de memoria de otra variable, es
decir, almacena el valor del lugar físico en la memoria en
donde se encuentra almacenada dicha variable. Si se imagina que
la memoria del computador es un gran arreglo de bytes, la
dirección de memoria correspondería al
índice de los casilleros de dicho arreglo, que es
precisamente lo que se almacena en el puntero.

En algunos lenguajes de programación, por ejemplo
C, es posible declarar explícitamente punteros para
distintos tipos de variables, e incluso es posible realizar
aritmética de punteros para realizar operaciones de manera
muy eficiente, a cambio de "oscurecer" el código del
programa y con una alta probabilidad de cometer errores de
programación difíciles de detectar.

En Java no se puede declarar punteros de manera
explícita ni tampoco realizar aritmética de
punteros. Por lo tanto es imposible en Java tener un puntero a
cualquiera de los tipos primitivos: enteros, reales, caracteres y
booleanos. Los strings y arreglos no
son tipos primitivos en Java
.

 Variable de referencia.- es una
variable que almacena la dirección de memoria en donde se
ubica un objeto. Nótese que si bien la
definición es prácticamente idéntica a la de
puntero, la diferencia radica en que una referencia sólo
puede apuntar a objetos residentes en memoria,
lo cual excluye a los tipos primitivos. A partir de esta
definición se puede concluir que toda variable en Java,
que no sea de tipo primitivo, es
una referencia.

Definición
de
clase conformando nodo

class NodosLista // se define la clase
Nodo

{

Object datos; // Campo
Información

NodosLista siguiente; //Campo
Nodo

// datos: que almacena la
información

// siguiente : Apuntador o enlace a otros
nodos

Monografias.com

NodosLista (Object valor) // Se define un
nodo

{

datos=valor;

siguiente=null;

}

Monografias.com

Como la lista es una consecución de
muchos nodos es necesario establecer nombre a los nodos y
colocarlos a apuntar a algún sitio, en el caso del
único nodo debe apuntar a NULL.

En este caso se crea un nodo llamado P,
indicando que es el primero de la lista.

P =new NodosLista;

Monografias.com

Si se define un nodo, el nodo creado
contiene el campo información y el campo
siguiente

Nodo P y Nodo Q

Monografias.com

Cuando se coloca el nombre del nodo
haciendo referencia a otro realmente se apunta al nodo
indicado

Monografias.com

Y así es como se crea un nodo y se
lo enlaza.

Polinomios

Un polinomio en la variable x es
una expresión algebraica formada solamente por la suma de
términos de la forma a x n, donde a es cualquier
número y n es un número entero no negativo.
Ejemplos:

1)3x -2

2) x4+ 5

Término: Un término es
una parte de una expresión algebraica. Los términos
se separan entre sí por los signos de suma (+)o resta
(-).

Coeficiente numérico: es el
factor numérico del mismo.

Término constante: es el
coeficiente numérico que no contiene variable.

OPERACIONES CON
POLINOMIOS

Las operaciones básicas a realizar
son: la suma, resta, multiplicación y división, los
cuales se explicaran a continuación:

Suma y resta de monomios semejantes:
Se suman o restan sus coeficientes, manteniéndose la misma
parte literal.

a) 7x3y2 + 4x3y2 = (7+4) x3y2 = 11
x3y2

b) 7x3y2 – 4x3y2 = (7-4) x3y2 = 3
x3y2

Multiplicación de
polinomios:

1. Producto de un número por un
polinomio:
Se multiplica el número por cada uno de los
monomios que forman el polinomio.

a) 4(x2 – 3x + 2) = 4×2 – 12x +
8

b) – 6(-x3 + 5×2 – 3) = 6×3 – 30×2
+ 18

2. Producto de un monomio por un
polinomio:
Se multiplica el monomio por cada uno de los
monomios que forman el polinomio.

a) 4×3 · (x2 – 3x + 2) =
4×5 – 12×4 + 8×3

b) – 6x 4 · (-x3 + 5×2 – 3)
= 6×7 – 30×6 + 18×4

3. Producto de dos polinomios: Se
multiplica cada monomio del primer polinomio por cada uno de los
monomios del segundo polinomio y después se agrupan los
monomios semejantes.

a) (2 – 6x) · (-x3 – 3) =
-2×3 – 6 + 6×4 + 18x

b) (4×3 + 5x) · (x2 – 3x + 2)
= 4×5 – 12×4 + 8×3 + 5×3 – 15×2 + 10x = 4×5 – 12×4 + 13×3 – 15×2
+ 10x

Cociente de polinomios:

Ordenamos los polinomios dividendo y
divisor de forma descendente. Los colocamos como las divisiones
de números, el dividendo a la izquierda y el divisor a la
derecha. Si el dividendo es incompleto, dejamos los huecos
correspondientes. La división se realizará de forma
similar a como se procede con los números.

Dividimos el primer monomio del dividendo
entre el primer monomio del divisor; vamos multiplicando este
resultado por cada término del divisor y se lo restamos al
dividendo (para que resulte más sencillo y no cometamos
errores con los signos, podemos ir cambiando el signo de cada
producto resultante, colocarlo debajo de su correspondiente grado
en el dividendo y sumar con el dividendo) ; repetimos el proceso
hasta que el grado del polinomio resto sea menor que el del
divisor (análogo a las divisiones entre
números).

Observación: En el
caso de que el resto de P(x): Q(x) resulte ser 0, diremos que la
división es exacta y que el polinomio P(x) es divisible
por el polinomio Q(x).

Ejemplo: Realiza la división P(x):
Q(x), siendo P(x) = x4 + 2×3 – x + 5 y Q(x) = x2 – 2x +
3

Monografias.com

Se verifica la misma relación que
con números, D = d*c + r, pero con polinomios: P(x)
=

Q(x) ·C(x) + R(x)

Applet

Applet.- desde el punto de vista de
código Java, un programa diseñado para ser
ejecutado en el contexto de una página
web.

desde el punto de vista de una
página HTML, una pequeña ventana gráfica
dentro de la misma.

Diferencia con una aplicación
Java
.-

  • a) Para cargar y ejecutar una
    aplicación Java utilizamos directamente el
    intérprete Java.

  • b)  Un applet se carga y
    se ejecuta desde cualquier explorador que soporte
    Java.

EJEMPLO DE UN APPLET

Monografias.com

METODOS BASICOS

Para procesar los eventos anteriores, la
mayoría de applets redefinen estos 4
métodos:

Init.- Para inicializar el applet
cada vez que se carga o se recarga suele usarse para operaciones
cortas de inicialización (por ejemplo, cargar
imágenes)

Start.- Para comenzar la
ejecución del applet: cuando el applet se carga o cuando
se revisita la página web.

Stop.- Para detener la
ejecución del applet: cuando se abandona la página
web o se cierra el explorador.

Destroy.- Para realizar operaciones
de limpieza (liberar recursos) antes de descargar el
applet

Para visualizar objetos, los applets pueden
redefinir 2 métodos heredados de AWT:

Paint.- Es el método
básico de visualización. Se usa para dibujar la
representación del applet dentro de la página
web.

Update.- Se usa para
redibujar el applet.

Otros componentes visuales heredados de
AWT:

– Botones (java.awt.Button)

– Checkbox (java.awt.Checkbox)

– Campos de texto de una línea
(java.awt.TextField)

– Áreas de edición más
grandes (java.awt.TextArea)

– Etiquetas (java.awt.Label)

– Listas (java.awt.List)

– Listas desplegables
(java.awt.Choice)

– Sliders y barras de desplazamiento
(java.awt.Scrollbar)

– Áreas de dibujo
(java.awt.Canvas)

– Menús (java.awt.Menu,
java.awt.MenuItem, java.awt.CheckboxMenuItem)

– Contenedores (java.awt.Panel,
java.awt.Window and its subclasses).

APPLET PARA POLINOMIOS CON
NODOS

Para poder realizar este applet se debe
analizar parte por parte, para poder entenderlo mejor.

Monografias.com

En esta parte declaramos todas las
variables a utilizar. Donde nuestra clase poli es la que
inicializa u nodo.

Luego de eso procedemos a crear todas
nuestras labels y botones:

Monografias.com

Con la siguiente función habremos de
inicializar nuestros botones y etiquetas y darle los atributos
que queramos:

Monografias.com

Y en esta parte comenzamos con las
funciones respectivas.

Monografias.com

Estas de acá son nuestras funciones
esenciales, que nos permiten la creación de un nodo y su
enlazamiento con el resto de la lista, además de la
función contar, que nos permite contar el número de
nodos de una lista.

Monografias.com

Monografias.com

Nuestra función de la suma es la
misma que de la resta. Pero la multiplicación y la
división son casos muy distintos.

Monografias.com

Para este caso necesitamos de la
función simplificar para que nos dé un resultado
correcto y más corto.

Monografias.com

La división se genera a partir de
las otras funciones básicas (suma, resta y
multiplicación).

Monografias.com

Estas dos últimas funciones son las
que nos permiten integrar y derivar el polinomio y con las de a
continuación activamos los eventos que llaman a cada
función:

Monografias.com

Monografias.com

Monografias.com

Monografias.com

Y con esta última parte hacemos que
los resultados obtenidos se muestren en pantalla:

Monografias.com

Y el resultado obtenido ha de
ser:

Monografias.com

 

 

Autor:

Andrea Paz Roca

 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter