Python - Problema ejercicio en Python sobre funciones.

 
Vista:

Problema ejercicio en Python sobre funciones.

Publicado por davidlasf (4 intervenciones) el 30/12/2020 18:04:15
Muy buenas, estoy empezando en Python y tengo dudas sobre un ejercicio de funciones que dice lo siguiente:

Diseña una función lee_lista para leer una lista v de N números enteros N constante conocida). Diseña otra función operacion que tome dos listas a y b de N (elementos cada una y un entero k y devuelva en una nueva lista c las posiciones de las listas a y b para las cuales la diferencia en valor absoluto entre los dos valores correspondientes es menor o igual que k. A continuación, escribe una función escritura que muestre una lista en pantalla.
Finalmente, escribe un programa que utilizando las funciones anteriores, lea dos listas y un valor entero, y muestre en pantalla la lista resultante de la transformación.

Ejemplo (para N=6):

Escribe los 6 elementos de la lista a: 3 6 7 2 8 4
Escribe los 6 elementos de la lista b: 1 8 34 6 17 1
Escribe un número: 3
La lista resultante es: 0 1 5

OPERACION devolverá la lista [0, 1, 5], ya que las diferencias entre los valores de las posiciones 0, 1 y 5 de las listas A y B son menores o iguales que 3.


Hasta el momento, he hecho lo siguiente y no obtengo la solución, el proceso está en inglés por que en la universidad estoy dando en Inglés, pero se entiende igualmente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
def read_list(v):
    v=[]
    for i in range (n):
        nv=int(input('Write a number: '))
        v.append(nv)
    return(v)
 
def operation(a,b,k):
    a=[]
    b=[]
    c=[]
    for i in range (len(a)):
        for i in range (len(b)):
            if (abs(a[i]-(abs(b[i]))))<=k:
                i+=1
                c.append(i)
        return(c)
 
def writting(c):
    for i in range (len(c)):
        print(c[i],end='')
 
n=int(input('How many numbers you want your lists to have?: '))
k=int(input('Write a number: '))
 
writing(operation(read_list(n),read_list(n),k))


A ver si alguien me puede echar un cable, muchas gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de algoritmo
Val: 819
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Problema ejercicio en Python sobre funciones.

Publicado por algoritmo (245 intervenciones) el 30/12/2020 19:33:06
Hola

Espero que te sirva :)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
def read_list(v):
    v=[]
    for i in range (n):
        nv=int(input('Write a number: '))
        v.append(nv)
    return(v)
 
def operation(a,b,k):
    c = []
    for i in range(0, len(a)):
        print(i, a[i], b[i], abs(a[i]-b[i]), k)
        if abs(a[i]-b[i])<=k:
            c.append(i)
    return(c)
 
def writting(c):
    for i in range (len(c)):
        print(c[i])
 
n=int(input('How many numbers you want your lists to have?: '))
k=int(input('Write a number: '))
 
print(operation(read_list(n),read_list(n),k))
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Problema ejercicio en Python sobre funciones.

Publicado por davidlasf (4 intervenciones) el 30/12/2020 20:00:24
Muchas gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar