Skip to content
Snippets Groups Projects
Commit 9e2c905f authored by Marcos Viera's avatar Marcos Viera
Browse files

0.4.5

parent 6e6abe85
No related branches found
No related tags found
No related merge requests found
cabal-version: >= 1.24
build-type: Simple
name: MateFun
version: 0.4.4
version: 0.4.5
license: LGPL
license-file: LICENSE-LGPL
maintainer: Marcos Viera <mviera@fing.edu.uy>
......
......@@ -182,14 +182,14 @@ Dada la naturaleza inductiva del conjunto secuencia, es natural que muchas funci
Por ejemplo, para obtener la suma de una secuencia de reales, sumamos el primer real de la secuencia con el resultado de la suma del resto (considerando que la secuencia vacía suma 0):
-}
suma :: R* -> R
suma(l) = 0 si esVacia(l)
suma(l) = 0 si l == []
o primero(l) + suma(resto(l))
{-
De forma similar, si queremos obtener el largo de una secuencia:
-}
largo :: R* -> R
largo(l) = 0 si esVacia(l)
largo(l) = 0 si l == []
o 1 + largo(resto(l))
......@@ -199,7 +199,7 @@ O el máximo de una secuencia no vacía de reales:
conj RSeqNV = { l en R* | largo(l) /= 0 }
maximo :: RSeqNV -> R
maximo (l) = primero(l) si esVacia(resto(l))
maximo (l) = primero(l) si resto(l) == []
o max(primero(l),maximo(resto(l)))
{-
......
......@@ -20,6 +20,16 @@ import Debug.Trace
import Data.Char
import Data.List
version = "0.4.5"
logo = " __ __ _ _____ \n" ++
"| \\/ | __ _| |_ ___| ___| _ _ __ v " ++ version ++ " \n" ++
"| |\\/| |/ _` | __/ _ \\ |_ | | | | '_ \\ \n" ++
"| | | | (_| | || __/ _|| |_| | | | | \n" ++
"|_| |_|\\__,_|\\__\\___|_| \\__,_|_| |_| \n\n"
data Flag = Input String
| Pre String
| Wrn | WrnA
......@@ -50,12 +60,6 @@ isPreFlag (Pre _) = True
isPreFlag _ = False
logo = " __ __ _ _____ \n" ++
"| \\/ | __ _| |_ ___| ___| _ _ __ v 0.4.4 \n" ++
"| |\\/| |/ _` | __/ _ \\ |_ | | | | '_ \\ \n" ++
"| | | | (_| | || __/ _|| |_| | | | | \n" ++
"|_| |_|\\__,_|\\__\\___|_| \\__,_|_| |_| \n\n"
main = do args <- getArgs
case getOpt RequireOrder options args of
(o,_,[] ) -> let inFiles = map (\(Input s) -> s) (filter isInputFlag o)
......
......@@ -76,10 +76,15 @@ colorearDiagramas (diag:diags) nuevoColor =
(Text position text, pos,escala,rotacion,color,pivote) -> [(Text position text, pos,escala,rotacion,nuevoColor,pivote)]++colorearDiagramas diags nuevoColor
unirDiagramas :: [(Diagram,Point,Double,Double, Color,Point)] -> [(Diagram,Point,Double,Double, Color,Point)]-> [(Diagram,Point,Double,Double, Color,Point)]
unirDiagramas [] [] = []
unirDiagramas [] (diagB:diagBs) = [setPivote diagB (0,0)]++unirDiagramas [] diagBs
unirDiagramas (diagA:diagAs) diagBs = [setPivote diagA (0,0)]++unirDiagramas diagAs diagBs
{-
unirDiagramas [] [] = []
unirDiagramas (diagA:diagAs) [] = [setPivote diagA (0,0)]++unirDiagramas diagAs []
unirDiagramas [] (diagB:diagBs) = [setPivote diagB (0,0)]++unirDiagramas [] diagBs
unirDiagramas (diagA:diagAs) diagBs = [setPivote diagA (0,0)]++unirDiagramas diagAs diagBs
-}
setPivote :: (Diagram,Point,Double,Double, Color,Point) -> Point -> (Diagram,Point,Double,Double, Color,Point)
setPivote (Circle r, pos,escala,rotacion,color,pivote) pivot = (Circle r, pos,escala,rotacion,color,pivot)
......@@ -115,4 +120,4 @@ escalarPuntos ((x,y):ps) (px,py) mult = (px+(x-px)*mult, py+(y-py)*mult):escalar
moverPuntos :: [Point]->Point->[Point]
moverPuntos [] _ = []
moverPuntos ((x,y):ps) (nx,ny) = (x+nx, y+ny):moverPuntos ps (nx,ny)
\ No newline at end of file
moverPuntos ((x,y):ps) (nx,ny) = (x+nx, y+ny):moverPuntos ps (nx,ny)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment