1- from math import pi , e
1+ # Menghitung sinus dengan deret taylor
2+ # https://en.wikipedia.org/wiki/Taylor_series#Trigonometric_functions
3+ import math
24
35
46def factorial (n : int ) -> int :
@@ -10,29 +12,37 @@ def factorial(n: int) -> int:
1012 return n * factorial (n - 1 )
1113
1214
13- def sinus (x : float | int , iterable : int = 4 ):
15+ def sinus (sudut : float | int , iterable : int = 10 ):
1416 """
1517 Sinus ini merupakan perhitungan dasar yang ada pada
1618 teori pythagoras
1719 Args:
18- x (float | int): input ini merupakan value dari sudut yang kita
20+ sudut (float | int): input ini merupakan value dari sudut yang kita
1921 inputkan
20- iterable (int, optional): paramater ini untuk jumlah data yang kuta sum kan
21- Defaults to 4.
2222 Returns:
23- complex: hasil dari pembagian numerator (complex) dengan denominator
23+ (float): hasil dari pembagian numerator dengan denominator
24+
25+ >>> sinus(0)
26+ 0.0
27+ >>> sinus(30)
28+ 0.49999999999999994
29+ >>> sinus(45)
30+ 0.7071067811865475
31+ >>> sinus(60)
32+ 0.8660254037844385
33+ >>> sinus(90)
34+ 1.0
2435 """
25- result = 0
36+ result = 0.0
37+ radian = sudut * math .pi / 180
2638 for n in range (iterable ):
27- numerator = (e ** (complex (0 , pi / 180 ) * x )) - (
28- e ** (- complex (0 , pi / 180 ) * x )
29- )
39+ numerator = math .pow (radian , 2 * n + 1 ) * math .pow (- 1 , n )
3040 denominator = factorial (2 * n + 1 )
3141 result += numerator / denominator
32- return result
42+ return float ( result )
3343
3444
3545if __name__ == "__main__" :
36- list_sudut = [0 , pi / 2 , pi * 3 / 4 , pi ]
46+ list_sudut = [0 , 30 , 45 , 60 , 90 ]
3747 for sudut in list_sudut :
38- print ("Sudut:" , sudut , " Sin:" , sinus (sudut ))
48+ print (f "Sudut : { sudut } , Sin : { sinus (sudut )} " )
0 commit comments