elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Ayuda Python! Matriz..
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda Python! Matriz..  (Leído 8,736 veces)
cuazzo

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Ayuda Python! Matriz..
« en: 16 Junio 2010, 00:50 am »

Hola... mi problema es el siguiente, tengo que crear una matriz, mostrarla, y luego mostrar solo los elementos de la matriz que son divisibles por 3, yo hago lo siguiente, y me sale un error!, que esta mal? como podria hacer?




Código
  1. m=int(raw_input('Ingrese el número de filas: '))
  2. n=int(raw_input('Ingrese el número de columnas: '))
  3. minimo = min(m,n)
  4.  
  5. A=[]
  6. for j in range(m):
  7.  A.append( [0]*n)
  8.  
  9. print 'Lectura de la matriz A'
  10. for j in range(m):
  11.  for k in range(n):
  12.    A[j][k] = float(raw_input('Dame el componente (%d,%d): ' %(j+1,k+1)))
  13.  
  14. print A
  15.  
  16. for i in A:
  17.  if i %3 == 0:
  18.   print i


« Última modificación: 16 Junio 2010, 01:54 am por Leo Gutiérrez. » En línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Ayuda Python! Matriz..
« Respuesta #1 en: 16 Junio 2010, 01:32 am »

Lo primero, pon el código con sus respectiva etiqueta, o te borro el mensaje.

Segundo, hay más errores, no solo te sale "un error".

En primera, tengo entendido que no se aceptan acentos, aquí los hay:

Código:
m=int(raw_input('Ingrese el número de filas: '))
n=int(raw_input('Ingrese el número de columnas: '))
Corrigelos.

Segundo, ¿qué es esto?

Código:
for j in range(m):
  A.append(
*n)

Primero corrige eso.


En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
cuazzo

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Ayuda Python! Matriz..
« Respuesta #2 en: 16 Junio 2010, 01:43 am »


Código:
m=int(raw_input("Ingrese el número de filas: "))
n=int(raw_input("Ingrese el número de columnas: "))
minimo = min(m,n)

A=[]
for j in range(m):
  A.append([0]*n)
 
print "Lectura de la matriz A"
for j in range(m):
  for k in range(n):
    A[j][k] = float(raw_input("Dame el componente (%d,%d): " %(j+1,k+1)))
   
print A

for i in A:
  if i %3 == 0:
   print i

Hay esta, el python admite acentos como comillas tambien, por eso.!, la primera parte, hasta el print A, esta perfecto, esa es la parte en donde se crea la matriz, la 2da parte esta mal..

Perdon por no poner el codigo en su etiqueta, es que soy nuevo en el foro.!
Muchas gracias por responder.!
En línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Ayuda Python! Matriz..
« Respuesta #3 en: 16 Junio 2010, 01:53 am »

Código:
leo@lein:~/Escritorio$ python py.py 
Ingrese el numero de filas: 3
Ingrese el numero de columnas: 3
Lectura de la matriz A
Dame el componente (1,1): 1
Dame el componente (1,2): 2
Dame el componente (1,3): 3
Dame el componente (2,1): 4
Dame el componente (2,2): 5
Dame el componente (2,3): 6
Dame el componente (3,1): 7
Dame el componente (3,2): 8
Dame el componente (3,3): 9
[[1.0, 2.0, 3.0], [4.0, 5.0, 6.0], [7.0, 8.0, 9.0]]

3.0
6.0
9.0
leo@lein:~/Escritorio$

Código
  1. m=int(raw_input("Ingrese el numero de filas: "))
  2. n=int(raw_input("Ingrese el numero de columnas: "))
  3. minimo = min(m,n)
  4.  
  5. A=[]
  6. for j in range(m):
  7.  A.append([0]*n)
  8.  
  9. print "Lectura de la matriz A"
  10. for j in range(m):
  11.  for k in range(n):
  12.    A[j][k] = float(raw_input("Dame el componente (%d,%d): " %(j+1,k+1)))
  13.  
  14. print A
  15. print
  16.  
  17. for j in range(m):
  18. for k in range(n):
  19. if A[j][k] % 3 == 0:
  20. print A[j][k]
  21.  
En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
cuazzo

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Ayuda Python! Matriz..
« Respuesta #4 en: 16 Junio 2010, 02:27 am »

Muchas muchas gracias, ahora me surgio otra duda, estoy realizando muchos ejercicios.!.,si yo quiero generar una matriz de una fila como resultado de la suma de los  elementos de las columnas de la matriz anterior, ¿como tengo que hacer?,
sumar uno por uno los elementos?, seria muy largo, no se me ocurre otra cosa :S
En línea

plof

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: Ayuda Python! Matriz..
« Respuesta #5 en: 16 Junio 2010, 02:33 am »

Las comprehension lists vienen bien para manejar arrays:
Código:
m=int(raw_input("Ingrese el n\xa3mero de filas: "))
n=int(raw_input("Ingrese el n\xa3mero de columnas: "))

A = []
[ A.append( [  float(raw_input('Dame el componente (%d,%d): ' %(j+1,i+1))) for i in range(n) ] ) for j in range(m)]

print A , "\n\n"

for i in A:
    for j in i:
        if not j % 3:
            print j


