原始碼和文件分享 基於C 的約瑟夫生者死者遊戲

2021-09-27 11:07:48 字數 721 閱讀 2141

一、使用說明

1.1 專案簡介

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

1.2 專案功能要求

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

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

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

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

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

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

離開旅客的序號

剩餘旅客的序號

1.3 操作手冊

執行程式後,進入歡迎介面,首先要輸入資料。

第一步,輸入生死遊戲的總人數n、遊戲開始的位置s、死亡數字m、剩餘的生者人數k。

之後會顯示離開旅客的序號和剩餘旅客的序號。

原始碼和文件分享 基於C 的約瑟夫生者死者遊戲

一 使用說明 1.1 專案簡介 約瑟夫生者死者遊戲的大意是 30個旅客同乘一條船,因為嚴重超載,加上風高浪大危險萬分 因此船長告訴乘客,只有將全船一半的旅客投入海中,其餘人才能倖免於難。無奈,大家只得同意這種方法,並議定30個人圍成一圈,由第乙個人開始,依次報數,數到第9人,便將他投入大海中,然後從...

原始碼和文件分享 基於C 的約瑟夫生者死者遊戲

一 使用說明 1.1 專案簡介 約瑟夫生者死者遊戲的大意是 30個旅客同乘一條船,因為嚴重超載,加上風高浪大危險萬分 因此船長告訴乘客,只有將全船一半的旅客投入海中,其餘人才能倖免於難。無奈,大家只得同意這種方法,並議定30個人圍成一圈,由第乙個人開始,依次報數,數到第9人,便將他投入大海中,然後從...

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

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