[开源]C++代码分享

news2025/1/4 14:44:51

一,声明

        被人水平有限,开源只是为了分享。勿喷!!!还请大佬指点。

二,代码

// --------------------------------------------------------- 头文件 ----------------------------------------------- 

#include <iostream>
#include <cstdlib>
#include <ctime>
#include <cmath>
// -------------------------------------命名空间 --------------------------------------

using namespace std;
 
// -------------------------------------------------------------- 变量 ------------------------------------------------------------

int Options_1; // 第一个用户选项(选择四则运算) 
int Options_2; //第二个用户选项 (选择难度) 
long long answer;//用户的答案 
long long answer_2;
long long a , b;//两个数


// -------------------------------------------随机数生成 --------------------------------------------


void plan_1()
{
	srand(static_cast<unsigned int>(time(NULL))); // 随机生成种子
	a = rand() % 10;
	b = rand() % 10;
} 
 
 
 void plan_2()
{
	srand(static_cast<unsigned int>(time(NULL))); // 随机生成种子
 	a = rand() % 100;
 	b = rand() % 100;
}
 
 
 void plan_3()
{
	srand(static_cast<unsigned int>(time(NULL))); // 随机生成种子
 	a = rand() % 1000;
 	b = rand() % 1000;
}







void division_1()
{
	srand(static_cast<unsigned int>(time(NULL))); // 随机生成种子
	a = rand() % 10;
	b = rand() % 9 + 1;//生成1到9的随机数 
} 
 
 
 void division_2()
{
	srand(static_cast<unsigned int>(time(NULL))); // 随机生成种子
 	a = rand() % 100;
 	b = rand() % 99 + 1;//生成1到99的随机数 
}
 
 
 void division_3()
{
	srand(static_cast<unsigned int>(time(NULL))); // 随机生成种子
 	a = rand() % 1000;
 	b = rand() % 999 + 1;//生成1到999的随机数 
}


// -------------------------------------------------------------自定义函数 ----------------------------------------------------------------

void BUG()
{
	cout << "搁着卡BUG呢???"<< endl;
	cout << "搁着卡BUG呢???"<< endl;
	cout << "搁着卡BUG呢???"<< endl;
	cout << "????????????????????????" << endl;
	cout << "????????????????????????" << endl;
	cout << "????????????????????????" << endl;
	cout << "????????????????????????" << endl;
		
}


void screen_main()
{
    cout << "========== 超级无敌分级别计算训练器 ==========" << endl;
    cout << "1.两位数加法运算" << endl;
    cout << "2.两位数减法运算" << endl;
	cout << "3.两位数乘法运算" << endl;
	cout << "4.两位数除法运算" << endl;
} 


void screen_1()
{
	cout << "-------------------------------- 分级别加法计算练习器 -----------------------------------------" << endl;
	cout << "1.十以内的加法计算(so easy)" << endl;
	cout << "2.一百以内的加法计算(easy)" << endl;
	cout << "3.一千以内的加法计算(a little difficult)" << endl;
	cin >> Options_2;
	if(Options_2 == 1)
	{
		plan_1();
		cout << a << "+" << b << "=?" << endl;
		cin >> answer;
		if (answer == a + b)
		{
			cout << "True" << endl;
			
		}
	else{
		cout << "False" << endl;	
		}
		
	}
	
	
	
	if(Options_2 == 2)
	{
		plan_2();
		cout << a << "+" << b << "=?" << endl;
		cin >> answer;
		if (answer == a + b)
		{
			cout << "True" << endl;
			
		}
		else
		{
		cout << "False" << endl;	
		}
	}
	
	
	
	if(Options_2 == 3)
	{
		plan_3();
		cout << a << "+" << b << "=?" << endl;
		cin >> answer;
		if (answer == a + b)
		{
			cout << "True" << endl;
			
		}
		else
		{
		cout << "False" << endl;	
		}
	
   	}
   	
   	
   	if (Options_2 < 1 || Options_2 > 3)//错误判断 
	{
		BUG();
	}
}