si yo quiero generar una matriz de una fila como resultado de la suma de los  elementos de las columnas de la matriz anterior, ¿como tengo que hacer?,
sumar uno por uno los elementos?
¿Por qué no lo intentas hacerlo por ti mismo?

Saludos.
En línea

cuazzo

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Ayuda Python! Matriz..
« Respuesta #6 en: 16 Junio 2010, 02:42 am »

Las comprehension lists vienen bien para manejar arrays:
Código:
m=int(raw_input("Ingrese el n\xa3mero de filas: "))
n=int(raw_input("Ingrese el n\xa3mero de columnas: "))

A = []
[ A.append( [  float(raw_input('Dame el componente (%d,%d): ' %(j+1,i+1))) for i in range(n) ] ) for j in range(m)]

print A , "\n\n"

for i in A:
    for j in i:
        if not j % 3:
            print j


si yo quiero generar una matriz de una fila como resultado de la suma de los  elementos de las columnas de la matriz anterior, ¿como tengo que hacer?,
sumar uno por uno los elementos?
¿Por qué no lo intentas hacerlo por ti mismo?

Saludos.

Es que lo estoy intentando!, se me ocurre sumar elemento por elemento, pero si no se la dimension de la matriz no es posible hacer eso, y no se me ocurre mucho, soy muy novato recien empeze hace 2 semanas, pero ya voy a ir mejorando..
En línea

plof

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: Ayuda Python! Matriz..
« Respuesta #7 en: 16 Junio 2010, 03:19 am »

pero si no se la dimension de la matriz no es posible hacer eso
No te entiendo, la dimensión del array lo tienes en...
Código:
n , nº de columnas
m , nº filas
len(A), nº de filas
len(A[x]) , nº de columnas de la fila x-ésima.


se me ocurre sumar elemento por elemento,
A ver si ésto te ayuda:
Código:
m=int(raw_input("Ingrese el n\xa3mero de filas: "))
n=int(raw_input("Ingrese el n\xa3mero de columnas: "))

A = []
B = []
[ A.append( [  float(raw_input('Dame el componente (%d,%d): ' %(j+1,i+1))) for i in range(n) ] ) for j in range(m)]
[ B.append(0) for i in range(n)]

print A , "\n\n"

# Sentencia de control que suma las columnas del array A y lo almacena en el array B
for i in range(m):
    for j in range(n):
        print "?"
       
print "Soluci\xa2n: ", B

soy muy novato recien empeze hace 2 semanas, pero ya voy a ir mejorando..
Bienvenido a python  ;).
En línea

cuazzo

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Ayuda Python! Matriz..
« Respuesta #8 en: 16 Junio 2010, 03:44 am »

pero si no se la dimension de la matriz no es posible hacer eso
No te entiendo, la dimensión del array lo tienes en...
Código:
n , nº de columnas
m , nº filas
len(A), nº de filas
len(A[x]) , nº de columnas de la fila x-ésima.


se me ocurre sumar elemento por elemento,
A ver si ésto te ayuda:
Código:
m=int(raw_input("Ingrese el n\xa3mero de filas: "))
n=int(raw_input("Ingrese el n\xa3mero de columnas: "))

A = []
B = []
[ A.append( [  float(raw_input('Dame el componente (%d,%d): ' %(j+1,i+1))) for i in range(n) ] ) for j in range(m)]
[ B.append(0) for i in range(n)]

print A , "\n\n"

# Sentencia de control que suma las columnas del array A y lo almacena en el array B
for i in range(m):
    for j in range(n):
        print "?"
       
print "Soluci\xa2n: ", B

soy muy novato recien empeze hace 2 semanas, pero ya voy a ir mejorando..
Bienvenido a python  ;).

Gracias.. mi idea es empezar con Python y despues darle bien bien al C++, estoy por mi cuenta nomas, asi que como ves, estoy luchando..!
En línea

cuazzo

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Ayuda Python! Matriz..
« Respuesta #9 en: 16 Junio 2010, 03:57 am »

plof y leo.. encontre la forma de recorrer la matriz por columnas..
Es asi no:
Código:
M = Matriz
m = Numero de filas
n = Numero de columnas
for j in range(n):
    for i in range(m):
        print "M[%d][%d] = %d" % (i, j, M[i][j])

Ahora, como hago para sumar los valores de cada columna?, me queda eso y ya soluciono el problema..
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda Matriz java!
Java
fosh 3 4,473 Último mensaje 27 Abril 2011, 16:36 pm
por fosh
ayuda en operacion con matriz
Programación C/C++
kiara_luna 2 2,658 Último mensaje 12 Septiembre 2011, 22:42 pm
por kiara_luna
Ayuda con matriz traspuesta
Programación C/C++
sora_ori 2 5,584 Último mensaje 16 Enero 2013, 22:57 pm
por sora_ori
[Python] Sumatorio de elementos adyacentes en una matriz [SOLUCIONADO]
Scripting
eLank0 8 10,106 Último mensaje 14 Marzo 2013, 23:27 pm
por MCKSys Argentina
[PYTHON] Saber si un elemento esta en una matriz
Scripting
Yidu 2 11,177 Último mensaje 9 Abril 2015, 19:19 pm
por Yidu
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines