CC10A-Computación I- Prof: Juan Alvarez R

Anuncio
Computación I – Profesor: Nelson Baloian – Ensayo Control 3
Auxiliares: Mauricio Giadach – Nicolás Ulriksen
Problema Nº1
Escriba los métodos de la clase Polinomio de acuerdo a la siguiente representación que
guarda los términos en nodos de una lista enlazada que contienen el coeficiente y el exponente y sin
orden alguno:
class Polinomio:
def __init__ (self):
self.primero = None
def agregarTermino (self, potencia, coef):
... # agrega termino al polinomio: coeficiente*x^potencia
def valor (seld, x):
... # evalua el polinomio en x
class Nodo:
def __init__ (self, x, y, z):
self.potencia = x
self.coeficiente = y
self.sgte = z
Problema Nº2
Una tabla de enteros de dos dimensiones con el mismo número de filas y de columnas se
manipula a través de los métodos siguientes:
T=Tabla(8)
inicializa con ceros la Tabla T de 8 filas y 8 columnas (numeradas entre 1 y 8)
T.poner(9,4,3)
Pone un nº 9 en la fila 4 y columna 3 de la tabla
T.columna(9,4)
Busca el nº 9 en la fila 4 y entrega el nº de la columna (o 0 si no está). En el
ej: 3
T.fila(9,3)
Busca el nº 9 en la columna 3 y entrega el nº de la fila (o 0 si no está). En el
ej: 4.
a) Escriba la función fila suponiendo que un objeto de la clase Tabla se representa por una
lista de listas.
def fila(x,columna): #busca x en columna. Entrega nº de fila o 0
b) Escriba la función columna suponiendo la siguiente representación de un objeto de la
clase Tabla:Ejemplo: T=[(fila,col,valor), …]
def columna(x,fila): #busca x en fila. Entrega nº de columna o 0
Problema N°3
La siguiente tabla define los métodos disponibles en la clase Cola
__init__(self)
poner(self, x)
sacar()
__str__()
Constructor que inicializa una cola vacía (sin datos) de strings
Agrega string x al final de la cola (devuelve False si no hay espacio)
Saca y entrega primer valor de la cola (None si está vacía)
Entrega string con todos los valores en la cola (separados por espacios)
a) Escriba el método poner (de la clase Cola) suponiendo que la representación es una
lista de strings A y las variables enteras i (índice de primero), j (índice de último), n y
max. Ejemplo:
…
“27” …
A[i]
…
“32”
A[j]
...
n: nº de Strings en el arreglo a (ej: 6)
... A[99] max: nº máximo de datos en el arreglo a (ej:100)
def poner(self, x):
b) Escriba sacar suponiendo que la representación es una lista enlazada de nodos de clase
N:
class N:
def __init__ (self, x, y):
self.value = x; self.next = y
Ejemplo:
“27”
“28”
first
value next
def sacar(self):
...
“32 “
null
last
Descargar