2.随机数

2.必备知识点-随机数


2.1 知识点

生成随机数

为了生成随机数,我们可以按照以下步骤操作:

  • 引入 CustomConsole 文件。
  • 在文件中添加引用 #include "CustomConsole.h"
  • 使用 getRandom() 函数生成随机数。

示例代码:

int i = getRandom(10, 20);
cout << i << endl;

for (int i = 0; i < 10; i++)
{
    cout << getRandom(0, 100) << endl;
}

在这个示例中,getRandom(10, 20) 会生成一个在 10 到 20 之间的随机数,而 getRandom(0, 100) 会生成一个在 0 到 100 之间的随机数,并在循环中打印出 10 个随机数。


2.2 知识点代码

必备知识点2_随机数.cpp

#include <iostream>
#include "CustomConsole.h"
using namespace std;
int main()
{
    std::cout << "随机数!\n";

    #pragma region 知识点 生成随机数

    //1.引入韬老狮写的文件CustomConsole
    //2.添加文件引用#include "CustomConsole.h"
    //3.使用方法生成随机数

    int i = getRandom(10, 20);
    cout << i << endl;

    for (int i = 0; i < 10; i++)
    {
        cout << getRandom(0, 100) << endl;
    }

    #pragma endregion
}

2.3 练习题

韬老狮打小怪兽

韬老狮攻击力为8~12之间的一个值
小怪兽防御为10,血量为20
在控制台中通过打印信息表现韬老狮打小怪兽的过程
描述小怪兽的掉血情况

伤害计算公式:攻击力小于防御力时,减血为0,否则减血攻击力和防御力的差值

知识点:循环、随机数等等

声明各个对象的相关属性

int teacherTangAtk = 0; //韬老狮的攻击力 默认为0
int monsterDef = 10; //小怪兽防御为10
int monsterHp = 20; //小怪兽血量为20

构建死循环随机出攻击力,检查扣血

//死循环
while (true)
{
    //进行每一次攻击
    //每次攻击之前 对韬老狮的攻击力 进行随机
    teacherTangAtk = getRandom(8, 12);

    //如果攻击力大于怪物的防御力
    if (teacherTangAtk > monsterDef)
    {
        //减血逻辑
        //用 怪物的血量 - 攻击力和防御力的差值
        monsterHp -= teacherTangAtk - monsterDef;

        cout << "韬老狮本次攻击力为" << teacherTangAtk << ",造成了" <<
            teacherTangAtk - monsterDef << "点伤害,怪物当前血量为" << monsterHp << endl;

        //怪物血量小于等于0,证明怪物已经死亡 没有必要再进行循环 计算伤害了
        if (monsterHp <= 0)
            break;
    }
    else
        cout << "韬老狮本次攻击力为" << teacherTangAtk << ",不足以造成伤害" << endl;

    cout << "请按任意键继续游戏" << endl;
    _getch();
    system("cls");
}

cout << "怪物已死亡" << endl;

2.4 练习题代码

必备知识点2_练习题.cpp

#include <iostream>
#include "CustomConsole.h"
#include <conio.h>
using namespace std;
int main()
{
    std::cout << "随机数 练习题\n";

    #pragma region 练习题
    //韬老狮打小怪兽
    //韬老狮攻击力为8~12之间的一个值
    // 
    //小怪兽防御为10,血量为20
    // 
    //在控制台中通过打印信息表现韬老狮打小怪兽的过程
    //描述小怪兽的掉血情况
    // 
    //伤害计算公式:攻击力小于防御力时,减血为0,否则减血 攻击力和防御力的差值
    //
    //知识点:循环、随机数等等

    //怪物相关属性
    int monsterDef = 10;
    int monsterHp = 20;
    int teacherTangAtk = 0;

    //死循环
    while (true)
    {
        //进行每一次攻击
        //每次攻击之前 对韬老狮的攻击力 进行随机
        teacherTangAtk = getRandom(8, 12);
        //如果攻击力大于怪物的防御力
        if (teacherTangAtk > monsterDef)
        {
            //减血逻辑
            //用 怪物的血量 - 攻击力和防御力的差值
            monsterHp -= teacherTangAtk - monsterDef;
            cout << "韬老狮本次攻击力为" << teacherTangAtk << ",造成了" <<
                teacherTangAtk - monsterDef << "点伤害,怪物当前血量为" << monsterHp << endl;
            //怪物血量小于等于0,证明怪物已经死亡 没有必要再进行循环 计算伤害了
            if (monsterHp <= 0)
                break;
        }
        else
            cout << "韬老狮本次攻击力为" << teacherTangAtk << ",不足以造成伤害" << endl;

        cout << "请按任意键继续游戏" << endl;
        _getch();
        system("cls");
    }
    cout << "怪物已死亡" << endl;

    #pragma endregion

}


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com

×

喜欢就点赞,疼爱就打赏