-
Notifications
You must be signed in to change notification settings - Fork 23
/
Copy pathTask1_2.hs
49 lines (38 loc) · 1.78 KB
/
Task1_2.hs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
module Task1_2 where
import Todo(todo)
-- синус числа (формула Тейлора)
sin :: Double -> Double
sin x = todo
-- косинус числа (формула Тейлора)
cos :: Double -> Double
cos x = todo
-- наибольший общий делитель двух чисел
gcd :: Integer -> Integer -> Integer
gcd x y = todo
-- существует ли полный целочисленный квадрат в диапазоне [from, to)?
doesSquareBetweenExist :: Integer -> Integer -> Bool
doesSquareBetweenExist from to = todo
-- является ли дата корректной с учётом количества дней в месяце и
-- вискокосных годов?
isDateCorrect :: Integer -> Integer -> Integer -> Bool
isDateCorrect day month year = todo
-- возведение числа в степень, duh
-- готовые функции и плавающую арифметику использовать нельзя
pow :: Integer -> Integer -> Integer
pow x y = todo
-- является ли данное число простым?
isPrime :: Integer -> Bool
isPrime x = todo
type Point2D = (Double, Double)
-- рассчитайте площадь многоугольника по формуле Гаусса
-- многоугольник задан списком координат
shapeArea :: [Point2D] -> Double
shapeArea points = todo
-- треугольник задан своими координатами.
-- функция должна вернуть
-- 0, если он тупоугольный
-- 1, если он остроугольный
-- 2, если он прямоугольный
-- -1, если это не треугольник
triangleKind :: Point2D -> Point2D -> Point2D -> Integer
triangleKind a b c = todo