程序计算麻将游戏的思路

时间:2019-05-13 03:46:13下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《程序计算麻将游戏的思路》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《程序计算麻将游戏的思路》。

第一篇:程序计算麻将游戏的思路

程序计算麻将游戏的思路

(789游戏中心)

问:在789游戏中心,如果其它三家中,某一个人手上有且只有一个“东风”,那么,他会把这个“东风”打到海里去的可能性是90%。到了第9圈后(河里还有52张牌,其它三家手上共有39张牌,自己手上也有13张牌),自己手上有一个“东风”,可是其它三家都没有打“东风”,那么,其它三家里的某一家有一对“东风”的可能性是多大?

【计算方法】

无法用简单的算式表示。虽然逐条详细的写出来也不是不可以,但是还是交给程序计算比较好。

如果单单使用判断全部的排列组合是否是和牌型这种方法,花费的将是天文时间。

采用的是下面的计算顺序。

(1)除去七对子和国士无双,和牌型中,字牌,万,筒,索的张数可能为0张,2张,3张,5张,6张,8张,9张,11张,12张,14张。

(2)根据上述的张数,计算字牌与数牌每种(n个面子+最多1个雀头)的排列组合数,这时顺便计算出所有牌都是对子的排列组合数。

(3)根据四种牌合计14张的组合,计算其排列组合数,不过雀头只能有一个,5张字,5张万,2张筒,2张索这种不可能发生的组合是不计算在内的。

(4)从上述的结果中,去掉形为七对子的牌型。

(5)计算七对子的和牌型的排列组合数。

七对子的和牌型排列组合数为34C7

包括重复的排列组合数为34C7×67

(6)计算国士无双和牌型的排列组合数。

国士无双和牌型的排列组合共有13种

包括重复的排列组合数为13×6×412

(7)加算上(4)~(6)合计的排列组合数(包括重复),可以计算出其概率。总共的所有排列组合(包括重复)为136C14

(8)程序计算并没有花费太多的时间,可以确认程序是正常运行的。同样计算出(1)~(3)的所有排列组合数(包括重复)。计算字牌与数牌的0~14张所有的排列组合,四种牌合计14张的所有组合数。

第二篇:麻将翻数计算(精)[推荐]

1◇◆一条龙3种花色的3副顺子连接成1-9的序数牌

2◇◆推不倒 由牌面图形没有上下区别的牌组成的和牌,包括1234589饼、245689条、白板。不计缺一门

3◇◆海底捞月 和打出的最后一张牌

4◇◆妙手回春 自摸牌墙上最后一张牌和牌。不计自摸

5◇◆杠上开花 开杠抓进的牌成和牌(不包括补花)不计自摸

6◇◆三色节节高 和牌时,有3种花色3副依次递增一位数的刻子

7◇◆三色三同顺 和牌时,有3种花色3副序数相同的顺子

8◇◆无番和 和牌后,数不出任何番种分(花牌不计算在内)

9◇◆抢杠和 和别人自抓开明杠的牌。不计和绝张

从实践来看,第1、6、7是常用的牌型,也比较好打,容易成牌,应该是新打国标的朋友必须掌握的牌型。第2、5、9种牌型是靠手气的,有点儿运气成分在里面。第8种是一个技术难度高的牌,新手不容易成牌。第3、4两种牌型是打牌至快结束时,已无法计番而只要保留可以成牌的打子,最后碰运气而已。

■▲▲■㈡次选牌型:12番

1◇◆组合龙 3种花色的147、258、369不能错位的序数牌

2◇◆十三不靠 由单张3种花色147、258、369不能错位的序数牌及东南西北中发白中的任何14张牌组成的和牌。不计五门齐、不求人、单钓

3◇◆大于五 由序数牌6-9的顺子、刻子、将牌组成的和牌。不计无字

4◇◆小于五 由序数牌1-4的顺子、刻子、将牌组成的和牌。不计无字

5◇◆三风刻 3个风刻

这几个牌型也是国标常用牌型。只要起手有符合这几种牌型的8张以上,就可尝试。特别是十三不靠,如果东、南、西、北、中、发、白都有的话,就可以打成七星不靠(24番)。而大于五和小于五都很容易向全大和全小(24番)变化。■▲▲■㈢再选牌型:16番

1◇◆青龙 和牌时,有一种花色1-9相连接的序数牌

2◇◆全带五 每副牌及将牌必须有5的序数牌。不计断幺

3◇◆一色三步高 和牌时,有一种花色3副依次递增一位或依次递增二位数字的顺子

4◇◆三同刻 3个序数相同的刻子(杠)

5◇◆三色双龙会 2种花色2个老少副、另一种花色5作将的和牌。不计喜相逢、老少副、无字、平和

6◇◆三暗刻 3个暗刻

这几种牌型也是最常打的国标牌型。青龙和一色三步高的变化是相互的,所以,在靠牌时应特别注意,不要将一色中多余的一张在够牌之前打掉,是很容易互相转化的。全带五主要看起手的牌,这种牌变化也多,可以打成三色三同顺、三色三步高,也可以打成全中,在国标麻将中,这也是变化较多的一种牌型。三色双龙会的难度比较大,给人感觉国标将此种牌型的番数定的偏低。

■▲▲■㈣国标小番:6番~4番

○○○◆6番

