c# 编写一个掷骰子100次的程序,并打印出各点出现的次数

c# 编写一个掷骰子100次的程序,并打印出各点出现的次数,第1张

Random random = new Random(); //实例化Random

int[] sum =new int[100]; //声明一个整型数组int number;

for (int i = 0; i < 100; i++)

{

number=raNext(1, 7); //产生1到6的随机数 sum[i]=number;

ConsoleWriteLine("第" +( i+1) + "次掷骰子:" + number);

} int a1=0;int a2=0;int a3=0;int a4=0;int a5=0;int a6=0;for (int j = 0; j < 100; j++)

{ switch(sum[j]) { case 1: a1++; break; case 2: a2++; break; case 3: a3++; break; case 4: a4++; break; case 5: a5++; break; case 6: a6++; break; }

}ConsoleWriteLine("数字1出现的次数为":+ a1);ConsoleWriteLine("数字2出现的次数为":+ a2);ConsoleWriteLine("数字3出现的次数为":+ a3);ConsoleWriteLine("数字4出现的次数为":+ a4);ConsoleWriteLine("数字5出现的次数为":+ a5);ConsoleWriteLine("数字6出现的次数为":+ a6);

#include "stdioh"

#include "stdlibh"

#include "timeh"

enum {CONTINUE,WON,LOST};

void main()

{

int status=CONTINUE;

int i=0,j=0,add,k;

srand((unsigned)time(NULL));

while(i==0)

i=rand()%6;

printf("1: %d\n",i);

while(j==0)

j=rand()&6;

printf("2: %d\n",j);

add=i+j;

if(add==11 || add==7)

status=WON;

if(add==2 || add==3 || add==12)

status=LOST;

if(status==WON)

printf("You Win!\n");

else if(status==LOST)

printf("YOU LOST!\n");

else

{

for(k=1;k<=7;k++)

{

i=0;

j=0;

printf("%d\n",k);

while(i==0)

i=rand()%6;

printf("1: %d\n",i);

while(j==0)

j=rand()%6;

printf("2: %d\n",j);

if((i+j)==add)

{

status=WON;

break;

}

}

if(status==WON)

printf("YOU WIN!\n");

else

printf("YOU LOST!\n");

}

getch();

}

1、把麻将机上骰子拿出来,放到磁圈一或麻将机专用牌检验一下,看骰子是否带磁性,若是,则可断定为程序骰子。只要交骰子换个不带磁的进去即可破除控制。

2、在开局前要以把麻将牌与别的麻将机上的牌进行调换即破除程序控制,除非对方交所有麻将机的牌都经过特殊处理,否则程序将不会起到作用。

#include <iostream>#include <cstdlib>enum GameStatus{WIN,LOSE,PLAYING};//计算并输出和数int rollDice(){ int die1 = 1 + rand() % 6; int die2 = 1 + rand() % 6; int sum = die1 + die2;

printf("player rolled %d + %d = %d\n", die1, die2, sum); return sum;

}int main(){ int sum, myPoint;

GameStatus status;

unsigned seed; //int rollDice();

scanf_s("%d", &seed);//输入随机数种子

srand(seed);//将种子传递给rand()

sum = rollDice();//第一轮投色子、计算和数

switch (sum){ case 7: case 11:

status = WIN; break;//和为7或11则为胜

case 2: case 3: case 12:

status = LOSE; break; default://其他情况尚无结果,状态为PLAYING

status = PLAYING;

myPoint = sum;

printf("point is %d\n", myPoint); break;

} while (status == PLAYING){ sum = rollDice(); if (sum == myPoint){

status = WIN;

} else if (sum == 7){

status = LOSE;

}

} //当状态不为PLAYING时循环结束,输出游戏结果

if (status == WIN){

printf("win!\n");

} else{

printf("lose!\n");

}

system("pause"); return 0;

}

using System;

namespace csharpconsole

{

class Program

{

static void Main(string[] args)

{

int total = 36000;

int[] count = new int[]{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };

Random r = new Random((int)DateTimeNowTicks);

for (int i = 0; i < total; i++)

{

int x1 = rNext(1,7);

int x2 = rNext(1, 7);

int sum = x1 + x2;

count[sum - 2]++;

}

ConsoleWriteLine("点数和\t出现比率");

for (int i = 0; i < 11; i++)

{

double rate = ((double)count[i]) / ((double)total);

rate = 100;

ConsoleWriteLine(stringFormat("{0}\t{1}%", i+2, rateToString("00")));

}

ConsoleReadKey();

}

}

}

Sub 概率()

Dim x(5)

For y = 1 To 100002

x(0) = Int(Rnd() 6)

x(2) = Int(Rnd() 6)

x(3) = Int(Rnd() 6)

x(4) = Int(Rnd() 6)

x(5) = Int(Rnd() 6)

x(1) = Int(Rnd() 6)

For m = 0 To 5

If x(m) = 4 Then q = q + 1

Next

If q = 1 Then P = P + 1

q = 0

Next

MsgBox P / 100002

End Sub

这是声明数组变量

以上就是关于c# 编写一个掷骰子100次的程序,并打印出各点出现的次数全部的内容,包括:c# 编写一个掷骰子100次的程序,并打印出各点出现的次数、求掷骰子游戏C语言代码(我初学C,代码简单为佳)、骰子游戏大小如何破解的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9574076.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存