C++人工智能程序01B版本及上课摸鱼停更通知

2024-04-26 23:12

本文主要是介绍C++人工智能程序01B版本及上课摸鱼停更通知,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这次的人工智能新增聊天功能,但只能识别一部分话语,建议先看好代码

现在他的计算功能和储存功能已经基本完成,只需要发现bug并解除bug再加一些功能就行了

另外上课摸鱼停更了,我结合了多方面因素选择停更,有这几个原因:1.占用太多时间 2.没什么意思 3.有对学校上课的负面影响 4.有一定对老师的侮辱

至少我是这么认为的,这件事想了我一个月,这对我更新速度有一定影响

如果对这件事还有疑问,可以私聊我

切入正题,这AI的代码:

#include"bits/stdc++.h"
#include"Windows.h"
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
using namespace std;
bool memory[11]={false};
char z[1048576]={'`'};
void calculator(char b,double a,double c){if(b=='+') cout<<"\n"<<a+c;else if(b=='-') cout<<"\n"<<a-c;else if(b=='*') cout<<"\n"<<a*c;else if(b=='/') cout<<"\n"<<a/c;else cout<<"\n输入无效";
}
void chat(string l){if(l=="你好"){system("cls");cout<<"你好";}else if(l=="你好骚年"){system("cls");cout<<"你好,但我可不是什么骚年,我是人工智能QPBS01B!";}else if(l=="man"||l=="what can I say"||l=="manba out"||l=="man,what can I say"||l=="man,what can I say,manba out"){system("cls");cout<<"青春没有售价,扣1复活牢大!!!";}else if(l=="我想要算数"){system("cls");cout<<"好的";Sleep(1000); double aa,cc;char bb;cout<<"\n请输入算式(a+b形式):";cin>>aa>>bb>>cc;calculator(bb,aa,cc);}else if(l=="我要记东西"){system("cls");cout<<"好的";Sleep(1000); cout<<"\n请输入要记的东西(不超过1048576字):";cin>>z;int o=strlen(z);cout<<"\n还能记"<<1048576-o<<"个字";Sleep(5000);}else if(l=="给我讲个笑话吧"){system("cls");cout<<"好的";Sleep(500);cout<<"\n我来讲个我的主人的老师的笑话吧";Sleep(500);cout<<"\n宋代诗人苏轼有个和尚朋友";Sleep(500);cout<<"\n一天他俩相见了";Sleep(500);cout<<"\n那个和尚说:“我今天看到你像一尊佛。”";Sleep(500);cout<<"\n苏轼说:“我今天看到你像一坨屎。”";Sleep(500);cout<<"\n苏轼回家后跟苏小妹说了这件事";Sleep(500);cout<<"\n苏小妹回答说:“一个人骂别人什么他的肚子里就装着什么”";Sleep(500);}else if(l=="你会什么"){system("cls"); cout<<"这个问题问得好\n";Sleep(500);cout<<"我会跟你说话,帮你计算,帮你记事,但有些功能小主人还没给我开发";}else if(l=="我想要看看我记的东西"){system("cls"); cout<<"好的\n";Sleep(500);for(int i=0;i<strlen(z);i++) cout<<z[i];}else if(l=="帮我查看一下电脑"){system("cls"); Sleep(500);system("dir/s"); }else if(l=="你的主人是谁"||l=="你的开发者是谁"){system("cls"); cout<<"这个问题问得好\n";Sleep(500);cout<<"我的主人是奇葩博士小王同学";}else{system("cls");cout<<"抱歉,我暂时不会解答";}
} 
void CPU(){for(int i=1;i<=10;i++) memory[i]=true;while(1){string ll;cin>>ll;chat(ll);}	
}
int main(){cout<<"\n\n\n\n	奇葩博士--小王同学的人工智能QPBS01B\n\n\n                     作者:王大虫\n\n\n         人工智能QPBS01B体验服务(A键开始)";while(!KEY_DOWN(65));for(int i=1;i<=100;i++){system("cls");cout<<"%"<<i;for(int j=1;j<=i;j++) cout<<"▌"; }system("cls");for(int i=0;i<3;i++){cout<<"正在开机.";Sleep(200);system("cls");cout<<"正在开机..";Sleep(200);system("cls");cout<<"正在开机...";Sleep(200);system("cls");}for(int i=1;i<=10;i++) memory[i]=true;while(1){system("cls");cout<<"我是人工智能QPBS01B";CPU(); }
}

