Problema de examen haskell
Publicado por Nidael (1 intervención) el 14/06/2009 16:57:14
buenos, me ponen mal este ejercicio en un examen de programacion haskell y por mas que le doy vueltas no veo en que esta mal, si alguien ve el fallo q me lo diga por favor, tengo la revision en 3 dias, gracias
el problema consiste en ordenar una matriz de por filas de menos a mayor.
ej: [[25,13,48],[7,15,14],[54,25,2]]
solucion seria: [[13,25,48],[7,15,14],[2,25,54]
programa en haskell que hice yo y segun el profesor esta mal
OrdenaMatriz :: [[Int]] -> [[Int]]
OrdenaMatriz ([ ]) = [ ] -- caso base
OrdenaMatriz ( C:R ) = OrdenaFila ( C ) : OrdenaMatriz (R)
OrdenaFila :: [Int] -> [Int]
OrdenaFila ([ ]) = [ ]
OrdenaFila (C1:(C2:R)) = IF ( C1<C2 ) Then C1: OrdenaFila (C2:R)
Else C2: OrdenaFila (C1:R)
PD- el programa le hice en un examen escrito a papel, puede a ver algun minimo fallo de escrituro q no compilase bien, pero no entiendo pq de 3 puntos q vale el ejercico me ha puesto solo 0,5 tengo un 4 en el examen y espero q si alguien ve el fallo o si ve q no hay fallos me pueda ayudar y en la revision pueda defenderlo y aprobar, muxas gracias. saludos
el problema consiste en ordenar una matriz de por filas de menos a mayor.
ej: [[25,13,48],[7,15,14],[54,25,2]]
solucion seria: [[13,25,48],[7,15,14],[2,25,54]
programa en haskell que hice yo y segun el profesor esta mal
OrdenaMatriz :: [[Int]] -> [[Int]]
OrdenaMatriz ([ ]) = [ ] -- caso base
OrdenaMatriz ( C:R ) = OrdenaFila ( C ) : OrdenaMatriz (R)
OrdenaFila :: [Int] -> [Int]
OrdenaFila ([ ]) = [ ]
OrdenaFila (C1:(C2:R)) = IF ( C1<C2 ) Then C1: OrdenaFila (C2:R)
Else C2: OrdenaFila (C1:R)
PD- el programa le hice en un examen escrito a papel, puede a ver algun minimo fallo de escrituro q no compilase bien, pero no entiendo pq de 3 puntos q vale el ejercico me ha puesto solo 0,5 tengo un 4 en el examen y espero q si alguien ve el fallo o si ve q no hay fallos me pueda ayudar y en la revision pueda defenderlo y aprobar, muxas gracias. saludos
Valora esta pregunta


0