1◇◆三色三步高 3种花色3副依次递增一位序数的顺子

2◇◆混一色 由一种花色序数牌及字牌组成的和牌

3◇◆五门齐 和牌时3种序数牌、风、箭牌齐全

4◇◆双箭刻 2副箭刻(或杠)

5◇◆全求人 全靠吃牌、碰牌、单钓别人批出的牌和牌。不计单钓

6◇◆碰碰和 由4副刻子(或杠)、将牌组成的和牌

7◇◆双暗杠 2个暗杠

这是一般的国标选手喜欢使用的牌型,因为这些牌型来得快、容易成牌,再用一些小番补充,很快就能听牌。其中三色三步高、五门齐是国标老手喜欢的牌型,混一色、全求人、碰碰胡是一些国标新手喜欢选用的牌型。但是这些牌有一个缺点是牌型明显,对于国标老手来说很容易看出对方所听的牌型。双箭刻、双暗杠主要是手气,一般是碰上了这些牌型就可以听牌,但专门打这种牌型的人很少,没有手气是很难打成的。

○○○◆4番

1◇◆全带幺 和牌时,每副牌、将牌都有幺牌

2◇◆和决张 和牌池、桌面已亮明的3张牌所剩的第4张牌(抢杠和不计和绝张)

3◇◆不求人 4副牌及将中没有吃牌、碰牌(包括明杠),自摸和牌

4◇◆双明杠 2个明杠

这些是国标小番的的补充牌,如果配合其他零星牌型(1番和2番的牌型),可以作为胡牌的简单打法。这些牌型也是在起手牌很差的情况下惯用的牌型。但是由于算番侧重于小番,打这几个牌型的朋友必须熟悉小番的算法,因此,国标老手们使用这些牌型的多,新人用这些牌型胡牌,一般是撞大运的。■▲▲■㈤国标中番:24番~48番

○○○◆24番

1◇◆七星不靠 必须有7个单张的东西南北中发白,加上3种花色,数位按147、258、369中的7张序数牌组成没有将牌的和牌。不计五门齐、不求人、单钓

2◇◆七小对 由7个对子组成和牌。不计不求人、单钓

3◇◆全双刻 由2、4、6、8序数牌的刻了、将牌组成的和牌。不计碰碰和、断幺

4◇◆全大 由序数牌789组成的顺了、刻子(杠)、将牌的和牌。不计无字

5◇◆全中 由序数牌456组成的顺子、刻子(杠)、将牌的和牌。不计断幺

6◇◆全小 由序数牌123组成的顺子、刻子(杠)将牌的的和牌。不计无字

7◇◆一色三节高 和牌时有一种花色3副依次递增一位数字的刻了。不计一色三同顺

8◇◆一色三同顺 和牌时有一种花色3副序数相同的顺了。不计一色三节高

9◇◆清一色 由一种花色的序数牌组成和各牌。不无字

这是一般国标高手喜欢使用的牌型,特别是在和菜鸟打牌时,由于新手听牌慢,所以,他们就喜欢用这些牌型以求得到高分。当然,在正式比赛时,也喜欢用这些牌型。以七星不靠、全大、全中、全小、清一色这几个牌型来说,变化多,可以由低番牌十三不靠、大于

五、全带

五、小于

五、青龙等变化而来,所以,这些牌型为多数国标老手所喜爱。七小对、全双刻主要是以起手的牌型所决定,手气对这两个牌型比较重要。一色三节高和一色三同顺是比较难打的,但三节高容易成牌,只要有一色两同顺,就可以发狠劲等牌。

○○○◆32番

1◇◆混幺九 由字牌和序数牌一、九的刻了用将牌组成的各牌。不计碰碰和

2◇◆一色四步高 一种花色4副依次递增一位数或依次递增二位数的顺子

3◇◆三杠 3个杠

总体来说,这三种牌型都有一定的难度,如果硬性去打其中的一种牌型是很难的,必须有好的起手牌,才有可能打成。三杠是不容易的,除了牌技以外,运气占多数;一色四步高相对来说是容易成牌的,它在一色三步高的基础上可以变化而来;混幺九如果起手幺九牌对子较多,就有可能打成。

○○○◆48番

1◇◆一色四节高 一种花色4副序数相同的顺子,不计一色三节高、一般高、四归一

2◇◆一色四同顺 一种花色4副依次递增一位数的刻子不计一色三同顺、碰碰和

这两种牌型如果打成了是非常好看的,但是,其难度是显而易见的,“只可意会,不可强求”!■▲▲■㈥国标高番:64番~88番

○○○◆64番

1◇◆小四喜 和牌时有风牌的3副刻子及将牌。不计三风刻

2◇◆小三元 和牌时有箭牌的两副刻子及将牌。不计箭刻

3◇◆清幺九 由序数牌一、九刻子组成的和牌。不计碰碰和、同刻、元字

4◇◆一色双龙会 一种花色的两个老少副,5为将牌。不计平各、七对、清一色

5◇◆字一色 由字牌的刻子(杠)、将组成的和牌。不计碰碰和

6◇◆四暗刻 4个暗刻(暗杠)。不计门前清、碰碰和

高番牌的打法已经不重要了,主要在心理和战略上。没有良好的心理准备和战略观念,遇到可以胡中番和小番的就会胡牌。这个里面的小三元是最容易打成的高番牌型,给人的感觉是定番太高,难度小,和其他高番牌相比出现的机率也是最高的(非经正式统计)。一色双龙会是惟一技巧性强一些的牌型。