记得给我一个关注和点赞

这篇关于C++人工智能程序01B版本及上课摸鱼停更通知的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/938925

相关文章

pytorch+torchvision+python版本对应及环境安装

《pytorch+torchvision+python版本对应及环境安装》本文主要介绍了pytorch+torchvision+python版本对应及环境安装,安装过程中需要注意Numpy版本的降级,... 目录一、版本对应二、安装命令(pip)1. 版本2. 安装全过程3. 命令相关解释参考文章一、版本对

如何用java对接微信小程序下单后的发货接口

《如何用java对接微信小程序下单后的发货接口》:本文主要介绍在微信小程序后台实现发货通知的步骤,包括获取Access_token、使用RestTemplate调用发货接口、处理AccessTok... 目录配置参数 调用代码获取Access_token调用发货的接口类注意点总结配置参数 首先需要获取Ac

Win32下C++实现快速获取硬盘分区信息

《Win32下C++实现快速获取硬盘分区信息》这篇文章主要为大家详细介绍了Win32下C++如何实现快速获取硬盘分区信息,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 实现代码CDiskDriveUtils.h#pragma once #include <wtypesbase

基于Python开发PDF转Doc格式小程序

《基于Python开发PDF转Doc格式小程序》这篇文章主要为大家详细介绍了如何基于Python开发PDF转Doc格式小程序,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 用python实现PDF转Doc格式小程序以下是一个使用Python实现PDF转DOC格式的GUI程序,采用T

C++ Primer 标准库vector示例详解

《C++Primer标准库vector示例详解》该文章主要介绍了C++标准库中的vector类型,包括其定义、初始化、成员函数以及常见操作,文章详细解释了如何使用vector来存储和操作对象集合,... 目录3.3标准库Vector定义和初始化vector对象通列表初始化vector对象创建指定数量的元素值

C++实现回文串判断的两种高效方法

《C++实现回文串判断的两种高效方法》文章介绍了两种判断回文串的方法:解法一通过创建新字符串来处理,解法二在原字符串上直接筛选判断,两种方法都使用了双指针法,文中通过代码示例讲解的非常详细,需要的朋友... 目录一、问题描述示例二、解法一:将字母数字连接到新的 string思路代码实现代码解释复杂度分析三、

springboot3.4和mybatis plus的版本问题的解决

《springboot3.4和mybatisplus的版本问题的解决》本文主要介绍了springboot3.4和mybatisplus的版本问题的解决,主要由于SpringBoot3.4与MyBat... 报错1:spring-boot-starter/3.4.0/spring-boot-starter-

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

将java程序打包成可执行文件的实现方式

《将java程序打包成可执行文件的实现方式》本文介绍了将Java程序打包成可执行文件的三种方法:手动打包(将编译后的代码及JRE运行环境一起打包),使用第三方打包工具(如Launch4j)和JDK自带... 目录1.问题提出2.如何将Java程序打包成可执行文件2.1将编译后的代码及jre运行环境一起打包2

C++一个数组赋值给另一个数组方式

《C++一个数组赋值给另一个数组方式》文章介绍了三种在C++中将一个数组赋值给另一个数组的方法:使用循环逐个元素赋值、使用标准库函数std::copy或std::memcpy以及使用标准库容器,每种方... 目录C++一个数组赋值给另一个数组循环遍历赋值使用标准库中的函数 std::copy 或 std::