根號除法怎麼算?
General 更新 2024-12-22
兩根號之間的乘除法怎麼算
根號除法
顯然 √6= √2* √3
所以√6 / √2=√3
於是得到
3√6 /2√2=1.5√2
計算機怎樣進行(除法 乘法 開根號等)運算
計算機裡用的是二進制數
二進制數乘法規則:
無符號乘法:
注意:整數乘2就是把原來的數左移一位,末位補0,比如:101(2進制)*2(10進制)=1010無符號除法:
===========================
有符號數分為反碼(1's Complement)形式和補碼(2's Complement)形式
此處略過,有興趣的自己去查
上面說的大多是整數的情況,浮點數一般用別的格式存儲,比如IEEE 754標準(可以去百度百科看看)
=======================
開根:
這個我不清楚,似乎不是計算機底層的功能。C語言中有為開根寫的函數,所以這要看函數是怎麼實現的。在這裡介紹一下牛頓法開根號,對於計算機實現效率還是比較高的
用牛頓迭代法:如求根號a (a>=0),任取一個正數X_0,用公式X_{n+1}=1/2*(X_n+a/X_n),不斷迭代,直到精度達到要求為止
注:“_”表示下標
C代碼如下:
if(a<0)
{
printf("Error : the number should not be less than zero!");
return -1;
}
double result=1,err=0.0001;
while(abs(result*result-a)>err)
{
result=0.5*(result+a/result);
}
printf("The positive squre root is %lf",result);
return result;