○○○◆88番

1◇◆四杠 4个杠

2◇◆九莲宝灯 由一种花色序数牌子按1112345678999组成的特定牌型,见同花色任何1张序数牌即成和牌。不计清一色

3◇◆绿一色 由23468条及发字中的任何牌组成的顺子、刻

五、将的和牌。不计混一色。如无“发”字组成的各牌,可计清一色

4◇◆大三元 和牌中,有中发白3副刻子。不计箭刻

5◇◆大四喜 由4副风刻(杠)组成的和牌。不计圈风刻、门风刻、三风刻、碰碰和

6◇◆连七对 由一种花色序数牌组成序数相连的7个对子的和牌。不计清一色、不求人、单钓

7◇◆十三幺 由3种序数牌的一、九牌,7种字牌及其中一对作将组成的和牌。不计五门齐、不求人、单钓

这几种牌型是国标麻将中的极品,打成的话最少会高兴两三天吧!这里面有两个牌型值得注意,一个是九莲宝灯,这是个争议比较多的牌型,主要是这个牌型成牌的过程和最终的牌型,容易引起误解。从国标的规则来说是注重成牌的过程的,所以,即使最终的牌型和九莲宝灯一样,但如果成牌过程有差别,可能不会算88高番的。另一个是大三元,应该说,这个牌型是容易打成的,和小三元的观念一样,只要心狠一些,成牌早,就完全可以打成。这几个高番牌里面还有一个牌型很有意思,就是绿一色,这个牌在起手条子好的情况下不妨一试,如果有发财助威,打成的可能性更大。并且这个牌型也很好看,绿绿的。我胡过这个牌,感觉很爽!其他的就不说了,如果胡了,你的对家和上下家会觉得你是“匪夷所思、天公造物”!

■▲▲■㈦国标零星小番:1番~2番

○○○◆2番

1◇◆断幺九 和牌中没有一、九及字牌 1 番

2◇◆四归一 和牌中,有4张相同的牌归于一家的顺、刻子、对、将牌中(不包括杠牌)

3◇◆平和 由4副顺子及序数牌作将组成的和牌,边、坎、钓不影响平和

4◇◆双暗刻 2个暗刻

5◇◆两同刻 2副序数相同的刻子

6◇◆圈风刻 与圈风相同的风刻

7◇◆门风刻 与本门风相同的风刻

8◇◆箭刻 由中、发、白3张相同的牌组成的刻子

9◇◆门清 没有吃、碰、明杠,和别人打出的牌

10◇◆暗杠 自抓4张相同的牌开杠

○○○◆1番

1◇◆老少配 一种花色牌的123、789两副顺子

2◇◆一般高 由一种花色2副相同的顺子组成的牌

3◇◆缺一门 和牌中缺少一种花色序数牌

4◇◆无字 和牌中没有风、箭牌

5◇◆幺九刻 3张相同的一、九序数牌及字牌组成的刻子(或杠)

6◇◆六连张 一种花色6张相连接的序数牌

7◇◆镶边

8◇◆嵌单 和2张牌之间的牌。4556和5也为坎张,手中有45567和6不算坎张

9◇◆单钓 钓单张牌作将成和

10◇◆自摸 自己抓进牌成和牌

11◇◆明杠 自己有暗刻,碰别人打出的一张相同的牌开杠:或自己抓进一张与碰的明刻相同的牌开杠

12◇◆喜相逢 2种花色2副序数相同的顺子

13◇◇花牌 即春夏秋冬,梅兰竹菊,每花计一分。不计在起和分内,和牌后才能计分。花牌补花成和计自摸分,不计杠上开花

自从打国标麻将以来,我终于认识到“细微之处见精神”,只有那些国标老手,特别是高手们是完全掌握了这些零星番牌的。对于“先听三分胡”、“胡牌才是最大”的道理也有了深刻理解。在成牌过程中,掌握这些零星番牌会受益非浅。首先,可以掌握先机:在牌型一般的情况下,掌握先机会扭转牌运,当牌运转好,则可以做高番大牌,其胡牌机率也会相应提高。比如:在作五门齐时,有两对时,应该先碰门风或者圈风或者幺九刻,这样听牌和胡牌都会容易一些。同时,掌握这些零星番牌也可以提高胡牌的质量,如混一色牌型,幺九刻、老少配、六连张都会提高番数,虽说只是1番2番,但这代表的是胡牌的质量和打牌者的水平。

第三篇:游戏麻将追剧

剧本:

小黑、小勇和雯雯在办公室里睡觉,老板走进了办公室说—— 老板:你们三个怎么回事?这个年底了,大家都在认真工作,你们睡觉。干啥去了?昨晚。小勇:昨晚我和朋友进行了战争的相片演练,遵循商级战场的理念。我昨晚通宵读史。本着以史为鉴的态度。分析古人性心理共性,将古代错综复杂的宫廷和官场斗争进行系统的总结。小黑:我昨晚和朋友进行了抽样统计实验,从 144 个样品中,随机抓取 13 个样品。从中不断更换排列,以找到最高价值。

老板:把你们调到销售部。短短两个星期。就把打麻将、打游戏、追剧,说的这么清新脱俗。人才啊,好好干!

