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

Not Found

The requested URL was not found on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.