#include stdio.h

創(chuàng)新互聯(lián)主營欽北網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶APP軟件開發(fā),欽北h5微信小程序開發(fā)搭建,欽北網(wǎng)站營銷推廣歡迎欽北等地區(qū)企業(yè)咨詢
double mypow(double x,int n);
double x, result;
scanf("%f%d", x,n);//scanf("%lf%d",x,n);
int i;
double result;
result=1;
for(i=1; i=n; i++)
整數(shù)
是正整數(shù)、零、負(fù)整數(shù)的集合。整數(shù)的全體構(gòu)成整數(shù)集,整數(shù)集是一個數(shù)環(huán)。在整數(shù)系中,零和正整數(shù)統(tǒng)稱為自然數(shù)。-1、-2、-3、…、-n、…(n為非零自然數(shù))為負(fù)整數(shù)。則正整數(shù)、零與負(fù)整數(shù)構(gòu)成整數(shù)系。整數(shù)不包括小數(shù)、分?jǐn)?shù)。
如果不加特殊說明,所涉及的數(shù)都是整數(shù),所采用的字母也表示整數(shù)。
實數(shù)可實現(xiàn)的基本運(yùn)算有加、減、乘、除、乘方等,對非負(fù)數(shù)(即正數(shù)和0)還可以進(jìn)行開方運(yùn)算。實數(shù)加、減、乘、除(除數(shù)不為零)、平方后結(jié)果還是實數(shù)。任何實數(shù)都可以開奇次方,結(jié)果仍是實數(shù),只有非負(fù)實數(shù),才能開偶次方其結(jié)果還是實數(shù)。
四則運(yùn)算的定義
加法:把兩個數(shù)合并成一個數(shù)的運(yùn)算。
減法:已知兩個加數(shù)的和與其中的一個加數(shù),求另一個加數(shù)的運(yùn)算。
乘法:求兩個數(shù)的乘積的運(yùn)算。
四則運(yùn)算的定義與四則運(yùn)算的法則
(1)一個數(shù)乘整數(shù),是求幾個相同加數(shù)和的簡便運(yùn)算。
(2)一個數(shù)乘小數(shù),是求這個數(shù)的十分之幾、百分之幾、千分之幾……是多少。
(3)一個數(shù)乘分?jǐn)?shù),是求這個數(shù)的幾分之幾是多少。
除法:已知兩個因數(shù)的積與其中的一個因數(shù),求另一個因數(shù)的運(yùn)算。
四則運(yùn)算的法則
(1)加法和減法:同單位的數(shù)相加減,單位不變,單位的個數(shù)相加減。
①整數(shù)、小數(shù):相同數(shù)位對齊(小數(shù)點對齊);從低位算起;加法中滿幾十就向前一位進(jìn)幾,減法中不夠減時,就從高一位借1當(dāng)10。
②分?jǐn)?shù):同分母分?jǐn)?shù)相加減,分母不變,分子相加減;異分母分?jǐn)?shù)相加減,先通分,再按同分母分?jǐn)?shù)加減法則計算,計算結(jié)果能約分的要約分。
(2)乘法
①整數(shù):從個位乘起,依次用第二個因數(shù)各位上的數(shù)去乘第一個因數(shù)各位上的數(shù);用第二個因數(shù)哪一位上的數(shù)去乘,積的末位就和第二個因數(shù)的那一位對齊,最后把各部分的積相加。
②小數(shù):先按整數(shù)乘法的法則算出積;看兩個因數(shù)中一共有幾位小數(shù),就從積的右邊起數(shù)出幾位,點上小數(shù)點(位數(shù)不夠時,用0補(bǔ)足)。
③分?jǐn)?shù):分?jǐn)?shù)與整數(shù)相乘,用整數(shù)與分子的積作為分子,分母不變;分?jǐn)?shù)與分?jǐn)?shù)相乘,用分子相乘的積作為分子,用分母相乘的積作為分母,計算結(jié)果能約分的要約分。
(3)除法
①整數(shù):除數(shù)是幾位數(shù),就看被除數(shù)的前幾位,如果不夠商1,被除數(shù)就多看一位后再試商。除到被除數(shù)的哪一位,商就寫在那一位的上面,每次除得的余數(shù)都必須比除數(shù)小。
②小數(shù):除數(shù)是整數(shù)的小數(shù)除法,按整數(shù)除法的法則進(jìn)行計算,商的小數(shù)點要和被除數(shù)的小數(shù)點對齊;除數(shù)是小數(shù)的小數(shù)除法,先移動除數(shù)的小數(shù)點,使除數(shù)變成整數(shù),同時把被除數(shù)的小數(shù)點向右移動相同的位數(shù)(位數(shù)不夠,添0補(bǔ)足),然后按除數(shù)是整數(shù)的小數(shù)除法進(jìn)行計算。
③分?jǐn)?shù):一個數(shù)除以分?jǐn)?shù),等于乘這個數(shù)的倒數(shù)。
Go中數(shù)值類型可細(xì)分為整數(shù)、浮點數(shù)、復(fù)數(shù)三種,每種都具有不同的大小范圍和正負(fù)支持。
整型分為兩大類
Go提供了有符號和無符號的整數(shù)類型,同時提供四種大小不同的整數(shù)類型。
取值范圍
等價類型
特殊整型
int 和 uint 分別對應(yīng)特定CPU平臺的字長(機(jī)器字大小),大小范圍在 32bit 或 64bit 之間變化,實際開發(fā)中由于編譯器和硬件不同而不同。
進(jìn)制轉(zhuǎn)換
轉(zhuǎn)換函數(shù)
使用注意
字節(jié)長度
Golang提供了兩種精度的浮點數(shù)分別為 float32 和 float64 ,它們的算術(shù)規(guī)范由IEEE754浮點數(shù)國際標(biāo)準(zhǔn)定義,IEEE754浮點數(shù)標(biāo)準(zhǔn)被現(xiàn)代CPU支持。
float32 類型的浮點數(shù)可提供約6個十進(jìn)制數(shù)的精度, float64 類型的浮點數(shù)可提供約15個十進(jìn)制數(shù)的精度。通常會優(yōu)先選擇使用 float64 ,因為 float32 累計計算誤差會比較容易擴(kuò)散。
計算機(jī)中復(fù)數(shù)(complex)由兩個浮點數(shù)表示,一個表示實部(real)一個表示虛部(imag)。
Go語言中復(fù)數(shù)的值由三部分組成 RE + IMi ,分別是實數(shù)部分 RE 、虛數(shù)部分 IM 、虛數(shù)單位 i , RE 和 IM 均為 float 。
Go語言提供兩種類型的復(fù)數(shù),分別是 complex64 即32位實數(shù)和虛數(shù), complex128 即64位實數(shù)和虛數(shù), complex128 為復(fù)數(shù)的默認(rèn)類型。
復(fù)數(shù)聲明
z 表示復(fù)數(shù)的變量名, complex128 表示復(fù)數(shù)類型, complex() 內(nèi)置函數(shù)用于為復(fù)數(shù)賦值。 x 和 y 分別表示構(gòu)成該復(fù)數(shù)的兩個 float64 類型的值, x 為實部, y 為虛部。
簡寫形式
對于 z 值可通過內(nèi)置函數(shù) real(z) 獲取該復(fù)數(shù)的實部,使用 imag(z) 獲取虛部。
Go語言作為出現(xiàn)比較晚的一門編程語言,在其原生支持高并發(fā)、云原生等領(lǐng)域的優(yōu)秀表現(xiàn),像目前比較流行的容器編排技術(shù)Kubernetes、容器技術(shù)Docker都是用Go語言寫的,像Java等其他面向?qū)ο蟮恼Z言,雖然也能做云原生相關(guān)的開發(fā),但是支持的程度遠(yuǎn)沒有Go語言高,憑借其語言特性和簡單的編程方式,彌補(bǔ)了其他編程語言一定程度上的不足,一度成為一個熱門的編程語言。
最近在學(xué)習(xí)Go語言,我之前使用過C#、Java等面向?qū)ο缶幊痰恼Z言,發(fā)現(xiàn)其中有很多的編程方式和其他語言有區(qū)別的地方,好記性不如爛筆頭,總結(jié)一下,和其他語言做個對比。這里只總結(jié)差異的地方,具體的語法不做詳細(xì)的介紹。
種一棵樹最好的時間是十年前,其次是現(xiàn)在。
3)變量初始化時候可以和其他語言一樣直接在變量后面加等號,等號后面為要初始化的值,也可以使用變量名:=變量值的簡單方式
3)變量賦值 Go語言的變量賦值和多數(shù)語言一致,但是Go語言提供了多重賦值的功能,比如下面這個交換i、j變量的語句:
在不支持多重賦值的語言中,交換兩個變量的值需要引入一個中間變量:
4)匿名變量
在使用其他語言時,有時候要獲取一個值,卻因為該函數(shù)返回多個值而不得不定義很多沒有的變量,Go語言可以借助多重返回值和匿名變量來避免這種寫法,使代碼看起來更優(yōu)雅。
假如GetName()函數(shù)返回3個值,分別是firstName,lastName和nickName
若指向獲得nickName,則函數(shù)調(diào)用可以這樣寫
這種寫法可以讓代碼更清晰,從而大幅降低溝通的復(fù)雜度和維護(hù)的難度。
1)基本常量
常量使用關(guān)鍵字const 定義,可以限定常量類型,但不是必須的,如果沒有定義常量的類型,是無類型常量
2)預(yù)定義常量
Go語言預(yù)定義了這些常量 true、false和iota
iota比較特殊,可以被任務(wù)是一個可被編譯器修改的常量,在每個const關(guān)鍵字出現(xiàn)時被重置為0,然后在下一個const出現(xiàn)之前每出現(xiàn)一個iota,其所代表的數(shù)字會自動加1.
3)枚舉
1)int 和int32在Go語言中被認(rèn)為是兩種不同類型的類型
2)Go語言定義了兩個浮點型float32和float64,其中前者等價于C語言的float類型,后者等價于C語言的double類型
3)go語言支持復(fù)數(shù)類型
復(fù)數(shù)實際上是由兩個實數(shù)(在計算機(jī)中使用浮點數(shù)表示)構(gòu)成,一個表示實部(real)、一個表示虛部(imag)。也就是數(shù)學(xué)上的那個復(fù)數(shù)
復(fù)數(shù)的表示
實部與虛部
對于一個復(fù)數(shù)z=complex(x,y),就可以通過Go語言內(nèi)置函數(shù)real(z)獲得該復(fù)數(shù)的實部,也就是x,通過imag(z)獲得該復(fù)數(shù)的虛部,也就是y
4)數(shù)組(值類型,長度在定義后無法再次修改,每次傳遞都將產(chǎn)生一個副本。)
5)數(shù)組切片(slice)
數(shù)組切片(slice)彌補(bǔ)了數(shù)組的不足,其數(shù)據(jù)結(jié)構(gòu)可以抽象為以下三個變量:
6)Map 在go語言中Map不需要引入任何庫,使用很方便
Go循環(huán)語句只支持for關(guān)鍵字,不支持while和do-while
goto語句的語義非常簡單,就是跳轉(zhuǎn)到本函數(shù)內(nèi)的某個標(biāo)簽
今天就介紹到這里,以后我會在總結(jié)Go語言在其他方面比如并發(fā)編程、面向?qū)ο蟆⒕W(wǎng)絡(luò)編程等方面的不同及使用方法。希望對大家有所幫助。
#includeiostream.h
#include stdio.h
struct shuzi
{
char number;
shuzi *left;
shuzi *right;
};
void chushi(shuzi *,int ,int );
void jiafa(shuzi *,shuzi *);
void jianfa(shuzi *,shuzi *);
void shuchu(shuzi *,int);
void main()
{
char fuhao;
int a,b,n;
int c1,c2,c3;
shuzi *head1,*head2,*t,*p,*q;
cout"請按每3位1組,組間用逗號隔開的方式輸入兩個長整數(shù),每輸入完一個請按回車表示輸入完畢:"endl;
chushi(head1,a,c1);
chushi(head2,b,c2);
coutendl"請選擇需要進(jìn)行的運(yùn)算,加法請輸入+,減法請輸入- :";
cinfuhao;
cout"運(yùn)行的結(jié)果是:"endl;
switch (fuhao)
{
case'+':c3=0;break;
case'-':c3=1;break;
default:cout"error"endl;return;
}
c2=c2+c3;
if (c2==2)
c2=0;
if (ba)
{
t=head1;
head1=head2;
head2=t;
n=a;
a=b;
b=n;
n=c1;
c1=c2;
c2=n;
}
while (ab)
{
t=new shuzi;
t-number='0';
t-left=NULL;
t-right=head2;
head2-left=t;
head2=t;
b=b+1;
}
if (c1==0 c2==0)
jiafa(head1,head2);
else
if (c1==1 c2==1)
{
cout"-";
jiafa(head1,head2);
}
else
{
if (a==b)
{
p=head1;
q=head2;
while (p-number==q-number p-right!=NULL)
{
p=p-right;
q=q-right;
}
if (p-number==q-number)
{
cout"0"endl;
return;
}
if (q-numberp-number)
{
t=head1;
head1=head2;
head2=t;
n=c1;
c1=c2;
c2=n;
}
}
if (c1==1)
cout"-";
jianfa(head1,head2);
}
shuchu(head1,a+1);
}
void chushi(shuzi * head,int n,int m)
{
char c;
shuzi *s,*p;
n=0;
s=new shuzi;
c=getchar();
head=NULL;
if (c=='-')
{
m=1;
c=getchar();
}
else m=0;
while (c!='\n')
{
if (c==',')
{
c=getchar();
continue;
}
s-number=c;
if (head==NULL)
{
head=s;
head-left=NULL;
head-right=NULL;
p=head;
}
else
{
s-left=p;
s-right=NULL;
p-right=s;
p=s;
}
n=n+1;
s=new shuzi;
c=getchar();
}
delete s;
p=new shuzi;
p-number='0';
p-left=NULL;
p-right=head;
head-left=p;
head=p;
}
void shuchu(shuzi *head,int a)
{
shuzi *s;
s=head;
while (s-number=='0' s-right!=NULL)
{
s=s-right;
a=a-1;
}
if (s-number=='0')
{
cout"0"endl;
return;
}
while (s-right!=NULL)
{
couts-number;
a=a-1;
if (a%3==0 a!=0) cout',';
s=s-right;
}
couts-number;
coutendl;
}
void jiafa(shuzi *head1,shuzi *head2)
{
shuzi *p,*q;
int a,b,m,t;
p=head1;
q=head2;
while (p-right!=NULL)
p=p-right;
while (q-right!=NULL)
q=q-right;
m=0;
do
{
a=p-number-'0';
b=q-number-'0';
t=a+b+m;
m=t/10;
t=t%10;
p-number='0'+t;
p=p-left;
q=q-left;
}while (q!=NULL);
}
void jianfa(shuzi *head1,shuzi *head2)
{
shuzi *p,*q;
int a,b,t,m;
p=head1;
q=head2;
while (p-right!=NULL)
p=p-right;
while (q-right!=NULL)
q=q-right;
m=0;
do
{
a=p-number-'0';
b=q-number-'0';
t=a-b+m;
if (t0 p-left!=NULL)
{
m=-1;
t=t+10;
}
else m=0;
p-number='0'+t;
p=p-left;
q=q-left;
}while (q!=NULL);
}
#include stdio.h
main()
{
int k,i;
double x,n=1;
printf("input:");
scanf("%d%lf",k,x);//輸入k x
for(i=0;ik;i++)//用循環(huán)實現(xiàn)
n*=x;
printf("%lf的%d次方為%lf\n",x,k,n);//輸出
}
分享標(biāo)題:go語言整數(shù)實數(shù)混合計算的簡單介紹
鏈接URL:http://chinadenli.net/article38/docijpp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計公司、標(biāo)簽優(yōu)化、全網(wǎng)營銷推廣、服務(wù)器托管、網(wǎng)站維護(hù)、域名注冊
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)