国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

代寫CS 8編程、代做Python語言程序

時間:2023-12-12  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯


CS 8: Introduction to Computer Science

Fall 2023 Final Project

Due Tuesday, December 12, 11:59PM (California time)

In the game Yahtzee, players try to get particular combinations of five six-sided dice. For

a given turn, they can make up to three rolls: on the first roll, they roll all five dice; on

the second roll, they can choose to re-roll none, any, or all of the dice again; and on the

third roll, they again can choose to re-roll none, any, or all of the dice again. The best

outcome for a given turn is to get what’s called a Yahtzee, in which all five dice have the

same value on them. It doesn’t matter what that value is, just that they are all the same.

Here is an example. For the first roll, say a player gets:

2 4 1 6 4

Let’s say they choose not to re-roll the two dice that were 4’s, but they do re-roll the dice

that were 2, 1, and 6, giving new values for those three dice:

4 3 4

So at this point, after their second roll, the five dice are:

4 4 3 4 4

(Here I’m keeping the dice “in order”: the dice which was previously a 2 is now a 4, the

dice that was previously a 1 is now a 3, and the dice that was previously a 6 is now a 4.

The dice that were previously 4’s stay as 4’s.) For the player’s third roll, they choose to

only re-roll the dice that is a 3, and let’s say it comes up 4. So after the third roll, the

five dice are:

4 4 4 4 4

They all are the same! Yahtzee!

In this final project, you will write Python code to calculate the probability that a player

will get a Yahtzee on a given turn using the following strategy: You always try to get a

Yahtzee with the highest dice value for which you have the largest number of matching

dice. So if your dice are

4 2 4 5 2

you would keep the 4’s, and re-roll the 2’s and the 5.

There is also a related game called Tenzi, in which each player has ten 6-sided dice. On

the first roll, they roll all ten dice. On the second and all subsequent rolls they can choose

1

to re-roll none, any, or all of the dice again. They keep rolling until all ten dice have the

same value on them - a Tenzi! In this final project, you’ll also write Python code to keep

track of how many rolls it takes in order to get a Tenzi.

Please use the following code in order to generate a random integer 1,2,3,4,5, or 6:

import random

def rollDice():

return random.randrange(1,7)

Your main program should prompt the user to either play Yahtzee (by inputting Y), play

Tenzi (by inputting T), or quit (by inputting anything else). This prompt should continue

to be appear until the user quits. If the choice is Y, the user should be prompted to input

the number of trials to simulate for the Monte Carlo simulation and the number of dice

to use. The following should be printed to the shell:

Probability of Yahtzee with X dice: y.yyyy

where X is the number of dice which the user input, and y.yyyy is the probability of

getting a Yahtzee. Use four decimals for printing the probability. If the choice is T, the

user should be prompted to input the number of trials to simulate and the number of dice

to use. The following should be printed to the shell:

Rolls to get a Tenzi with X dice:

{1: Y, 2: Y, 3: Y, 4: Y, 5: Y, 6: Y, 7: Y, 8: Y, 9: Y, 10: Y, ’more than 10’ : Y}

where X is the number of dice which the user input, and the Y’s are the number of times

in the set of trials that it took that many rolls to get a Tenzi.

The following gives an example of running your code:

Note that the numbers you get may differ from these, but this should at least give a good

idea of what you should obtain from your code.

2

You’ll turn in a single Python program called yahtzee.py which includes the code given

above for simulating a dice roll, the main program as described above, and the following functions. Please be sure to include appropriate docstrings and comments for each

function.

• firstRoll : This should take an integer numDice as an input parameter which

tells how many dice you’re using in your game (this will be 5 for Yahtzee and 10

for Tenzi, but your function should be written for a general value for numDice),

and returns a list of length numDice of random integers each obtained by calling

rollDice. For example, the call

firstRoll(5)

will return a list such as

[2,4,1,6,4]

• newRoll : This should take the list diceList and an integer choice as input

