Sei sulla pagina 1di 3

FUNDAMENTOS DE COMPUTACIN LECCON 4 ENERO 15, 2015

NOMBRE_________________________FIRMA____________________ P. 12

Para cada ejercicio codifique una solucin en el lenguaje Python

1) Escriba un mdulo o librera con el nombre convertir que contenga dos


funciones:
a) [r,t]=polar(x, y)

Recibe las coordenadas cartesianas x, y y entrega


las coordenadas polares r, t

b) [x,y]=cartesiana(r, t)

Recibe las coordenadas polares r, t y entrega las


coordenadas cartesianas x, y

Formulacin:

r = x 2 + y2 , t =arctan(y / x)
=
x r=
cos(t), y r sen(t)

Escriba algunas lneas en la ventana interactiva para demostrar como se


usaran estas funciones

from math import*


def polar(x,y):
r=sqrt(x**2+y**2)
t=atan(y/x)
return [r,t]
def cartesiana(r,t):
x=r*cos(t)
y=r*sin(t)
return [x,y]
>>>
>>>
>>>
>>>

========= RESTART =========


from convertir import*
[r,t]=polar(2,3)
[x,y]=cartesiana(1.2,3.4)

2) a) Escriba una funcin primo(n) que reciba un entero y entregue un


resultado lgico: True o False segn n sea o no un nmero primo.
b) Escriba una funcin: v=primos(u) que reciba un vector u y entregue como
resultado otro vector v que contenga solamente los valores del vector u que
son primos. Esta funcin debe usar a la funcin primo escrita anteriormente.
c) Escriba un programa que genere un vector u de n nmeros aleatorios
enteros con valores entre a y b. El programa debe enviar el vector u a la
funcin primos y obtener y mostrar el vector v con los valores que son
primos. El programa debe leer al inicio los valores de n, a, b.

def primo(n):
c=0
for i in range(1,n+1):
if n%i==0:
c=c+1
if c>2:
return False
else:
return True
def primos(u):
v=[]
for e in u:
if primo(e):
v=v+[e]
return v
#Programa de prueba
from random import*
n=int(input('Ingrese cantidad: '))
a=int(input('Desde: '))
b=int(input('Hasta: '))
u=[]
for i in range(n):
x=randint(a,b)
u=u+[x]
v=primos(u)
print('Lista de primos: ',v)

Al escribir todos los componentes juntos, no es necesario importar mdulos

3) Escriba una funcin v = filtrar(x) que reciba un vector x y entregue como


resultado otro vector v que contenga solamente los valores del vector x pero
eliminando los elementos repetidos.
Escriba un programa que genere un vector x de n nmeros aleatorios
enteros de una cifra. El programa debe usar la funcin filtrar para obtener el
vector v con los valores no repetidos del vector x. El programa debe leer al
inicio el valor de n.

def filtrar(x):
v=[]
for e in x:
if e not in v:
v=v+[e]
return v
#Programa de prueba
from random import*
n=int(input('Cuantos nmeros: '))
x=[]
for i in range(n):
e=randint(0,9)
x=x+[e]
v=filtrar(x)
print('Vector filtrado: ',v)

Al escribir los componentes juntos, no es necesario importar mdulos

Potrebbero piacerti anche