您好,登錄后才能下訂單哦!
這篇文章主要講解了如何使用Python三角函數公式計算三角形的夾角,內容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。
題目內容:
對于三角形,三邊長分別為a, b, c,給定a和b之間的夾角C,則有:。編寫程序,使得輸入三角形的邊a, b, c,可求得夾角C(角度值)。
輸入格式:
三條邊a、b、c的長度值,每個值占一行。
輸出格式:
夾角C的值,保留1位小數。
輸入樣例:
3
4
5
輸出樣例:
90.0
code:
import math a = float(eval(input('請輸入a的邊長'))) b = float(eval(input('請輸入b的邊長'))) c = float(eval(input('請輸入c的邊長'))) print round(math.acos((a*a+b*b-c*c)/(2*a*b))*180/math.pi,1)
這個算小白題了,剛剛接觸Python,第一次提交的時候錯了,要嚴格按題目要求保留一位小數才過的,不能樣例過了就萬事大吉。
補充知識:Python解題-計算sinx
題目
給定一個精度值e,用下列公式計算sin(x)的近似值,要求前后兩次迭代之差的絕對值小于e,給出相應的最小迭代次數n和最后一次計算的sin(x)值。
sin x = x - x3/3! + x5/5! - x7/7! + … + (-1)n-1x2n-1/(2n-1)!
其中x為弧度,n為正整數。
【輸入形式】
從控制臺輸入x( (0<x<=10) )和e( x>e>0 )的值,以一個空格分隔。
【輸出形式】
輸出迭代次數n和最后一次計算的sin(x)的值(以一個空格分隔,并且輸出sin(x)時要求小數點后保留9位有效數字)。
思路
從公式看,每次疊加x^2和(2n-1)*(2n-2),用while來保證精度達標,最后轉換9位小數
代碼
x, e = input().split() x = float(x) e = float(e) b = x a = b sign = 1 x2 = x jc = 1 sin_x = b n = 2 while abs(a+b)>e: #一定是絕對值,a,b一正一負所以直接加就是差值 a = b sign *= -1 x2 *= x * x jc *= (2 * n - 1) * (2 * n - 2) b = sign * x2 / jc sin_x += b n += 1 print(n-2) print("%.9f" % sin_x)
看完上述內容,是不是對如何使用Python三角函數公式計算三角形的夾角有進一步的了解,如果還想學習更多內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。