【c++】通过写一个C++函数来模拟跨境洗钱和系统警告

效果图:

源码:

cpp 复制代码
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <iomanip>
#include <chrono>
#include <thread> // 引入线程头文件

#ifdef _WIN32 // 确保只在Windows上包含Windows.h
#include <windows.h>
#endif

using namespace std;

int main() {
	// 模拟一个跨国银行账户ID(仅为示例)
	int id;
	cout << "请输入你的跨国银行账户(仅为示例):" << endl;
	cin >> id; // 注意:实际应用中不会直接存储用户输入的账户ID
	
	// 模拟10次随机金额的转账
	for (int i = 1; i <= 10; ++i) {
		int money = std::rand() % 1701 + 800; // 生成800到2500之间的随机金额
		auto now = std::chrono::system_clock::now();
		auto time_t = std::chrono::system_clock::to_time_t(now);
		std::cout << std::put_time(std::localtime(&time_t), "%Y-%m-%d %H:%M:%S") << " 转入 #" << i << ": ";
		std::cout << "已成功转入" << money << "元!" << std::endl;
		
		// 使用跨平台的线程暂停
		std::this_thread::sleep_for(std::chrono::milliseconds(rand() % 300 + 200));
	}
	
	// 弹出警告消息(跨平台)
#ifdef _WIN32 // 如果在Windows上,使用MessageBox
	HWND hWnd = GetConsoleWindow();
	SetForegroundWindow(hWnd);
	MessageBox(NULL, "注意:您可能在进行非法跨境洗钱。请立即停止!!!!", "违法警示", NULL);
#else // 如果在非Windows平台上,使用cout
	cout << "\n注意:您可能在进行非法跨境洗钱。请立即停止!!" << endl;
#endif
	
	return 0;
}

代码解释

  1. 包含头文件:您包含了多个头文件,用于输入输出、随机数生成、时间处理、窗口操作等。

  2. 全局变量 :id 和 total 被声明,但 total 并未在代码中使用。

  3. 随机数种子:您使用当前时间作为随机数生成器的种子。

  4. 输入账户:程序提示用户输入一个"跨国银行账户",但实际上这个账户号在后续的代码中并未被使用。

  5. 转账模拟:

    • 程序模拟了10次转账,每次转入的金额在800到2500元之间(std::rand() % 1701 + 800)。
    • 转账前,程序输出了当前的日期和时间。
    • 每次转账后,程序都会暂停一段时间(使用 Sleep 函数)。
  6. 窗口操作:

    • 程序最后尝试将控制台窗口设置为前台窗口。
    • 接着,它弹出一个警告消息框,表示检测到了"非法跨境洗钱"。

警告:

该程序只用于模拟和警示切勿用于非法用途!!!

相关推荐
fensnote8 分钟前
西门子 S7 PLC 内部寄存器读写 Demo(C 语言)
c语言·开发语言
benchmark_cc44 分钟前
量化项目启动时,应该先设计数据接口还是先编写策略?从系统架构角度做出正确选择
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
2601_962885721 小时前
如何用 Python 判断一只股票“追涨”还是“抄底”更有效?
android·开发语言·python
把我格子衫拿来1 小时前
VTK 与 Qt 的 CMake 工程怎么组织?模块、工具链与二进制兼容排错
c++·qt·vtk·cmake·工程实践
denlaku1 小时前
JDK 15 新特性详解
java·开发语言
滴滴答答哒1 小时前
C# 技巧:优雅实现对象的“局部更新”与“字段合并”
开发语言·c#
灯澜忆梦2 小时前
【面向对象编程c++】| 指针与自定义数据类型
开发语言·c++·算法
Brilliantwxx2 小时前
【Linux】 自主shell编写巩固复习篇
linux·运维·服务器·开发语言
十年Java程序媛2 小时前
Java 多线程基础与锁机制详解|进程线程、锁升级、synchronized 与 Lock 对比
java·开发语言·spring boot
弯_弯2 小时前
FDE 的工程能力画像:数据接入、PoC 与可复用资产的落地口径
java·服务器·开发语言