parameters. Here diceList is a list of dice rolls, such as [2,4,1,6,4], and choice

is an integer corresponding to the dice value that you’re hoping to get a Yahtzee

with, such as 4. This should return a new list for which all dice which are not equal

to choice are re-rolled. For example, the call

newRoll([2,4,1,6,4],4)

will return a list such as

[4,4,3,4,4]

As in the example above, here the dice which was previously a 2 is now a 4, the

dice that was previously a 1 is now a 3, and the dice that was previously a 6 is now

a 4. The dice that were previously 4’s stay as 4’s.

• createDiceDict : This should take the list diceList as an input parameter, and

return a dictionary for which the keys are the possible roll values 1, 2, 3, 4, 5,

and 6, and the values are the number of times that roll value appears in the list.

For example, the call

createDiceDict([2,4,1,6,4])

will return the dictionary

{1:1, 2:1, 3:0, 4:2, 5:0, 6:1}

3

This captures that the value 1 appears once in the list, the value 2 appears once in

the list, the value 4 appears twice in the list, the value 6 appears once in the list,

and the values 3 and 5 don’t appear in the list.

• mostFrequent : This should take diceDict as an input parameter, which is a

dictionary as generated by the function createDiceDict. This should return the

highest dice value for which you have the largest number of matching dice. For

example, the call

mostFrequent({1:1, 2:1, 3:0, 4:2, 5:0, 6:1})

should return the value 4, because the dictionary encodes that the value 4 appeared

most frequently. Note that the call

mostFrequent({1:0, 2:2, 3:0, 4:2, 5:1, 6:0})

should also return the value 4, because we’re using the strategy that you always

try to get a Yahtzee with the highest dice value for which you have the largest

number of matching dice. This would be the dictionary corresponding to the list

[4,2,4,5,2].

• probabilityYahtzee : This should take integers numTrials and numDice as input

parameters. It will perform a Monte Carlo simulation of numTrials turns in which a

player tries to get all of the numDice dice to match. In each turn, the player will do a

first roll, a second roll if needed, and a third roll if needed. It should return the probability of getting all dice to match in one turn, calcuated from the Monte Carlo simulation. Note that in the game Yahtzee there are five dice, but your function should

be general enough to work for any positive integer value for numDice. Your function

should make calls to the functions firstRoll, newRoll, createDiceDict, and

mostFrequent as needed.

• rollsToGetTenzi : This should take integers numTrials and numDice as input

parameters. It will perform a simulation of numTrials trials to keep track of how

many rolls it takes in order for all of the numDice dice to match. It should return a dictionary whose keys are the numbers of rolls that this takes, specifically,

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, and ’more than 10’, and whose values are the

number of times in the numTrials simulations that it took that many rolls. Note

here that if, in a given trial, after 10 rolls the dice do not all match, that trial

should be recorded as ’more than 10’. Note that in Tenzi there are ten dice, but

your function should be general enough to work for any positive integer value for

numDice. Your function should make calls to the functions firstRoll, newRoll,

createDiceDict, and mostFrequent as needed.

The functions firstRoll, newRoll, createDiceDict, and mostFrequent are worth 10

points each. The functions probabilityYahtzee and rollsToGetTenzi, and the main

program are worth 20 points each.

4

Academic Honesty Agreement

This project is open book, open notes. However, all work submitted must be your

own. By submitting these programs, you are asserting that all work on this project is

yours alone; that you did not use ChatGPT, Copilot, or similar AI bots; and that you

will not provide any information to anyone else working on the project. In addition, you

are agreeing that you will not discuss any part of this project with anyone. You are

not allowed to post any information about this project on the internet at any time, either

before or after the due date. Discussing any aspect of this project with anyone constitutes

a violation of the academic integrity agreement for CS8 and would result in an F in the

course.

Please note that you may ask questions about this project to the Professor, the TAs,

and the ULA’s, but we may answer in a limited way because we want to assess your

請加QQ:99515681 或郵箱:99515681@qq.com   WX:codehelp