void screen_2()
{
	cout << "-------------------------------- 分级别减法计算练习器 -----------------------------------------" << endl;
	cout << "1.十以内的减法计算(so easy)" << endl;
	cout << "2.一百以内的减法计算(easy)" << endl;
	cout << "3.一千以内的减法计算(a little difficult)" << endl;
	cin >> Options_2;
	if(Options_2 == 1)
	{
		plan_1();
		cout << a << "-" << b << "=?" << endl;
		cin >> answer;
		if (answer == a - b)
		{
			cout << "True" << endl;
			
		}
	else{
		cout << "False" << endl;	
		}
		
	}
	
	
	
	if(Options_2 == 2)
	{
		plan_2();
		cout << a << "-" << b << "=?" << endl;
		cin >> answer;
		if (answer == a - b)
		{
			cout << "True" << endl;
			
		}
		else
		{
		cout << "False" << endl;	
		}
	}
	
	if(Options_2 == 3)
	{
		plan_3();
		cout << a << "-" << b << "=?" << endl;
		cin >> answer;
		if (answer == a - b)
		{
			cout << "True" << endl;
			
		}
		else
		{
		cout << "False" << endl;	
		}
	
   	}
   	
   	
   	if (Options_2 < 1 || Options_2 > 3)//错误判断 
	{
		BUG();
	}
}


void screen_3()
{
	cout << "-------------------------------- 分级别乘法计算练习器 -----------------------------------------" << endl;
	cout << "1.十以内的乘法计算(so easy)" << endl;
	cout << "2.一百以内的乘法计算(easy)" << endl;
	cout << "3.一千以内的乘法计算(a little difficult)" << endl;
	cin >> Options_2;
	if(Options_2 == 1)
	{
		plan_1();
		cout << a << "x" << b << "=?" << endl;
		cin >> answer;
		if (answer == a * b)
		{
			cout << "True" << endl;
			
		}
	else{
		cout << "False" << endl;	
		}
		
	}
	
	
	
	if(Options_2 == 2)
	{
		plan_2();
		cout << a << "x" << b << "=?" << endl;
		cin >> answer;
		if (answer == a * b)
		{
			cout << "True" << endl;
			
		}
		else
		{
		cout << "False" << endl;	
		}
	}
	
	if(Options_2 == 3)
	{
		plan_3();
		cout << a << "x" << b << "=?" << endl;
		cin >> answer;
		if (answer == a * b)
		{
			cout << "True" << endl;
			
		}
		else
		{
		cout << "False" << endl;	
		}
	
   	}
   	
   	
   	if (Options_2 < 1 || Options_2 > 3)//错误判断 
	{
		BUG();
	}
}


void screen_4()
{
	cout << "-------------------------------- 分级别除法计算练习器 -----------------------------------------" << endl;
	cout << "1.十以内的除法计算(so easy)" << endl;
	cout << "2.一百以内的除法计算(easy)" << endl;
	cout << "3.一千以内的除法计算(a little difficult)" << endl;
	cout << "请依次输入商和余数" << endl;
	cin >> Options_2;
	if(Options_2 == 1)
	{
		division_1();
		cout << a << "/" << b << "=?" << endl;
		cin >> answer >> answer_2;
		if (answer == a / b && answer_2 == a % b)
		{
			cout << "True" << endl;
			
		}
	else{
		cout << "False" << endl;	
		}
		
	}
	
	
	
	if(Options_2 == 2)
	{
		division_2();
		cout << a << "/" << b << "=?" << endl;
		cin >> answer >> answer_2;
		if (answer == a / b && answer_2 == a % b)
		{
			cout << "True" << endl;
			
		}
		else
		{
		cout << "False" << endl;	
		}
	}
	
	if(Options_2 == 3)
	{
		division_3();
		cout << a << "/" << b << "=?" << endl;
		cin >> answer >> answer_2;
		if (answer == a / b && answer_2 == a % b)
		{
			cout << "True" << endl;
			
		}
		else
		{
		cout << "False" << endl;	
		}
	
   	}
   	
   	
   	if (Options_2 < 1 || Options_2 > 3)//错误判断 
	{
		BUG();
	}
}


// -----------------------------------------------主函数 -------------------------------------------

int main()
{
	screen_main();//调用screen_main函数
	cin >> Options_1; //选项1
	
	
	if(Options_1 == 1)
	{
		screen_1();
	} 
	
	
	if(Options_1 == 2)
	{
		screen_2();
	}
	
	
	if(Options_1 == 3)
	{
		screen_3();
	}
	
	
	if(Options_1 == 4)
	{
		screen_4();
	}
	if (Options_1 < 1 || Options_1 > 4)
	{
		BUG();
		return 0;
	} 

}


