原始碼和文件分享 使用C 實現的約瑟夫生死遊戲

2021-09-27 11:07:48 字數 626 閱讀 9329

一、專案簡介

約瑟夫生者死者遊戲的大意是:30個旅客同乘一條船,因為嚴重超載,加上風高浪大危險萬分;因此船長告訴乘客,只有將全船一半的旅客投入海中,其餘人才能倖免於難。無奈,大家只得統一這種方法,並議定30個人圍成一圈,由第乙個人開始,依次報數,數到第9人,便將他投入大海中,然後從他的下乙個人數起,數到第9人,再將他投入大海,如此迴圈,直到剩下15個乘客為止。問哪些位置是將被扔下大海的位置。

本遊戲的數學建模如下:假如n個旅客排成乙個環形,依次順序編號1,2,…, n。從某個指定的第s號開始。沿環計數,每數到第m個人就讓器出列,且從下乙個人開始重新計數,繼續進行下去。這個過程一直進行到剩下k個旅客為止。

本遊戲要求使用者輸入的內容包括:

旅客的個數,也就是n的值

離開旅客的間隔書,也就是m 的值

所有旅客的序號作為一組資料要求存放在某種資料結構中

本遊戲要求輸出的內容是包括:

離開旅客的序號

剩餘旅客的序號

二、構建設想

因為是乘客要構成乙個環形,所以很容易的就讓人聯想到了直接用迴圈鍊錶來解決這個問題,然後要注意到迴圈鍊錶的插入刪除所需要注意的選項就可以實現系統的大部分功能了。最後注意一些異常情況的拍錯,提高程式的健壯性,優化**的可讀性。

原始碼和文件分享 使用C 實現的N皇后問題

一 專案簡介 八皇后問題是乙個古老而著名的問題,是回溯演算法的經典問題。該問題是十九世紀著名的數學家高斯在1850年提出的 在8 8的西洋棋棋盤上,安放8個皇后,要求沒有乙個皇后能夠 吃掉 任何其它乙個皇后,即任意兩個皇后不能處於同一行,同一列或者同一條對角線上,求解有多少種擺法。高斯認為有76種方...

原始碼和文件分享 程式設計使用WMI

背景 wmi出現至今已經二十多年了,但很多人對它並不熟悉。知道它很好很強大,但不知道它從 來,怎麼工作,使用範圍是什麼?wmi有一組api。我們不管使用vbscript powershell指令碼還是利用c 的來訪問wmi的類庫,都是因為wmi向外暴露的一組api。這些api是在系統安裝wmi模組的...

原始碼和文件分享 使用C 實現的考試報名系統

一 專案簡介 考試報名工作給各高校報名工作帶來了新的挑戰,給教務管理部門增加了很大的工作量。本專案是對考試報名管理的簡單模擬,用控制台選項的選擇方式完成下列功能 輸入考生資訊 輸出考生資訊 查詢考生資訊 新增考生資訊 修改考生資訊 刪除考生資訊。二 構建設想 本題目實際上是乙個相對簡單的鍊錶題目,為...