掃一掃在手機打開當前頁
  • 上一篇:代做553.688 Computing for Applied 程序
  • 下一篇:CSCI1540代做、代寫C++設計編程
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    流體仿真外包多少錢_專業CFD分析代做_友商科技CAE仿真
    流體仿真外包多少錢_專業CFD分析代做_友商科
    CAE仿真分析代做公司 CFD流體仿真服務 管路流場仿真外包
    CAE仿真分析代做公司 CFD流體仿真服務 管路
    流體CFD仿真分析_代做咨詢服務_Fluent 仿真技術服務
    流體CFD仿真分析_代做咨詢服務_Fluent 仿真
    結構仿真分析服務_CAE代做咨詢外包_剛強度疲勞振動
    結構仿真分析服務_CAE代做咨詢外包_剛強度疲
    流體cfd仿真分析服務 7類仿真分析代做服務40個行業
    流體cfd仿真分析服務 7類仿真分析代做服務4
    超全面的拼多多電商運營技巧,多多開團助手,多多出評軟件徽y1698861
    超全面的拼多多電商運營技巧,多多開團助手
    CAE有限元仿真分析團隊,2026仿真代做咨詢服務平臺
    CAE有限元仿真分析團隊,2026仿真代做咨詢服
    釘釘簽到打卡位置修改神器,2026怎么修改定位在范圍內
    釘釘簽到打卡位置修改神器,2026怎么修改定
  • 短信驗證碼 豆包網頁版入口 破天一劍 目錄網 排行網

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看
    欧美激情综合色| 91精品国产精品| 国产做受69高潮| 国产免费一区二区| 国产精品免费一区二区| 亚洲色图都市激情| 欧美日韩国产成人| 色狠狠久久av五月综合|| 国产精品一区av| 久久久久高清| 精品成在人线av无码免费看| 日本婷婷久久久久久久久一区二区| 欧美一二三不卡| 成人a免费视频| 国产精品精品软件视频| 日本午夜激情视频| 91精品国产综合久久香蕉最新版| 国产精品久久久久久久久久久久冷| 日日噜噜夜夜狠狠久久丁香五月| 男人舔女人下面高潮视频| 91精品久久久久久蜜桃| 欧美成人一区二区三区电影| 欧美在线视频一区二区三区| 91精品在线播放| 一区一区视频| 91九色国产视频| 少妇熟女一区二区| 久久久精品国产一区二区三区| 午夜精品亚洲一区二区三区嫩草| 91久久精品美女| 日韩av高清在线播放| 久久免费精品视频| 日本精品一区二区三区在线 | 无码人妻精品一区二区蜜桃百度| 国产日韩欧美在线视频观看| 欧美激情精品在线| 国产日韩一区二区在线| 永久久久久久| 成人一级生活片| 在线码字幕一区| 99热国产免费| 在线视频欧美一区| 99re在线视频上| 亚洲欧洲免费无码| 131美女爱做视频| 亚洲综合自拍一区| 粉嫩av免费一区二区三区| 色综合久综合久久综合久鬼88| 国产中文字幕免费观看| 国产淫片免费看| 色综合久久悠悠| 91久久久在线| 欧洲在线视频一区| 国产精品无码人妻一区二区在线 | 国产精品美女无圣光视频| 女女同性女同一区二区三区按摩| 国产精品久在线观看| 欧美日韩激情视频在线观看| 久久精品久久久久久| 韩国欧美亚洲国产| 欧美精品少妇videofree| 国产精品综合网站| 亚洲精品在线观看免费| 久久全球大尺度高清视频| 欧美视频观看一区| 久久久久久12| 日日骚久久av| 国产精品永久免费| 人体内射精一区二区三区| 亚洲欧美99| 国产精品入口福利| 99精品视频播放| 午夜精品久久久内射近拍高清| 久久成人福利视频| 国产色综合一区二区三区| 日韩一二区视频| 精品国偷自产一区二区三区| 国产高清一区二区三区| 欧洲视频一区二区三区| 中文字幕一区二区三区四区五区| 久久人人97超碰精品888| 国产女主播自拍| 91精品国产综合久久久久久久久| 草莓视频一区| 蜜桃成人在线| 久久精品国产免费观看| 国产精品无av码在线观看| 国内精品模特av私拍在线观看| 欧美大肥婆大肥bbbbb| 成人一区二区av| 国语自产精品视频在免费| 亚洲天堂av免费在线观看| 久久在精品线影院精品国产| 久久久亚洲综合网站| 国产欧美综合精品一区二区| 五码日韩精品一区二区三区视频| 国产精品电影观看| 91久久中文字幕| 色久欧美在线视频观看| 欧美日韩福利在线| 亚洲乱码国产一区三区| 国产精品久久久久久中文字| 国产男女无遮挡| 人人妻人人做人人爽| 日本一区免费看| 亚洲影院污污.| 久久国产精品影片| 日韩在线小视频| 成人精品久久久| 欧美亚洲第一区| 动漫一区二区在线| 亚洲一区制服诱惑| 精品欧美一区二区三区久久久| 日韩小视频在线播放| 婷婷四房综合激情五月| 亚洲欧美日韩另类精品一区二区三区| 久久99青青精品免费观看| 日本一区高清不卡| 色综合久久久久无码专区| 亚洲欧美久久234| 亚洲天堂电影网| 在线观看一区二区三区三州| 欧美精品激情在线| 亚洲图片在线观看| 在线观看av的网址| 中日韩在线视频| 色与欲影视天天看综合网| 欧美激情国产精品| 亚洲淫片在线视频| 久久久久久成人| 一级一片免费播放| 精品久久久久久综合日本| 久久成人在线视频| 九九九九九九精品| 国产成人综合精品在线| 国产成人精品久久久| 久久精品综合一区| 69精品小视频| 九色综合婷婷综合| 九色91国产| 国产精品福利久久久| 国产精品少妇在线视频| 欧美精品与人动性物交免费看| 秋霞毛片久久久久久久久| 加勒比在线一区二区三区观看| 人人干视频在线| 日韩精品一区二区在线视频| 天堂一区二区三区| 国产精品成人久久电影| 国产精品福利久久久| 国产精品久久久久久久久久久久午夜片 | 国产精品一区免费观看| chinese少妇国语对白| 成人毛片网站| 国产精选在线观看91| 不卡一区二区三区四区五区| 欧美一区观看| 欧美日韩一区二区三区在线观看免| 欧美v在线观看| 欧美不卡三区| 午夜精品区一区二区三| 日韩欧美在线观看强乱免费| 日本高清视频一区二区三区| 欧美日韩另类丝袜其他| 欧美日韩电影一区二区三区| 精品日产一区2区三区黄免费 | 欧美乱妇40p| 欧美激情一区二区三区高清视频| 一区二区三区四区免费观看| 久久在线免费观看视频| 宅男噜噜99国产精品观看免费| 亚洲影影院av| 日本不卡久久| 麻豆av一区二区三区| 国产精品一区二区三区四区五区| 国产精品一色哟哟| 国产精品96久久久久久| 久久av一区二区| 久久久精品视频成人| 国产精品视频一区二区高潮| 亚洲精品一区二| 欧洲精品一区二区三区久久| 精品一区二区三区视频日产| 国产欧美一区二区三区四区| 国产精品专区一| 久色视频在线播放| 国产精品极品美女粉嫩高清在线 | 国产欧美日韩中文| 久久国产主播精品| 国产精品流白浆视频| 亚洲图片小说在线| 欧洲中文字幕国产精品| 免费日韩中文字幕| 国产精品一级久久久| 久久久久久久免费视频| 久久91亚洲精品中文字幕| 日韩av免费看网站| 国产欧美日韩视频| 久久久久久久久一区| 久久99精品久久久久久噜噜|