當前位置:首頁 » 編程軟體 » 如何編程骰子

如何編程骰子

發布時間: 2022-09-08 11:34:48

A. C++編程。擲骰子問題。

先隨機出1數字出現的位置,這個好辦吧,6肯定是對面
再隨機出2出現的位置,一個死循環,如果不是1 6出現的位置跳出死循環
判斷是否是1 6的位置也不難,你隨機出1的位置了,6的位置出現
用一個數組a[6]標記123456出現的位置,數組的下標是0~5標記123456
而數組的值標記出現的位置,如隨機出1出現的位置是上,那麼賦值為0,那麼6也就是a[5]就賦值1表示下
這樣判斷第二個隨機出的數值是否是0 1,你這樣不就可以做了?

B. 用python編程寫程序:兩個人分別投一個骰子,點數高的贏

摘要 python擲骰子

C. 用c語言編程骰子游戲

#include<stdio.h>
#include<string.h>
int
main()
{
int
a[6]={1,2,3,4,5,6},i,n,p,empty;
char
b[10];
//printf("請輸入命令條數:\n");
scanf("%d",&n);
//printf("請輸入命令:\n");
for(i=1;i<=n;i++)
{
scanf("%s",b);
p=strcmp(b,"north");
if(p==0)
{
empty=a[0];
a[0]=a[4];
a[4]=a[5];
a[5]=a[1];
a[1]=empty;
continue;
}
p=strcmp(b,"south");
if(p==0)
{
empty=a[0];
a[0]=a[1];
a[1]=a[5];
a[5]=a[4];
a[4]=empty;
continue;
}
p=strcmp(b,"west");
if(p==0)
{
empty=a[0];
a[0]=a[3];
a[3]=a[5];
a[5]=a[2];
a[2]=empty;
continue;
}
p=strcmp(b,"east");
if(p==0)
{
empty=a[0];
a[0]=a[2];
a[2]=a[5];
a[5]=a[3];
a[3]=empty;
}
}
//printf("游戲結束,骰子朝上的字數為:\n");
printf("%d",a[0]);
return
0;
}

D. 編寫程序c語言 模擬擲骰子游戲100次,編程統計並輸出骰子的6個面各自出現的次數。

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

main()
{
intface;//儲存每次色子的點數
introll;//投擲色子的次數(循環變數)
intfrequency[7]={0};//記錄色子每個點數出現的次數

srand(time(NULL));//用系統時間來初始化系統隨機數的種子值

//用循環產生100次隨機數,並記錄每個點數出現的次數
for(roll=1;roll<=100;roll++)
{
face=rand()%6+1;
frequency[face]++;
}

printf("%4s%17s ","Face","Frequency");

//輸出每個點數出現的次數
for(face=1;face<=6;face++)
{
printf("%4d%17d ",face,frequency[face]);
}

system("pause");
}

E. 擲骰子求概率,怎麼編程序

您好,任意一個骰子得4的概率是1/6,不得4的概率是5/6.所以,這是個「二項分布」問題.
C(20,5) x (1/6)^5 x [1-(1/6)]^(20-5)
= 15504 x (1/6)^5 x (5/6)^15
= 0.1294.
每次擲骰子都是一次獨立事件,彼此互不影響,投擲10次是另一個獨立事件,投擲10次出現五次落在1-50之間另外五次落在51-100之間的概率最大,而你不能用已得結果推測下面的結果,因為它們彼此互不影響。就好比抽簽問題,如果後面抽簽的人不知道前面人抽的結果那麼是公平的,每個人都是1/n,如果知道結果,那後面概率就變了。

F. c語言編程,擲骰子游戲,擲三個骰子,我與電腦輪流坐莊,輸了換庄,游戲結束詢問是否結束,如果結束

擲骰子比大小,用隨機數就可以,但是莊家的規則是咋樣的沒交代清楚(這里假定莊家的優勢在於點數一樣大時,莊家贏):

#include "stdafx.h"

#include <iostream>

#include <time.h>

using namespace std;


int main()

{

int Me, Computer,n=1,MC=1;

int meWin = 0, nGames = 0;

srand((unsigned int)time(NULL));

while (n)

{

cout << "開始擲骰子(輸入1開始,輸入0結束):" << endl;

cin >> n;

Me = rand() % 6 + 1;

Computer= rand() % 6 + 1;

nGames++;

if (MC)

{

cout << "你做莊:" << endl;

cout << "你的點數:" << Me << " 電腦的點數:" << Computer << endl;

if (Me >= Computer)

{

meWin++;

cout << "恭喜你贏了!" << endl;

}

else

{

MC = 0;

cout << "哦,你輸了!" << endl;

}

}

else

{

cout << "電腦做莊:" << endl;

cout << "你的點數:" << Me << " 電腦的點數:" << Computer << endl;

if (Computer >= Me)

cout << "哦,你輸了!" << endl;

else

{

meWin++;

MC = 1;

cout << "恭喜你贏了!" << endl;

}

}

}


cout << "你贏的次數:" << meWin << " 輸的次數:" << nGames - meWin << " 勝率:";

float p = (float)meWin / nGames;

int q = p * 100;

printf("%2d%% ", q);

system("pause");

return 0;

}

G. java如何編寫骰子程序,急!

