繁体   English   中英

尝试使用函数c ++创建骰子游戏

[英]trying to create a dice game using function c++

我正在尝试让功能确定结果

一种。 如果数字加起来等于5、7或12,则玩家获胜,并且该函数应返回对此的指示(使用某个整数表示获胜)。 b。 如果数字加起来等于2、4或11,则玩家输了,该函数应返回一个指示(再次使用整数)。 C。 如果数字相加,则该游戏为平局,函数应以整数表示。

问题,赢家,输家和平局是否需要其他功能?

以及如何将整数返回给main,以使main知道,如果我们有赢家,则输家平局。

只是学习编程的任何帮助将不胜感激

 //function
 int outcome(int, int)
    {
    int die1;
    int die2;
    int winner;
    int loser;
    int draw;

      if (die1&&die2==5||7||12)

      return 99;

      if (die1&&die2==2||4||11)

      return loser;

      else
      return draw;
      }



    // func to get a random number
    int rollDice()
    {
    int roll;

    roll = (rand()%6)+1;

    return roll;
    }

主要功能

#include <iostream> 
#include <cstdlib> 
#include <fstream> 

using namespace std; 

int main() 
{ 
double die1=0; 
double die2=0;
int winner=0; //counter for winners   
int loser=0; //counter for losers
int draw=0; //counter for draw 

//func to determine the outcome 
int outcome(int, int); 

//func for random numbers 
int rollDice(); 

int outcome(int, int) 
if (return==99) 
    cout <<"winner";

您的代码有几个语法错误。 如果我想做一个将两个整数相加的函数,我会做这样的事情:

int add(int a, int b) //VARIABLES MUST CARRY A NAME!
{
    return a+b;
}

如果要使用条件,请执行以下操作:

if(a==5 && b==6 || a==6 && b==7) //Just as an example

您的固定条件是:

if (die1+die2==5 || die1+die2==7 || die1+die2==12)

另外,研究变量范围。 假设我有以下几点:

int main()
{
    int myVar = 1;
}

int anotherFunction()
{
    println("%d", myVar); //This will cause an error, because myVar doesn't exist here, it only exists in main()
}

这些是我在您的代码中看到的最明显的错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM