Programlama | Programlama Dilleri | C Programlama Dili |C++

Anasayfa Programlama Haskell Aç?lar?na Göre Üçgenleri S?n?flayan Fonksiyon


Aç?lar?na Göre Üçgenleri S?n?flayan Fonksiyon

Haskell programlama dilinde yaz?lm?? bu fonksiyonda argüman olarak bir data yap?s? al?nm??t?r. Bu fonksiyonda uygun tipte girilen üçgenlerin hangi tür üçgenler oldu?u hesaplanm??t?r. Hesaplanabilen üçgen türleri aralar?ndaki aç? durumlar?na göre dik aç?l?, dar aç?l? veya geni? aç?l? olabilmektedir.Dik aç?l? üçgende Rightt yaz?lmas?n?n sebebi haskell programlama dilinde Right isimli bir anahtar kelimenin bulunmas?d?r.

Ör :

 getKot [(S 3 4 5),(S 4 5 6), (S 7 1 8)]
[Rightt,Acute,Obtuse]

Program Kodu :

  1.  
  2. data Triangle = S Int Int Int
  3. data Species = Acute | Rightt | Obtuse deriving Show
  4.  
  5. getKot :: [Triangle] -> [Species]
  6. getKot []     = []
  7. getKot (x:xs) = [kontrol x] ++ getKot xs
  8.  
  9. kontrol :: Triangle -> Species
  10. kontrol (S a b c) 
  11.                 | (((a*a)+(b*b))== (c*c)) || (((a*a)+(c*c))== (b*b)) || (((c*c)+(b*b))== (a*a))  = Rightt
  12.                 | (((a*a)+(b*b*b))<(c*c)) || (((b*b)+(a*a*a))<(c*c)) || (((a*a)+(c*c*c)) <(b*b)) || (((c*c)+(a*a*a)) <(b*b)) || (((c*c)+(b*b*b)) <(a*a)) || (((b*b)+(c*c*c)) <(a*a))   = Obtuse
  13.                 | (((a*a)+(b*b*b))>(c*c)) || (((b*b)+(a*a*a))>(c*c)) || (((a*a)+(c*c*c)) >(b*b)) || (((c*c)+(a*a*a)) >(b*b)) || (((c*c)+(b*b*b)) >(a*a)) || (((b*b)+(c*c*c)) >(a*a))   = Acute
  14.  
  15.  

Yorumlar (0)
Sadece kayıtlı kullanıcılar yorum yazabilir!
 
404 Not Found

Server Error

404

Page Not Found

This page either doesn't exist, or it moved somewhere else.


That's what you can do