拍摄建议:

1. 有字幕。

第四篇:电力系统潮流计算程序

电力系统潮流计算c语言程序,两行,大家可以看看,仔细研究,然后在这个基础上修改。谢谢

#include “stdafx.h” #include #include #include

#include“Complex.h” #include“wanjing.h” #include“gauss.h” using namespace std;

int _tmain(int argc, _TCHAR* argv[]){

int i;

//i作为整个程序的循环变量

int N=Bus::ScanfBusNo();//输入节点个数

int L=Line::ScanflineNo();//输入支路个数

if((L&&N)==0){return 0;} //如果找不到两个文件中的任意一个,退出

Line *line=new Line[L];//动态分配支路结构体

Line::ScanfLineData(line);//输入支路参数

Line::PrintfLineData(line,L);//输出支路参数

Bus *bus=new Bus[N];//动态分配结点结构体

for(int i=0;i

bus[i].Sdelta.real=0;

bus[i].Sdelta.image=0;}

Bus::ScanfBusData(bus);//输入节点参数

Bus::PrintfBusData(bus,N);//输出结点参数

Complex **X;X=new Complex *[N];for(i=0;i

Bus::JisuanNodeDnz(X,line,bus,L,N);//计算节点导纳矩阵

Bus::PrintfNodeDnz(X,N);//输出节点导纳矩阵

int NN=(N-1)*2;double **JacAug;JacAug=new double *[NN];for(i=0;i

double *x;x=new double[NN];int count=1;

LOOP:

Bus::JisuanNodeI(X,bus,N);//计算节点注入电流

Bus::JisuanNodeScal(X,bus,N);//计算节点功率

Bus::JisuanNodeScal(X,bus,N);//计算节点功率

Bus::JisuanNodeSdelta(bus,N);//计算节点功率差值

Bus::PrintfNodeScal(X,bus,N);//输出节点功率差值

int icon=wehcon1(bus,N);//whether converbence看迭代是否结束

if(icon==1){

cout<<“icon=”<

Bus::JisuanJacAug(JacAug,X,bus,N);//计算雅可比增广矩阵 // Bus::PrintfJacAug(JacAug,N);

gauss::gauss_slove(JacAug,x,NN);//解方程组求出电压差值

Bus::ReviseNodeV(bus,x,N);//修正节点电压

// Bus::PrintfNodeV(bus,N);

count++;

goto LOOP;}

else

{

for(i=0;i

{

int statemp,endtemp;

Complex aa,bb,cc,dd,B;

B.real=0;

B.image=-line[i].B;

statemp=line[i].start;

endtemp=line[i].end;

aa=Complex::productComplex(Complex::getconj(bus[statemp-1].V), B);

bb=Complex::subComplex

(Complex::getconj(bus[statemp-1].V), Complex::getconj(bus[endtemp-1].V));

cc=Complex::productComplex(bb , Complex::getconj(line[i].Y));

dd=Complex::CaddC(aa,cc);

line[i].stoe=Complex::productComplex(bus[statemp-1].V,dd);

aa=Complex::productComplex(Complex::getconj(bus[endtemp-1].V), B);

bb=Complex::subComplex

(Complex::getconj(bus[endtemp-1].V), Complex::getconj(bus[statemp-1].V));

cc=Complex::productComplex(bb , Complex::getconj(line[i].Y));

dd=Complex::CaddC(aa,cc);

line[i].etos=Complex::productComplex(bus[endtemp-1].V,dd);

}

cout<<“icon=”<

Bus::JisuanNodeScal(X,bus,N);//计算节点功率

for(i=0;i

{

bus[i].Scal.real = bus[i].Scal.real + bus[i].Load.real;//发电机功率=注入功率+负荷功率

bus[i].Scal.image= bus[i].Scal.image+ bus[i].Load.image;

bus[i].V=Complex::Rec2Polar(bus[i].V);

}

cout<<“====节点电压===============发电机发出功率======”<

for(i=0;i

{

cout<<“节点”<<(i+1)<<'t';

Complex::PrintfComplex(bus[i].V);

coutt(bus[i].Scal.real);

coutt(bus[i].Scal.image);

cout<

}

cout<<“======线路传输功率==========”<

for(i=0;i

{

int statemp,endtemp;

statemp=line[i].start;

endtemp=line[i].end;

cout<

Complex::PrintfComplex(Complex::ComDivRea(line[i].stoe,0.01));

Complex::PrintfComplex(Complex::ComDivRea(line[i].etos,0.01));

cout<

} }

return 0;}

#include “stdafx.h” #include #include #include

#include“Complex.h” #include“wanjing.h” #include“gauss.h” using namespace std;

int _tmain(int argc, _TCHAR* argv[]){

int i;

//i作为整个程序的循环变量

int N=Bus::ScanfBusNo();//输入节点个数

int L=Line::ScanflineNo();//输入支路个数

if((L&&N)==0){return 0;} //如果找不到两个文件中的任意一个,退出

Line *line=new Line[L];//动态分配支路结构体

Line::ScanfLineData(line);//输入支路参数

Line::PrintfLineData(line,L);//输出支路参数

Bus *bus=new Bus[N];//动态分配结点结构体

for(int i=0;i

bus[i].Sdelta.real=0;

bus[i].Sdelta.image=0;}

Bus::ScanfBusData(bus);//输入节点参数

Bus::PrintfBusData(bus,N);//输出结点参数

Complex **X;X=new Complex *[N];for(i=0;i

Bus::JisuanNodeDnz(X,line,bus,L,N);//计算节点导纳矩阵

Bus::PrintfNodeDnz(X,N);//输出节点导纳矩阵

int NN=(N-1)*2;double **JacAug;JacAug=new double *[NN];for(i=0;i

double *x;x=new double[NN];int count=1;

LOOP:

Bus::JisuanNodeI(X,bus,N);//计算节点注入电流

Bus::JisuanNodeScal(X,bus,N);//计算节点功率

Bus::JisuanNodeScal(X,bus,N);//计算节点功率

Bus::JisuanNodeSdelta(bus,N);//计算节点功率差值 Bus::PrintfNodeScal(X,bus,N);//输出节点功率差值

int icon=wehcon1(bus,N);//whether converbence看迭代是否结束

if(icon==1){

cout<<“icon=”<

Bus::JisuanJacAug(JacAug,X,bus,N);//计算雅可比增广矩阵

// Bus::PrintfJacAug(JacAug,N);

gauss::gauss_slove(JacAug,x,NN);//解方程组求出电压差值

Bus::ReviseNodeV(bus,x,N);//修正节点电压

// Bus::PrintfNodeV(bus,N);

count++;

goto LOOP;}

else

{

for(i=0;i

{

int statemp,endtemp;

Complex aa,bb,cc,dd,B;

B.real=0;

B.image=-line[i].B;

statemp=line[i].start;

endtemp=line[i].end;

aa=Complex::productComplex(Complex::getconj(bus[statemp-1].V), B);

bb=Complex::subComplex

(Complex::getconj(bus[statemp-1].V), Complex::getconj(bus[endtemp-1].V));

cc=Complex::productComplex(bb , Complex::getconj(line[i].Y));

dd=Complex::CaddC(aa,cc);

line[i].stoe=Complex::productComplex(bus[statemp-1].V,dd);

aa=Complex::productComplex(Complex::getconj(bus[endtemp-1].V), B);

bb=Complex::subComplex

(Complex::getconj(bus[endtemp-1].V), Complex::getconj(bus[statemp-1].V));

cc=Complex::productComplex(bb , Complex::getconj(line[i].Y));

dd=Complex::CaddC(aa,cc);

line[i].etos=Complex::productComplex(bus[endtemp-1].V,dd);

}

cout<<“icon=”<

Bus::JisuanNodeScal(X,bus,N);//计算节点功率

for(i=0;i

{

bus[i].Scal.real = bus[i].Scal.real + bus[i].Load.real;//发电机功率=注入功率+负荷功率

bus[i].Scal.image= bus[i].Scal.image+ bus[i].Load.image;

bus[i].V=Complex::Rec2Polar(bus[i].V);

}

cout<<“====节点电压===============发电机发出功率======”<

for(i=0;i

{

cout<<“节点”<<(i+1)<<'t';

Complex::PrintfComplex(bus[i].V);

coutt(bus[i].Scal.real);

coutt(bus[i].Scal.image);

cout<

}

cout<<“======线路传输功率==========”<

for(i=0;i

{

int statemp,endtemp;

statemp=line[i].start;

endtemp=line[i].end;

cout<

Complex::PrintfComplex(Complex::ComDivRea(line[i].stoe,0.01));

Complex::PrintfComplex(Complex::ComDivRea(line[i].etos,0.01));

cout<

} }

return 0;}

#include using namespace std;

class Complex//定义复数类 { public: double real;double image;int

RecPolar;//0表示直角坐标,1表示极坐标

static Complex CaddC(Complex c1,Complex c2);//求两个复数和

static Complex subComplex(Complex c1,Complex c2);//求两个复数差

static Complex productComplex(Complex c1,Complex c2);//求两个复数积

static Complex divideComplex(Complex c1,Complex c2);//求两个复数商

static Complex ComDivRea(Complex c1,double r2);//除数

static Complex getconj(Complex c1);//求一个复数共轭

static Complex getinverse(Complex c1);//取倒数

static double getComplexReal(Complex c1);//求一个复数实部

static double getCompleximage(Complex c1);//求一个复数虚部

static void PrintfComplex(Complex c1);//显示一个复数

static void PrintfmultiComplex(Complex C,int N);//显示多个复数

static void zeroComplex(Complex c1);//将复数复零

static Complex Rec2Polar(Complex c1);//取极坐标

Complex(){

RecPolar=0;} };

Complex Complex::Rec2Polar(Complex c1)//极坐标表示 { Complex Node;Node.real=sqrt(c1.real*c1.real+c1.image*c1.image);Node.image=atan2(c1.image,c1.real)*180/3.1415926;Node.RecPolar=1;return Node;}

Complex Complex::CaddC(Complex c1,Complex c2)//复数加法 {

Complex Node;

Node.real=c1.real+c2.real;

Node.image=c1.image+c2.image;

return Node;}

Complex Complex::subComplex(Complex c1,Complex c2)//复数减法 {

Complex Node;

Node.real=c1.real-c2.real;

Node.image=c1.image-c2.image;

return Node;}

Complex Complex::productComplex(Complex c1,Complex c2)//复数乘法 {

Complex Node;

Node.real=c1.real*c2.real-c1.image*c2.image;

Node.image=c1.image*c2.real+c2.image*c1.real;

return Node;} Complex Complex::divideComplex(Complex c1,Complex c2)//复数除法 {

Complex Node;

Node.real=(c1.real*c2.real+c1.image*c2.image)/(pow(c2.real,2)+pow(c2.image,2));Node.image=(c1.image*c2.real-c1.real*c2.image)/(pow(c2.real,2)+pow(c2.image,2));return Node;} Complex Complex::ComDivRea(Complex c1,double r1)//复数除数 { Complex Node;Node.real=c1.real/(r1);Node.image=c1.image/(r1);return Node;} Complex Complex::getconj(Complex c1)//取共轭 {

Complex Node;

Node.real=c1.real;Node.image=-c1.image;

return Node;}

Complex Complex::getinverse(Complex c1)//取倒数 { Complex Node;Node.real=1;Node.image=0;Node=(Complex::divideComplex(Node,c1));return Node;}

double Complex::getComplexReal(Complex c1)//取实部 {

return c1.real;}

double

Complex::getCompleximage(Complex c1)//取虚部 {

return c1.image;}

void

Complex::PrintfComplex(Complex c1)//按直角坐标输出 { if(c1.RecPolar==0){ cout.precision(6);

cout.width(8);

cout.setf(ios::right);

cout<

”;

cout.precision(6);

cout.width(8);

cout.setf(ios::left);

cout<

”;} else {

cout<

Complex::zeroComplex(Complex c1)//清零 { c1.real=0;c1.image=0;}

class gauss { public: static void gauss_slove(double **a,double *x,int NN);static void gauss_output();};

void gauss::gauss_slove(double **a,double *x,int NN){

int n,i,j,k,*pivrow,**pivcol;double eps,pivot,sum,aik,al;

n=NN;pivrow=new int[n];pivcol=new int *[n];

for(i=0;i

pivot= fabs(a[k][k]);

pivrow[k]=k;//行

pivcol[k][0]=k;pivcol[k][1]=k;//列n*2矩阵

for(i=k;i

{

for(j=k;j

{

if(pivot

{

pivot=fabs(a[i][j]);

pivrow[k]=i;//行

pivcol[k][1]=j;//列

}

}

}

if(pivot

{

cout<<“error”<

getchar();

exit(0);

}

if(pivrow[k]!=k)//行变换

{

for(j=k;j<(n+1);j++)

{

al=a[pivrow[k]][j];

a[pivrow[k]][j]=a[k][j];

a[k][j]=al;

}

}

if(pivcol[k][1]!=k)//列变换

{

for(i=0;i

{

al=a[i][pivcol[k][1]];

a[i][pivcol[k][1]]=a[i][k];

a[i][k]=al;

}

}

if(k!=(n-1))//将矩阵化为上三角形

{

for(i=(k+1);i

{

aik=a[i][k];

for(j=k;j<(n+1);j++)

{

a[i][j]-=aik*a[k][j]/a[k][k];

}

}

} } x[n-1]=a[n-1][n]/a[n-1][n-1];//解方程

for(i=(n-2);i>=0;i--){

sum=0;

for(j=(i+1);j

{

sum +=a[i][j]*x[j];0.182709

0.016894-0.0310701

-0.0402051 0.156702

-0.0355909-0.0668055

-0.00703229-0.0886481

-0.0129814-0.0390805

-0.0135062-0.1023

-0.0460568

-0.0342827

-0.00382402-0.102896

-0.0184062

}

x[i]=(a[i][n]-sum)/a[i][i];} for(k=(n-2);k>=0;k--){

al=x[pivcol[k][1]];

x[pivcol[k][1]]=x[pivcol[k][0]];

x[pivcol[k][0]]=al;}

cout<<“节点电压修正量”<

cout<

}

====节点功率计算值==== 0.935261

-0.159048 0.573909

0.0789973-0.00289889

-0.00796623-0.0791247

-0.0168362-0.436255

-0.0580392 0.0359139

-0.0106592-0.229118

-0.0885419-0.136179

-0.148207 0.0446243

0.0111298-0.0223764

-0.00695775-0.0237482

-0.198318

-5.24266e-015

-0.0354071

-0.0925078

-1.05629e-015

-0.0391348

0.014529

0.00158644

-0.0258771

-0.109514

icon=1进行第2次迭代 节点电压修正量

=================-0.00164889-0.000540034-0.00261067-0.00532027-0.00235315-0.00600971-0.00189677-0.00643874-0.0023631-0.00650659-0.00170949-0.0074907-0.00164545-0.00485415-0.00493977-0.0119042-0.00331285-0.0175611-0.00207908

-0.00347744-0.0869347-9.48909e-015-0.0110778-0.0538236-7.53784e-016-0.0168097 7.049e-005-0.00146487-0.00458276 0.00251645

-0.00336375-0.00530645-0.0147816-0.000326161-0.00640487-0.00251701-0.0169829-0.00175286-0.0174333-0.0239063

-0.0119192-0.076014

-0.0160104-0.441997

-0.0750285 0.000250012

3.72542e-005-0.228052

-0.108844-0.100078

-0.105634 0.000410707

0.000378067-0.057497

-0.0195879 0.200039

0.0582563-0.00307326-0.0163809-0.00232773-0.0175806 8.74293e-005-0.0192018 0.000558996-0.0197776-0.000247851-0.0193784-0.00115346-0.0185848-0.00127275-0.0186244-0.00010108-0.0188966 0.000553585-0.0200901-3.76315e-005-0.0208303 0.00308341-0.0219386-0.00195916-0.0205356-0.00184757-0.0076401 0.00197593-0.0245534 0.00434657-0.027534

====节点功率计算值==== 0.98623

-0.134163 0.583136

0.166278-0.111173

0.199792

-0.0621041

-0.0821379

-0.0350785

-0.0902383

-0.0320461

-0.0951562

-0.0220362

-0.175458

4.72557e-015

-0.0320661

-0.0871134

-7.03489e-017

-0.0350769

0.000273455

1.51804e-005

-0.0240417

-0.10604

icon=1进行第3次迭代 节点电压修正量

=================-2.67079e-005-2.30128e-006-2.20543e-005-6.00686e-005-2.33043e-005-6.85601e-005-3.22294e-005-2.61107e-005-2.80198e-005-6.6167e-005-2.34528e-005

-0.0739846 0.0227868-0.0158709-0.0248173-0.0179447-0.0578368-0.00890719-0.0337091-0.00693706-0.111601 1.21429e-014-0.0159145-0.0667319 9.24355e-016-0.0228592 7.10354e-005-6.6188e-006-0.00889343-0.0184098

-5.66132e-005-4.4646e-005-1.74668e-005-4.50947e-005-0.000181763-3.81763e-006-0.000286581-6.68993e-005-1.28441e-005-5.17172e-005-0.000223284-4.54717e-005-2.47586e-005 4.32335e-007-0.000258494 1.82635e-005-0.000272051-6.95195e-006-0.000251969 1.11318e-005-0.000279418 5.74737e-005-0.000307368 6.86998e-005-0.000320274 5.38112e-005-0.00031447 3.59531e-005-0.00030494 3.37607e-005-0.000307449 5.26532e-005-0.000310721 6.92761e-005-0.000350373 5.60942e-005-0.00040977 0.000123641-0.000440259 1.36149e-005-0.000426973-1.70227e-005-9.37794e-005 0.000113675-0.000544011 0.000176034-0.000636202

====节点功率计算值====

0.986878

-0.133979 0.583

0.167193-0.024

-0.012-0.076

-0.016-0.442

-0.0748606

1.43501e-008

1.07366e-008-0.228

-0.109

-0.0999999

-0.104049 4.51318e-008

8.98835e-008-0.0579999

-0.0199999 0.2

0.0591018-0.112

-0.0749997 0.2

0.0242519-0.062

-0.016-0.082

-0.025-0.035

-0.018

-0.0900001

-0.058-0.032

-0.00899997-0.095

-0.0339999-0.022

-0.00699998-0.175

-0.112

-6.07156e-015

-1.19217e-014-0.032

-0.016-0.087

-0.0669999

7.03078e-017

-9.23979e-016-0.035

-0.0229999

1.09492e-007

4.45699e-008 1.54958e-009

-2.01531e-010-0.024

-0.00899994-0.106

-0.0189996

icon=0,迭代结束。

====节点电压===============发电机发出功率======

节点1

1.05

0。

98.6878-13.3979

节点2

1.045

-1.846。

29.4193

节点3

1.02384-3.83352。

0

点25 1.01216-9.68486。

0

0 0 节点4

1.01637-4.55698。

0

点26 0.994393

-10.1089。

0 0

0 节点5

1.01

-6.48617。

节 点27 1.02012-9.42025。

0

11.5139 0 节点6

1.01332-5.38073。

0

点28 1.00992-5.86244。

0

0 0 节点7

1.00489-6.38368。

0

点29 1.00022-10.6579。

0

0 节点8 19.5951 节点9 0 节点10 0 节点11 5.91018 节点12 0 节点13 2.42519 节点14 0 节点15 0 节点16 0 节点17 0 节点18 0 节点19 0 节点20 0 节点21 0 节点22 0 节点23 0 节点24 0 1.01

-5.62974。

1.03905-6.78143。

1.03595-8.69362。

-4.5962。

1.04711-7.80323。

1.05

-6.34392。

1.03242-8.7401。

1.02788-8.86784。

1.03458-8.45044。

1.03051-8.83678。

1.01845-9.5141。

1.01604-9.70326。

1.02022-9.50938。

1.0237-9.17478。

1.02432-9.17024。

1.01802-9.36719。

1.01339-9.68362。

0 20

节 点30 0.988705

-11.5464。

0

0 0

======

线路传输功率========== 2to1

-57.7373

5.41674i

58.3454

0

-15.1827i

3to1

-39.659

-7.75964i

40.3424

1.78481i

4to2

-30.87

-9.74186i

31.4153

0

3.58352i

4to3

-37.0772

-7.78596i

37.259

6.55964i

5to2

-44.3717

-9.78456i

45.2968

0

4.84242i

6to2

-38.4766

-8.22625i

39.3252

0

2.87667i

6to4

-34.946

1.92384i

35.0885

0

-3.28202i

7to5

-0.16304

-6.41767i

0.171702

0

2.2985i

7to6

-22.637

-4.48233i

22.7745

0

1.44238i

8to6

-11.8939

-5.48098i

11.913

0

3.70557i

6to9

12.3737

-12.3826i

-12.3737

0

13.0033i

6to10

10.9107

-3.80907i

-10.9107

0

4.53223i

11to9

5.91018i

0

-5.08963i

10to9

-32.652

-2.3712i

32.652

0

3.46974i

4to12

23.5411

-11.5375i

-23.5411

0

13.2407i

13to12

2.42519i

1.05

-1.90978i 1.66484i 14to12

-7.9019

-2.06732i

7.97894

30to29

-3.6702

-0.542564i

3.70398

2.22749i 0.606393i 15to12

-18.254

-5.74885i

18.4835

28to8

-1.89152

-3.79982i

1.89395

6.20089i-4.9239i 16to12-7.53872

-2.90237i

7.59633

28to6

-14.7868

-2.82565i

14.8234

3.02352i 0.294601i 15to14-1.69544

-0.461488i

1.70189

请按任意键继续...0.467323i 17to16-4.03014 1.10238i 18to15-6.08074 1.46028i 19to18-2.87549 0.478389i 20to19

6.6418-2.93222i 20to10

-8.8418 3.85077i 17to10-4.96987 4.76656i 21to10-16.1562 9.42843i 22to10-7.87782 4.21401i 22to21

1.34443-2.01837i 23to15-5.59369 2.25006i 24to22-6.48186 2.08163i 24to23-2.38596 0.579814i 25to24-0.167617 0.281364i 26to25

-3.5 2.3674i 27to25

3.39433-2.08638i 28to27

16.1446 3.13006i 29to27-6.10398 1.67047i 30to27-6.92979-1.07089i-1.37839i-0.467767i

2.96679i-3.66679i-4.72911i-9.18162i-4.10132i

2.01969i-2.17981i-2.00141i-0.56401i

-0.28102i-2.29999i

2.11848i-2.10093i-1.50639i

-1.3574i

4.03872

6.12096

2.88074

-6.62452

8.9242

4.98423

16.2709

7.93248

-1.34378

5.62846

6.53339

2.39369

0.167814

3.54513

-3.37751

-16.1446

6.19083

7.09313

高等电力系统分析 IEEE30节点潮流程序

班级:电研114班

姓名:王大伟

学号:2201100151

第五篇:幼儿园亲子游戏之好玩的麻将

编导语:激发孩子手口一致点数以及按一定规律排序的兴趣,培养孩子丰富的想象力和空间建构能力。目标:激发孩子手口一致点数以及按一定规律排序的兴趣,培养孩子丰富的想象力和空间建构能力。

准备:麻将

玩法:

1、亲子自由玩麻将。

2、家长引导孩子数数各“条”、“饼”的个数。

3、亲子比一比谁的“条”(“饼”)多,谁的少?

4、家长引导孩子用麻将堆成或摆成各种形状,说出图形名称。

5、家长按一定的规律摆放麻将,引导孩子发现规律。

6、请孩子也按一定规律摆放,让家长来猜。

下载程序计算麻将游戏的思路word格式文档
下载程序计算麻将游戏的思路.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    计算教学的游戏

    计算教学,游戏为主 新余市逸夫小学 严邦 小学数学的教学一大半内容都是计算的教学,小学教学不就是要求学生掌握加、减、乘、除四种运算,但是这四种运算又有整数、小数、分数等......

    贵阳捉鸡麻将常用游戏规则(无庄计算,一般规则)(精选)

    贵阳捉鸡麻将游戏规则说明 一、基本规则 1、牌数 贵阳捉鸡麻将共有108张牌,其中有条、筒、万各有36张,无花牌、字牌、风牌; 2、起张牌数 庄家的起张牌数为14张,闲家的起张牌数为......

    电力系统潮流计算程序[推荐5篇]

    #include #include #include "Node.h" #include "Transmission_line.h" #include "Transformer.h" void main { coutPd>>Qd; coutUd; double data[300][8]; //分别......

    C语言计算闰年程序(推荐)

    //计算闰年的程序 #include #include //判断年份是否为闰年 int main//运算符 { int year; printf ("please input a year:"); scanf ("%d",&year); if(year%4==0&&ye......

    生育保险费用报销程序以及材料,如何计算

    北京生育保险费用报销程序和需要的材料: 其中住院生产费用不用担心,医院会自动在结帐的时候划走报销费用部分。 正常生产:一级医院1700,二级医院1800,三级医院1900; 剖宫产:一级医......

    公司管理工作汇报思路及程序[范文]

    公司管理工作汇报思路及程序 在公司管理工作中,工作汇报会起到承上启下的协调作用,便于公司内部运作的沟通,便于工作的顺利开展,便于提高工作效率,那么如何进行工作汇报,这是公司......

    24点的游戏和计算24点的技巧

    24点的游戏和计算24点的技巧 24点的游戏介绍 “巧算24点”是一种数学游戏,游戏方式简单易学,能健脑益智,是一项极为有益的活动. “巧算24点”的游戏内容如下:一副牌中抽去大小......

    计算游戏 教学设计 教案

    教学准备 1. 教学目标 1、掌握三角盘的计算方法,对相邻区域小圆片(或数)进行相加。 2、对给出的“结果数”进行分拆。 3、培养学生仔细观察图形的能力和灵活解决问题的能力。......