import java.util.Random;
public class T1227 {
public static void main(String[] args) {
Random r = new Random();
int num = 0;
while(true){
num = r.nextInt(7);
if(num!=0)break;
}
System.out.println("點數為:"+num);
}
}

H. 用C語言編寫一個模擬擲骰子游戲謝謝了,大神幫忙啊

實踐1:函數編程練習 1.擲骰子游戲 編寫程序模擬擲骰子游戲。已知擲骰子游戲的游戲規則為:每個骰子有6面,這些麵包含1、2、3、4、5、6個點,投兩枚骰子之後,計算點數之和。如果第一次投的點數和為7或11,則游戲者獲勝;如果第一次投的點數和為2、3或12,則游戲者輸;如果第一次投的點數和為4、5、6、8、9或10,則將這個和作為游戲者獲勝需要擲出的點數,繼續投骰子,直到賺到該點數時算是游戲者獲勝。如果投擲7次仍未賺到該點數,則游戲者輸。 【思考題】 將游戲規則改為:計算機想一個數作為一個骰子擲出的點數(在用戶輸入數據之前不顯示該點數),用戶從鍵盤輸入一個數作為另一個骰子擲出的點數,再計算兩點數之和。其餘規則相同,然後請讀者重新編寫該程序。 2.學生成績統計(一維數組)要求函數參數中包含一維數組。 從鍵盤輸入一個班(全班最多不超過30人)學生某門課的成績,當輸入成績為負值時,輸入結束,分別實現下列功能: (1)統計不及格人數並列印不及格學生名單; (2)統計成績在全班平均分及平均分之上的學生人數,並列印這些學生的名單; (3)以直方圖方式統計各分數段的學生人數及所佔的百分比。形式如下: 分數段 學生人數 圖形 <60 3(10%) *** 60-69 8(…) ******** 70-79 7(…) ******* 80-89 8(…) ******** >=90 4(…) **** 實踐2:結構體編程練習 在屏幕上模擬顯示一個數字式時鍾 按如下方法定義一個時鍾結構體類型: struct clock { int hour; int minute; int second; }; typedef struct clock CLOCK; 然後,將下列用全局變數編寫的時鍾模擬顯示程序改成用CLOCK結構體變數類型重新編寫。已知用全局變數編寫的時鍾模擬顯示程序如下: #include <stdio.h> int hour, minute, second; /*全局變數定義*/ /* 函數功能:時、分、秒時間的更新 函數參數:無 函數返回值:無 */ void Update(void) { second++; if (second == 60) /*若second值為60,表示已過1分鍾,則 minute值加1*/ { second = 0; minute++; } if (minute == 60) /*若minute值為60,表示已過1小時,則 hour值加1*/ { minute = 0; hour++; } if (hour == 24) /*若hour值為24,則hour的值從0開始計時*/ { hour = 0; } } /*函數功能:時、分、秒時間的顯示 函數參數:無 函數返回值:無 */ void Display(void) /*用回車符'\r'控制時、分、秒顯示的位置*/ { printf("%2d:%2d:%2d\r", hour, minute, second); } /*函數功能:模擬延遲1秒的時間 函數參數:無 函數返回值:無 */ void Delay(void) { long t; for (t=0; t<50000000; t++) { /*循環體為空語句的循環,起延時作用*/ } } main() { long i; hour = minute = second = 0; /*hour,minute,second賦初值0*/ for (i=0; i<100000; i++) /*利用循環結構,控制時鍾運行的時間*/ { Update(); /*時鍾更新*/ Display(); /*時間顯示*/ Delay(); /*模擬延時1秒*/ } }

I. 如何用java實現擲骰子

package me.flyshow.test;

public class Test {
public static void main(String[] argv) {
int[] result = new int[11];
for (int i = 0; i < 5000; i++) {
int a = (int) (Math.random() * 6 + 1);
int b = (int) (Math.random() * 6 + 1);
int sum = a + b;
switch (sum) {
case 2:
result[0]++;
break;
case 3:
result[1]++;
break;
case 4:
result[2]++;
break;
case 5:
result[3]++;
break;
case 6:
result[4]++;
break;
case 7:
result[5]++;
break;
case 8:
result[6]++;
break;
case 9:
result[7]++;
break;
case 10:
result[8]++;
break;
case 11:
result[9]++;
break;
case 12:
result[10]++;
break;
default:
break;
}
}
for (int n = 0; n < 11; n++) {
System.out.println((n + 2) + "出現了" + result[n] + "次");

熱點內容
appleid為什麼連接伺服器出現問題 發布:2025-05-13 18:17:37 瀏覽:970
書翁怎麼配置 發布:2025-05-13 18:17:36 瀏覽:911
雲資料庫mongodb 發布:2025-05-13 18:16:12 瀏覽:774
A7編程 發布:2025-05-13 18:15:26 瀏覽:742
python視圖 發布:2025-05-13 18:14:01 瀏覽:759
win為什麼干不過安卓 發布:2025-05-13 18:12:27 瀏覽:586
文件夾只讀win8 發布:2025-05-13 18:11:41 瀏覽:272
xp安裝php 發布:2025-05-13 18:04:30 瀏覽:183
sqlserver介紹 發布:2025-05-13 17:58:00 瀏覽:4
雲閃付安卓版哪個版本好用 發布:2025-05-13 17:57:16 瀏覽:187