黄金点游戏程序注解

黄金点游戏介绍说明:

N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值。提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分。玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动。

程序思路:1.利用for循环,scanf输入可以参加的人数以及每个人的输入值;

2.判断每个人的输入值是否合法,如果否,请重新输入,i--;

3.求出黄金点并且利用fabs函数,把所得值赋值给一个新的数组b[];

4.再次利用for循环,求出最大,最小值,并且求出下角标i的值,并且打印出来;

5.结束循环,并且打印每次结果。

以下为每小部分程序的注解以及思路:

#include "stdafx.h"
#include "stdio.h"
#include "string.h"
#include "math.h"
void gameguide();         //游戏介绍说明
void gamebegin();         //游戏开始
void gameover()
{
    printf("感谢您的使用,我们下次再会\n");
}; 

函数定义以及头文件的说明;

void main(int argc, char* argv[])
{
    int n;
    printf("**********欢迎来到黄金点游戏******************\n");         /*整个程序的游戏界面*/
    printf("**********1 游戏指导说明    **************\n");
    printf("**********2    开始游戏     ****************\n");
    printf("**********3    游戏结束      ***************\n");
    while(1)
    {
        scanf("%d",&n);
        switch(n)        //利用switch函数进行函数的调用
        {
        case 1:   gameguide();   break;
        case 2:   gamebegin();   break;
        case 3:   gameover();    break;
        }
    }
}

此程序为单机,游戏界面的设计以及利用switch函数进行对函数的调用;

printf("您选择参加的人数是:\n");
    scanf("%d",&z);       //参加的人数
    printf("请您选择参加的次数:\n");
    scanf("%d",&h);
    for(j=1;j<=h;j++)     //参加的次数
    {
        for(i=1;i<=z;i++)
        {
            printf("第%d个随机数字是:\n",i);
            scanf("%f",&a[i]);       //输入每个人数字

利用双重for循环,进行实现对题目的人数和游戏次数的设计,并且输入数字;

if(a[i]>100)
            {
                printf("请重新输入符合要求的数字");
                      i--;           //如果数字不符合要求,则重新加入
            }
            s=s+a[i];
        }
        g=s/z;
        printf("该组数字的黄金点是:%f\n",0.618*g);     //求出黄金点数字

判断输入数字是否合法,如若不合法,则i--,并且提示重新输入,利用s+=s;进行对于黄金点的求算并且答应出来;

for(i=1;i<=z;i++)
        {
            b[i]=fabs((0.618*g-a[i]));             //求出数字和黄金点的差值,斌且赋值给b[i]
            printf("%f\n",b[i]);
        }

利用for循环和fabs函数将(所有数字-黄金点)的差值赋值给b[],

for(i=1;i<z;i++)
        {
            if(min>b[i])
            {
                min=b[i];         //求出最小值,斌且找出地i个人
                c=i;
            }
        }
        printf("与%f的差值最小,是%d个人,得分为:%d\n",min,c,z);

再次利用for循环,进行对最小值的查找,然后找出第i个值,并且打印出来,完成整个程序;

执行程序截图,程序完美运行,实现作业布置要求,如若发现问题,及时跟进博客进度,以及上传coding程序。

总结:本次的程序可以说并不难写,就是之前自己一直拖拉没有好好的完成,在这个项目的过程中不断地完善自己的编程能力,更加注中对于团队项目的合作以及与团队项目人员的相处,再本次任务中,能够合理的安排每个人员的工作以及扮演好自己的任务,我觉得十分重要,谢谢本次项目的小伙伴以及老师的认真负责,一次不错的编程体验!!!

时间: 2024-11-05 13:47:46

黄金点游戏程序注解的相关文章

结对编程:黄金点游戏

一.游戏内容 黄金点游戏是一个数字小游戏,其游戏规则是: N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分.玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动. 二.程序实现功能 每次输入N个数字,计算出平均值和G点,输入数字最靠近G的同学得N分,离G最远的同学得到-2分

结对编程之黄金点游戏

   一.关于游戏 黄金点游戏是一个数字小游戏,其游戏规则是: N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分.玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动. 现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下: 1.本作业属于结对编程项目,必

结队项目(黄金点游戏)

一.项目内容 黄金点游戏是一个数字小游戏,其游戏规则是: N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分.玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动. 现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下: 1.本作业属于结对编程项目,必须由二

(第五周)结对项目——黄金点游戏

黄金点游戏 黄金点游戏是一个数字小游戏,其游戏规则是: N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分.玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动. 现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下: 1.本作业属于结对编程项目,必须由二人

结对编程-黄金点游戏

一.项目描述:黄金点游戏 黄金点游戏是一个数字小游戏,其游戏规则是: N个同学(N通常大于10),每人写一个0-100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分.玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动. 现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下: 1.本作业属于结对编程项

结对编程——黄金点游戏

结对编程项目-黄金点游戏 一.项目描述:黄金点游戏是一个数字小游戏,其游戏规则是: N个同学(N通常大于10),每人写一个0-100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分.玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动. 现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下: 1.本作业

黄金点游戏(js+css)

一.项目描述:黄金点游戏 黄金点游戏是一个数字小游戏,其游戏规则是: N个同学(N通常大于10),每人写一个0-100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分.玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动. 现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下: 1.本作业属于结对编程项

结对编程黄金点游戏

此次结对编程我是与同班的王鑫同学一组,题目是设计一个黄金点游戏,本来看老师建议界面和服务器的设计,想用java来写,但是我俩对于java不太熟悉,忙活了两天没有结果,干脆用我二人共同会的语言C语言来实现,所以我二人决定通过C语言来实现这个游戏. 题目要求设计的游戏的规则为:有N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远

黄金点游戏

一.项目描述:黄金点游戏 黄金点游戏是一个数字小游戏,其游戏规则是: N个同学(N通常大于10),每人写一个0-100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分.玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动. 现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下: 1.本作业属于结对编程项