Sencillos
      Series      
      Listas      
Lista de listas
      Tuplas      
      Otros      
 
Códigos
Haskell
Videos
Diseño web
Repetidos en lista de dos tupla
Sencillo programa que de una lista de lista de números enteros, muestra en una lista de dos tupla de manera numérica y literal cuantas veces se repiten los elementos de la primera lista.

Código fuente

rep::Int->[Int]->Int->String
rep _ [] cont="se repite "++show(cont)++" veces"
rep n (x:xs) cont|n==x=rep n xs (cont+1)
     |otherwise=rep n xs cont

conc::[[Int]]->[Int]
conc []=[]
conc (x:xs)=x++conc xs

prin::Int->[[Int]]->(Int,String)
prin n (x:xss)=(n,a)
     where p=conc (x:xss)
     a=rep n p 0

ps::[Int]->[[Int]]->[(Int,String)]
ps [] _=[]
ps (x:xs) xss=k:(ps xs xss)
     where k=prin x xss

pr::[[Int]]->[(Int,String)]
pr (x:xss)=ps x (x:xss)

 
Regresión por mínimos cuadrados
Dada una lista de dos tuplas, los cuales serán los elementos "x" e "y" necesarioas para una regresion por mínimos cuadrados la función principal devuelve el número de pares ordenados, la sumatoria de x, sumatoria de y la sumatoria de los cuadrados, la sumatoria del producto de "x" "y", el valor de A y el valor de B de la regresión;

Código fuente

dx::[(Double,Double)]->Double->[Double]
dx [] _=[]
dx (x:xs) n=(k)**n:dx xs n
     where k=fst x

dy::[(Double,Double)]->Double->[Double]
dy [] _=[]
dy (x:xs) n=(k)**n:dy xs n
     where k=snd x

mul::[(Double,Double)]->[Double]
mul []=[]
mul (x:xs)=(k*h):mul xs
     where k=fst x
     h=snd x

regA::Double->Double->Double->Double->Double->Double
regA sx sy sxx sxy n=(sxx*sy-sxy*sx)/(n*sxx-sx*sx)

regB::Double->Double->Double->Double->Double->Double
regB sx sy sxx sxy n=(n*sxy-sx*sy)/(n*sxx-sx*sx)

cn::[(Double,Double)]->Double
cn []=0
cn (x:xs)=1 + cn xs

regresion::[(Double,Double)]->String
regresion (xs)="n="++show(k)++" x="++show(l)++" sum(x)="++show(s)++
     " y="++show(o)++" sum(y)="++show(p)++" x*y="++show(q)++
     " sum(x*y)="++show(r)++" x^2="++show(t)++" sum(x^2)="++show(u)++
      " y^2="++show(v)++" sum(y^2)="++show(w)++" regresion:"++show(a)++
      show(b)
      where k=length xs
      l=dx (xs) 1
      s=sum(l)
      o=dy (xs) 1
      p=sum(o)
      q=mul xs
      r=sum(q)
      t=dx (xs) 2
      u=sum(t)
      v=dy (xs) 2
      w=sum(v)
      z=cn xs
      a=regA s p u r z
      b=regB s p u r z

 
Raices de ecuaciones cuadraticas
Programa que de una lista de listas de números enteros, muestra en una lista de dos tuplas, los coeficientes que se pueden formar, y las raices que se pueden obtener de las ecuaciones cuadrádicas formadas.

 
Nuevo
Publicado el:
22 - Agosto - 2009
Códigos Pascal
Triangulo
Este programa determina si los catetos e hipotenusa introducidos, forman o no un triángulo, si es asi muestra que tipo de triángulo es, ya sea triángulo equilátero, isóceles, rectángulo o escaleno.
 
Nuevo
Publicado el:
22 - Agosto - 2009
Haskell
Serie Fibonacci
Lista de la serie de fibonacci Programa que dada una lista de números enteros, devuelve solo aquellos numeros que pertenecen a la serie de fibonacci.
 
Nuevo
Publicado el:
21 - Agosto - 2009
Haskell
Suma diagonal principal
Dada una lista de listas o matriz de números enteros, realiza la suma de la diagonal principal.