/* -----------------------------------------------------------------日志 ------------------------------------------------------------
[2024/8/29]:完成了加法全部部分 
[2024/8/29]:完成了减法全部部分
[2024/8/29]:完成了乘法全部部分
[2024/8/29]:完成了除法全部部分
待解决BUG:除法出现除零  除法出现无限循环/不循环小数导致计算错误 
[2024/8/30]:除零BUG已修复 
[2024/8/30]:BUG修复失败,睡觉! 
------------------------------------------------------------------- 日志 --------------------------------------------------------------*/ 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2269644.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【论文笔记之 Mega-TTS2】Boosting Prompting Mechanisms For Zero-Shot Speech Synthesis

本文对 Ziyue Jiang 等人于 2024 年发表的论文进行简单地翻译。如有表述不当之处欢迎批评指正。欢迎任何形式的转载&#xff0c;但请务必注明出处。 论文链接&#xff1a;https://arxiv.org/pdf/2307.07218 目录 Abstract1. 介绍2. 背景3. 方法3.1. 解耦出韵律和音色3.2. 压缩…

haproxy+nginx负载均衡实验

准备三台虚拟机&#xff1a; HAProxy 服务器192.168.65.131Web 服务器 1192.168.65.132Web 服务器 2192.168.65.133 在 HAProxy 服务器&#xff08;192.168.65.131&#xff09;上操作&#xff1a; 安装 HAProxy&#xff1a; sudo yum install -y haproxy编辑 HAProxy 配置…

[论文阅读] (34)ESWA2024 基于SGDC的轻量级入侵检测系统

《娜璋带你读论文》系列主要是督促自己阅读优秀论文及听取学术讲座&#xff0c;并分享给大家&#xff0c;希望您喜欢。由于作者的英文水平和学术能力不高&#xff0c;需要不断提升&#xff0c;所以还请大家批评指正&#xff0c;非常欢迎大家给我留言评论&#xff0c;学术路上期…

华三交换机怎么进行链路聚合?

目录 准备&#xff1a;两台交换机 配置&#xff1a;进行交换机配置 完成&#xff1a;检查链路聚合是否成功 准备&#xff1a;两台交换机 1、进行连线 2、上行Core交换机都选取 Ten-GigabitEthernet1/0/51、Ten-GigabitEthernet1/0/52和 Ten-GigabitEthernet2/0/51、Ten-Giga…

【无线传感网】无线传感器网络覆盖技术

文章目录 覆盖算法设计思路及性能评价标准覆盖感知模型布尔感知模型概率感知模型 无线传感网络覆盖算法分类按照配置方式确定性覆盖随机性覆盖 根据覆盖目标面覆盖点覆盖栅栏覆盖 典型的WSN覆盖算法与协议基于网格的覆盖定位传感器配置算法圆周覆盖连通传感器覆盖轮换活跃/休眠…

积分图(Integral Image)与均值滤波的快速实现

积分图&#xff08;Integral Image&#xff09;也称为求和图&#xff08;Summed Area Table&#xff09;&#xff0c;是一种用于快速计算图像中任意矩形区域像素值总和的技术。 基本概念 积分图的每个位置(i, j)存储的是从图像左上角(1, 1)到当前位置(i, j)所有像素值的累积和…

MySQL数据库笔记——多版本并发控制MVCC

大家好&#xff0c;这里是Good Note&#xff0c;关注 公主号&#xff1a;Goodnote&#xff0c;本文详细介绍MySQL的并发控制&#xff1a;多版本并发控制MVCC。 文章目录 背景介绍数据库并发控制——锁机制悲观锁和乐观锁悲观锁乐观锁 数据库并发控制——MVCC 的引入MVCC 和锁机…

css3实现文字下滑波浪线

上效果 上菜 text-decoration 属性作用&#xff1a;用于设置或检索文本的装饰线&#xff0c;如下划线、上划线、删除线等 text-decoration: line || color || style; 参数&#xff1a; line: 指定装饰线类型&#xff0c;如 underline&#xff08;下划线&#xff09;、overline&…

Springboot 3项目整合Knife4j接口文档(接口分组详细教程)

文章目录 前言一、Spring Boot 3.0整合Knife4j二、OpenApi 3注解的使用规范三、使用步骤 1.Spring Boot 3.0项目中使用knife4j2.在application.yml中添加knife4j相关配置3.设置WebMvc相关配置&#xff08;解决封装统一异常处理后doc.html无法打开的问题&#xff09;4.创建Knif…

2024年中国新能源汽车用车发展怎么样 PaperGPT(一)

概述 在国家政策的强力扶持下&#xff0c;2024年中国新能源汽车市场迎来了新的发展机遇。本文将基于《中国新能源汽车用车报告&#xff08;2024年&#xff09;》的数据&#xff0c;对新能源汽车的市场发展和用车趋势概述。 新能源汽车市场发展 政策推动&#xff1a;国家和地…

华三交换机如何进行堆叠?

准备&#xff1a;两台交换机堆叠 1、进行连线 2、交换机都选取 FortyGigE1/0/53 和 FortyGigE1/0/54 做 堆叠口 配置&#xff1a;进行交换机配置 X_T1_Core_1&#xff1a; [X_T1_Core_1]irf domain 0 //同一拓扑内如果有其它堆叠组&#xff0c;domain不能重复 [X_T1_Core_1]…

活动预告 | Microsoft 安全在线技术公开课:通过扩展检测和响应抵御威胁

课程介绍 通过 Microsoft Learn 免费参加 Microsoft 安全在线技术公开课&#xff0c;掌握创造新机遇所需的技能&#xff0c;加快对 Microsoft Cloud 技术的了解。参加我们举办的“通过扩展检测和响应抵御威胁”技术公开课活动&#xff0c;了解如何更好地在 Microsoft 365 Defen…

Sonic:开源Go语言开发的高性能博客平台

Sonic&#xff1a;一个用Go语言开发的高性能博客平台 简介 Sonic&#xff0c;一个以其速度如声速般快速而命名的博客平台&#xff0c;是一个用Go语言开发的高性能博客系统。正如其名字所暗示的&#xff0c;Sonic旨在提供一个简单而强大的博客解决方案。这个项目受到了Halo项目…

大模型WebUI:Gradio全解系列8——Additional Features:补充特性(上)

大模型WebUI&#xff1a;Gradio全解系列8——Additional Features&#xff1a;补充特性&#xff08;上&#xff09; 前言本篇摘要8. Additional Features&#xff1a;补充特性8.1 队列8.1.1 使用方法8.1.2 配置队列演示 8.2 输入输出流8.2.1 输出流1. 生成器yield2. 流媒体 8.2…

音视频入门基础:MPEG2-PS专题(4)——FFmpeg源码中,判断某文件是否为PS文件的实现

一、引言 通过FFmpeg命令&#xff1a; ./ffmpeg -i XXX.ps 可以判断出某个文件是否为PS文件&#xff1a; 所以FFmpeg是怎样判断出某个文件是否为PS文件呢&#xff1f;它内部其实是通过mpegps_probe函数来判断的。从《FFmpeg源码&#xff1a;av_probe_input_format3函数和AVI…

【Leetcode】3280. 将日期转换为二进制表示

文章目录 题目思路代码复杂度分析时间复杂度空间复杂度 结果总结 题目 题目链接&#x1f517; 给你一个字符串 date&#xff0c;它的格式为 yyyy-mm-dd&#xff0c;表示一个公历日期。 date 可以重写为二进制表示&#xff0c;只需要将年、月、日分别转换为对应的二进制表示&a…

Spring实现输出带动态标签的日志

版权说明&#xff1a; 本文由博主keep丶原创&#xff0c;转载请保留此块内容在文首。 原文地址&#xff1a; https://blog.csdn.net/qq_38688267/article/details/144851857 文章目录 背景底层原理实现方案Tag缓存实现封装注解通过AOP实现日志缓存封装行为参数通用方法实现手动…

JAVA: 状态模式(State Pattern)的技术指南

1、简述 状态模式是一种行为型设计模式,允许对象在其内部状态改变时改变其行为。它将状态相关的行为抽取到独立的状态类中,使得增加新状态变得简单,且不影响其他状态。 设计模式样例:https://gitee.com/lhdxhl/design-pattern-example.git 本文将详细介绍状态模式的概念…

小程序基础 —— 02 微信小程序账号注册

微信小程序账号注册 小程序开发与网页开发不一样&#xff0c;在开始微信小程序开发之前&#xff0c;需要访问微信公众平台&#xff0c;注册一个微信小程序账号。 有了小程序的账号以后&#xff0c;才可以开发和管理小程序&#xff0c;后续需要通过该账号进行开发信息的设置、…

安卓入门十一 常用网络协议四

MQTT&#xff08;Message Queuing Telemetry Transport&#xff09; MQTT是一种轻量级的、发布/订阅模式的消息传输协议。它被设计用于在低带宽或不稳定网络环境下&#xff0c;实现物联网设备之间的可靠通信。 4.1 MQTT详细介绍 发布/订阅模式&#xff1a;MQTT 使用发布/订…