当前位置: 首页 > news >正文

C++版iwanna1

第一篇目录

  • 开头
  • 程序
    • Game.cpp源文件
    • Player.h头文件
    • Player.cpp源文件
    • trigger.h头文件
    • trigger.cpp源文件
    • Cmp.h头文件
    • Cmp.cpp源文件

开头

大家好,我叫这是我58。

程序

Game.cpp源文件

#define _CRT_SECURE_NO_WARNINGS 1
#include <iostream>
#include <cstring>
#include <fstream>
#include <cstdio>
#include "Player.h"
#include "trigger.h"
using namespace std;
void deadset(int (*deadarr)[3], fstream& fs) {int i = 0;for (; i < 3; i++) {fs >> (*deadarr)[i];fs.flush();}
}
void printstart() {cout << "*****    * * *   ***   *   *  *   *   ***      ***    ***     *****   ***     *****  *   *  *****   \033[32;1m* *  ***    * *\033[0m" << endl;cout << "  *      * * *  *   *  **  *  **  *  *   *    *      *   *      *    *   *      *    *   *  *     \033[32;1m * *  *      * *\033[0m " << endl;cout << "  *      * * *  *****  * * *  * * *  *****    *  **  *   *      *    *   *      *    *****  *****       \033[32;1m* ***\033[0m      " << endl;cout << "  *       * *   *   *  *  **  *  **  *   *    *   *  *   *      *    *   *      *    *   *  *           \033[32;1m*   *\033[0m      " << endl;cout << "*****     * *   *   *  *   *  *   *  *   *     ***    ***       *     ***       *    *   *  *****        \033[32;1m***\033[0m       " << endl;
}
int main() {system("title I WANNA GO TO THE \"G\"");char strmap[22][22] = {'G',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X','X','X',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','#',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*','X','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*','*','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','S',' ','X','X','X','X','X','X','X','X','X','X','X','*','*','*','X','X','X','X','X','X','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*',' ','S','*','*','*','*','*','*','*','*','*',' ',' ',' ',' ',' ',' ',' ',' ',' ','*',' ',' ','*',' ',' ','X',' ',' ',' ',' ',' ',' ','*','X','*',' ',' ',' ',' ',' ','*',' ',' ',' ',' ','G',' ',' ',' ',' ','X',' ',' ',' ',' ',' ',' ','*',' ',' ',' ',' ','*',' ',' ',' ',' ','*','*','*','*','*','*','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*',' ',' ','X',' ',' ',' ',' ',' ',' ','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','*','*','*','*','*',' ',' ',' ',' ','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X','X',' ',' ',' ',' ',' ',' ',' ','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ','*','*','*','*',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','X',' ',' ',' ','X',' ','*',' ',' ',' ',' ',' ',' ',' ','X','X','*','X','X','X',' ','X','X','X',' ','X','X','X','*','X','X','X','X','X','X',};char strmapr[22][22] = { 0 };memcpy(strmapr, strmap, sizeof strmap);Player p;char ch = 0;int itrap = -1;int ishoot = 0;int ibsv = 0;fstream fs("s.txt", ios::in);fs.flush();if ((!fs.is_open()) || fs.eof()) {fs.close();fs.open("s.txt", ios::out);fs << "0 0 0 0";fs.close();fs.open("s.txt", ios::in);}bool barr[3] = { 0 };fs >> ibsv;for (ch = 0; ch < 3; ch++) {barr[ch] = (ibsv & (1 << ch));}trigger t[22] = { trigger(20,3,20,3,0), trigger(16,5,16,6,1),trigger(19,12,20,12,2),trigger(17,13,17,13,3),trigger(17,15,17,16,3),trigger(14,14,14,15,3),trigger(13,16,13,17,3),trigger(15,18,15,19,3),trigger(11,20,11,21,4),trigger(0,16,9,16,6),trigger(8,11,9,13,7),trigger(4,5,7,9,8),trigger(9,6,9,8,9),trigger(3,1,3,3,10),trigger(11,1,11,1,11),trigger(11,3,11,3,12),trigger(13,1,14,1,13),trigger(13,7,15,8,14),trigger(15,11,17,11,15),trigger(16,12,17,12,16),trigger(21,13,21,13,17),trigger(11,8,11,8,18) };printstart();cout << endl << endl << endl << endl << endl << endl << endl << "\t\t\t\t\t  ";system("pause");system("cls");printstart();cout << endl << "              \033[31;1m********\033[0m                          \033[33m********\033[0m                              \033[32;1m********\033[0m" << endl;cout << "             \033[31;1m* SAVE 1 *\033[0m                        \033[33m* SAVE 2 *\033[0m                            \033[32;1m* SAVE 3 *\033[0m" << endl;cout << "              \033[31;1m********\033[0m                          \033[33m********\033[0m                              \033[32;1m********\033[0m" << endl << endl;cout << "游戏内:a左走    d右走    w二段跳,空中一段    z\033[33m存档\033[0m/射弹    r重开    \033[31;1m“X”死\033[0m   “*”墙    \033[31;1m“#”按钮\033[0m,\033[32;1m射就触发机关\033[0m    \033[33m“S”存档\033[0m    \033[32;1m“G”终点\033[0m" << endl <<  "开始界面:1~3选择要玩的存档    d删存档" << endl << endl << endl;cin >> ch;int deadarr[3] = { 0 };deadset(&deadarr, fs);while (ch < '1' || ch > '3') {while (rewind(stdin), (ch < '1' || ch > '3') && 'd' != ch) {cout << "\033[31;1m输入错误,请重新输入\033[0m" << endl << endl;cin >> ch;if (ch >= '1' && ch <= '3') {goto g;}}cout << "\033[31;1m请输入要删除的存档编号(输入错误就不删除存档)\033[0m" << endl << endl;cin >> ch;if (rewind(stdin), ch < '1' || ch > '3') {cout << "\033[31;1m输入错误,不删除存档\033[0m" << endl << endl;cin >> ch;continue;}int index = ch - 1 - '0';(ibsv & (1 << index)) && (ibsv -= (1 << index));barr[index] = 0;fs.close();fs.open("s.txt", ios::trunc | ios::out);deadarr[index] = 0;fs << ibsv;for (int i = 0; i < 3; i++) {fs << " " << deadarr[i];}fs.flush();cout << "\033[32m删除成功!\033[0m" << endl << endl;cin >> ch;}g:int barri = (--ch -= '0');system("cls");char* cp = (t[0].saveset(barr[barri]) ? &strmap[9][20] : &strmap[21][0]);*cp = 'P';fs << (char)(ibsv + '0');fs.close();while ('G' == strmap[0][0]) {char str[100] = "title I WANNA GO TO THE \"G\" : 似亡 * ";char stra[100] = "";sprintf(stra, "%d", deadarr[barri]);strcat(str, stra);system(str);' ' == strmap[9][20] && (strmap[9][20] = 'S');' ' == strmap[11][21] && (strmap[11][21] = 'S');p.sgetxy(X) = (cp - &strmap[0][0]) / 22;p.sgetxy(Y) = (cp - &strmap[0][0]) % 22;p.printmap(strmap);cin >> ch;rewind(stdin);*cp = ' ';switch (ch) {case 'a':p.left_move(&cp);break;case 'd':p.right_move(&cp);break;case 'w':p.Djump(&cp);break;case 'z':p.shoot(ishoot, &cp);break;case 'r':p.reset(&cp, &strmap, &strmapr, &t, deadarr[barri]);break;default:break;}for (int i = 0; i < 22; i++) {t[i].check(p.sgetxy(X), p.sgetxy(Y), &strmap, &strmapr, p, itrap, &cp, ch, &t, deadarr[barri]);}itrap > 0 && itrap--, !itrap && (strmap[14][5] = ' ', strmap[15][5] = 'X');p.upOrDown(&cp);p.shootmove(&strmap, barri, ibsv);p.rejump(&cp);if ('X' == *cp) {p.gameover(&cp, &strmap, &strmapr, &t, deadarr[barri]);}*cp = 'P';ishoot > 0 && ishoot--;system("cls");fs.open("s.txt", ios::trunc | ios::out);fs << (char)(ibsv + '0');for (int i = 0; i < 3; i++) {sprintf(str, "%d", deadarr[i]);fs << " " << str;}fs.close();}system("color 0A");cout << "恭喜你,你赢了,似了" << deadarr[barri] << "次" << endl;fs.close();return 0;
}

Player.h头文件

#pragma once
#include <iostream>
#include <vector>
#include "trigger.h"
using namespace std;
#define JUMPHIGH 3
enum XY {X,Y,
};
struct trir {char* cp;bool b;int iy;
};
class Player {
private:int ix;int iy;int ijh;int ij;bool blr;vector<trir> v;
public:friend class trigger;Player();void printmap(const char strmap[22][22]);void Djump(char** cpp);void left_move(char** cpp);void right_move(char** cpp);int& sgetxy(XY xymode);void upOrDown(char** cpp);void gameover(char** cpp, char(*strmap)[22][22], const char(*strmapr)[22][22], trigger(*tarr)[22], int& idead);void reset(char** cpp, char(*strmap)[22][22], const char(*strmapr)[22][22], trigger(*tarr)[22], int& idead);void rejump(char** cp);void shoot(int& i, char** cpp);void shootmove(const char (*strmap)[22][22], int barri, int& ibsv);
};

Player.cpp源文件

#include <iostream>
#include <algorithm>
#include <cstring>
#include <fstream>
#include "trigger.h"
#include "Player.h"
#include "Cmp.h"
using namespace std;
Player::Player(){ij = 2;ijh = 0;blr = 1;
}
bool MSB = false;
bool MSBa = false;
bool MSBb = false;
bool MSBc = false;
bool MSv = false;
void Player::printmap(const char strmap[22][22]) {int i = 0;int ia = 0;for (; i < 22; i++) {for (ia = 0; ia < 22; ia++) {cout << "\033[" << ('G' == strmap[i][ia] ? "32;1m" : 'X' == strmap[i][ia] ? "31;1m" : '#' == strmap[i][ia] ? trigger::MSB ? "32;1m" : "31;1m" : 'S' == strmap[i][ia] ? ((!trigger::MSv) || 21 == ia) ? "33m" : "33;1m" : '@' == strmap[i][ia] ? "33m" : "0m") << strmap[i][ia] << "\033[0m";}cout << "|" << endl;}cout << "----------------------@" << endl;
}
void Player::Djump(char** cpp) {switch (ij) {case 2:((21 == ix || '*' == (*cpp)[22] || '#' == (*cpp)[22]) && (ij = 1, ijh = JUMPHIGH), (21 != ix && '*' != (*cpp)[22] && '#' != (*cpp)[22]) && (ij = 0, ijh = JUMPHIGH));break;case 1:((21 == ix || '*' == (*cpp)[22] || '#' == (*cpp)[22]) && (ij = 2), (21 != ix && '*' != (*cpp)[22] && '#' != (*cpp)[22]) && (ij = 0, ijh = JUMPHIGH));break;default:rejump(cpp);((21 == ix || '*' == (*cpp)[22] || '#' == (*cpp)[22]) && (ij = 1, ijh = JUMPHIGH), (21 != ix && '*' != (*cpp)[22] && '#' != (*cpp)[22]) && (ij = 0));break;}
}
void Player::left_move(char** cpp) {(iy && '*' != *(*cpp - 1) && '#' != *(*cpp - 1) && ((*cpp)--));blr = false;
}
void Player::right_move(char** cpp) {21 != iy && '*' != *(*cpp + 1) && '#' != *(*cpp + 1) && ((*cpp)++);blr = true;
}
int& Player::sgetxy(XY xymode) {return xymode ? iy : ix;
}
void Player::upOrDown(char** cpp) {if (ijh > 0 && ix && '*' != (*cpp)[-22] && '#' != (*cpp)[-22]) {ijh--, *cpp -= 22;}else if ('*' != (*cpp)[22] && '#' != (*cpp)[22] && (!ix || '*' == (*cpp)[-22] || '#' == (*cpp)[-22])) {ijh = 0, *cpp += 22;}else if ('*' != (*cpp)[22] && '#' != (*cpp)[22] && 21 != ix) {*cpp += 22;}
}
void Player::gameover(char** cpp, char (*strmap)[22][22], const char (*strmapr)[22][22], trigger(*tarr)[22], int& idead) {char ch = 0;system("cls");' ' == (*strmap)[9][20] && ((*strmap)[9][20] = 'S');printmap(*strmap);cout << "\033[31;1m游戏结束 请按r键重新开始\033[0m" << endl;while (ch - 'r') {cin >> ch;rewind(stdin);system("cls");if (ch - 'r') {printmap(*strmap);cout << "\033[31;1m游戏结束 请按r键重新开始\033[0m" << endl;}}reset(cpp, strmap, strmapr, tarr, idead);
}
void Player::reset(char** cpp, char(*strmap)[22][22], const char(*strmapr)[22][22], trigger(*tarr)[22], int& idead) {idead++;trigger::MSv && (*cpp = &((*strmap)[9][20]), ix = 9, iy = 20), trigger::MSv || (*cpp = &((*strmap)[21][0]), ix = 21, iy = 0);trigger::MSB = false;MSBa = false;MSBb = false;MSBc = false;blr = true;int i = 0;memcpy(*strmap, *strmapr, sizeof(*strmapr));for (; i < 22; i++) {(*tarr)[i].MBt = false;}v.clear();rejump(cpp);
}
void Player::rejump(char** cpp) {(21 == ix || '*' == (*cpp)[22]) && (ij = 2);
}
void Player::shoot(int& i, char** cpp) {if ((!i) && (iy && blr || 21 != iy && (!blr))) {v.push_back({*cpp, blr, iy});i = 3;}
}
void Player::shootmove(const char(*strmap)[22][22], int barri, int& ibsv) {for (vector<trir>::iterator it = v.begin();v.end()!=it;it++) {(' ' == *it->cp || '@' == *it->cp) && (*it->cp = ' ');'#' == *it->cp && (trigger::MSB = true);if (&((*strmap)[9][20]) == it->cp) {trigger::MSv = true;(!(ibsv & (1 << barri))) && (ibsv += (1 << barri));}if ('*' == *it->cp || '#' == *it->cp || (!it->iy && (!it->b)) || (21 == it->iy && it->b)) {it->iy = -1;}if (0 <= it->iy) {it->cp -= (1 - it->b * 2);it->iy -= (1 - it->b * 2);(' ' == *it->cp || '@' == *it->cp) && (*it->cp = '@');}}sort(v.begin(), v.end(), cmp());while ((!v.empty()) && 0 > v.begin()->iy) {v.erase(v.begin());}
}

trigger.h头文件

#pragma once
#include <iostream>
#include "Player.h"
using namespace std;
class trigger {
private:int MISX;int MISY;int MIEX;int MIEY;int Mtrig;bool MBt;static bool MSB;static bool MSBa;static bool MSBb;static bool MSBc;static bool MSv;
public:friend class Player;trigger(int istartx, int istarty, int iendx, int iendy, int trig) :MISY(istarty), MIEX(iendx), MIEY(iendy), MISX(istartx), Mtrig(trig), MBt(false) {}void check(int ix, int iy, char(*strmap)[22][22], const char(*strmapr)[22][22], Player& p, int& ii, char** cpp, char ch, trigger(*tarr)[22], int& idead);bool saveset(bool b);
};

trigger.cpp源文件

#include <iostream>
#include "trigger.h"
#include <string>
#include "Player.h"
using namespace std;
bool trigger::MSB = false;
bool trigger::MSBa = false;
bool trigger::MSBb = false;
bool trigger::MSBc = false;
bool trigger::MSv = false;
void trigger::check(int ix, int iy, char (*strmap)[22][22], const char (*strmapr)[22][22],Player& p, int& ii, char** cpp, char ch, trigger(*tarr)[22], int& idead) {int i = 0;if (MISX <= ix && ix <= MIEX && MISY <= iy && iy <= MIEY && (Mtrig - 4 && Mtrig - 8 && Mtrig - 16 && Mtrig - 18 ? (!MBt) : 1)) {switch (MBt = true, Mtrig) {case 0:(*strmap)[21][3] = 'X';p.gameover(cpp, strmap, strmapr, tarr, idead);break;case 1:for (i = 16; i < 21; i++) {(*strmap)[i][6] = 'X';}break;case 2:for (i = 18; i < 22; i++) {if ('X' == (*strmap)[i][13]) {(*strmap)[i][13] = ' ';}else {(*strmap)[i][13] = 'X';}}break;case 3:for (i = MISX; i <= MIEX; i++) {for (int ia = MISY; ia <= MIEY; ia++) {(*strmap)[i][ia] = 'X';}}p.gameover(cpp, strmap, strmapr, tarr, idead);break;case 4:if ('z' == ch) { (*strmap)[13][19] = 'L';(*strmap)[13][20] = 'O';(*strmap)[13][21] = 'L';p.gameover(cpp, strmap, strmapr, tarr, idead);}break;case 6:if (!MSB) {for (i = 0; i < 10; i++) {(*strmap)[i][15] = 'X';}}break;case 7:for (i = 8; i < 10; i++) {(*strmap)[i][10] = '*';(*strmap)[i][14] = '*';}for (; i < 15; i++) {(*strmap)[7][i] = '*';}break;case 8:((!MSBa) && '*' == (*cpp)[22]) && ((*cpp)[22] = 'X');break;case 9:MSBa = true;for (i = 6; i < 9; i++) {(*strmap)[10][i] = '*';}break;case 10:for (i = 1; i < 4; i++) {(*strmap)[4][i] = '*';}break;case 11:{ string str = "LOL LOL"; char* cpa = &((*strmap)[11][2]);char* cpb = &(str[0]);for (i = 0; i < 7; i++, cpa++, cpb++) {*cpa = *cpb;}MSBb = true;}break;case 12:(*strmap)[11][0] = 'G';(*strmap)[14][0] = ' ';break;case 13:(*strmap)[11][0] = 'G';(*strmap)[13][0] = ' ';(*strmap)[13][5] = 'X';(*strmap)[13][2] = ' ';(*strmap)[15][5] = '*';for (i = 16; i < 21; i++) {(*strmap)[i][0] = 'L';(*strmap)[i][1] = 'O';(*strmap)[i][2] = 'L';}break;case 14:ii = 10;break;case 15:MSBc = true;for (i = 10; i < 13; i++) {(*strmap)[14][i] = 'X';}(*strmap)[13][10] = '*';for (i = 0; i < 11; i++) {(*strmap)[10][i] = '*';}if (*cpp == &((*strmap)[14][12])) {p.gameover(cpp, strmap, strmapr, tarr, idead);}break;case 16:if (MSBc) {(*strmap)[14][10] = ' ';(*strmap)[14][11] = ' ';'*' == (*cpp)[22] && ((*cpp)[22] = 'X');}break;case 17:(*strmap)[21][13] = 'X';break;case 18:if (MSBb) {*cpp = &((*strmap)[11][7]);(*strmap)[11][8] = '*';MSBb = false;}break;default:break;}}
}
bool trigger::saveset(bool b) {MSv = b;return MSv;
}

Cmp.h头文件

#pragma once
#include <iostream>
#include <vector>
#include "Player.h"
using namespace std;
class cmp {
public:bool operator()(trir t, trir ta);
};

Cmp.cpp源文件

#include <iostream>
#include <vector>
#include "Cmp.h"
#include "Player.h"
using namespace std;
bool cmp::operator()(trir t, trir ta) {return t.iy < ta.iy;
}

C++版iwanna2

相关文章:

C++版iwanna1

第一篇目录 开头程序Game.cpp源文件Player.h头文件Player.cpp源文件trigger.h头文件trigger.cpp源文件Cmp.h头文件Cmp.cpp源文件 开头 大家好&#xff0c;我叫这是我58。 程序 Game.cpp源文件 #define _CRT_SECURE_NO_WARNINGS 1 #include <iostream> #include <c…...

LSTM变种模型

一、GRU 1.概念 GRU&#xff08;门控循环单元&#xff0c;Gated Recurrent Unit&#xff09;是一种循环神经网络&#xff08;RNN&#xff09;的变体&#xff0c;旨在解决标准 RNN 在处理长期依赖关系时遇到的梯度消失问题。GRU 通过引入门控机制简化了 LSTM&#xff08;长短期…...

Python进阶--函数进阶

目录 1. 函数多返回值 2. 函数多种传参方式 (1). 位置参数 (2). 关键字参数 (3). 缺省参数 (4). 不定长参数 3. 匿名函数 (1). 函数作为参数传递 (2). lambda匿名函数 1. 函数多返回值 def return_num():return 1# 返回1之后就不会再向下继续执行函数体return 2 resu…...

elasticsearch 8.2 设置账号密码

背景:单节点集群数据写入测试-CSDN博客 前述项目支持设置账号密码,但8+版本似乎不能那么做了。 ERROR: [1] bootstrap checks failed. You must address the points described in the following [1] lines before starting Elasticsearch. bootstrap check failure [1] of…...

JavaScript代码如何测试?

测试JavaScript代码是确保其功能、性能和可靠性的关键步骤。以下是一些详细的步骤和方法&#xff0c;用于测试JavaScript代码&#xff1a; 1、编写测试用例 首先&#xff0c;你需要为要测试的JavaScript代码编写测试用例。这些用例应该涵盖代码的各种功能和场景&#xff0c;包…...

案例分享—国外ui设计优秀案例

国外企业更注重用户体验设计&#xff0c;倾向于简洁清晰的设计风格&#xff0c;以提高用户的使用体验和操作效率。他们注重“简约至上”的设计理念&#xff0c;认为简洁的设计可以减少用户的认知负担&#xff0c;提高用户的工作效率。 设计师在界面设计中往往更加注重创意性和个…...

在JavaScript中,改变this指向的call,apply,bind有什么区别,原理分别是什么?

在JavaScript中&#xff0c;call、apply和bind方法都是用来改变函数执行时this指向的。 以下通过一个Demo帮助理解&#xff0c;代码如下&#xff1a; var obj {name: lisi,sayHello: function() {console.log(this.name)} } obj.sayHello()// lisifunction sayHello() {conso…...

Redis 缓存策略详解:提升性能的四种常见模式

在现代分布式系统中&#xff0c;缓存是提升性能和减轻数据库负载的关键组件。Redis 作为一种高性能的内存数据库&#xff0c;被广泛应用于缓存层。本文将深入探讨几种常用的 Redis 缓存策略&#xff0c;包括旁路缓存模式&#xff08;Cache-Aside Pattern&#xff09;、读穿透模…...

怎么建设网站吸引并留住客户

如何建设网站吸引并留住客户 在当今数字化时代&#xff0c;网站是企业与客户沟通的重要桥梁。一个设计精良、功能完备的网站不仅能吸引客户的注意&#xff0c;还能有效留住他们。以下是一些建设网站的关键策略。 **1. 用户体验优先** 网站的整体用户体验&#xff08;UX&#x…...

培训行业为什么要搭建自己的知识付费小程序平台?集师知识付费系统 集师知识付费小程序 集师知识服务系统 集师线上培训系统 集师线上卖课小程序

在当今这个信息爆炸的时代&#xff0c;培训行业正面临前所未有的变革与挑战。传统的线下授课模式虽然经典&#xff0c;但在互联网技术的冲击下&#xff0c;其局限性日益凸显。为了更好地适应市场需求&#xff0c;提升服务效率与用户体验&#xff0c;培训行业亟需搭建自己的知识…...

Linux:Linux进程概念

✨✨✨学习的道路很枯燥&#xff0c;希望我们能并肩走下来! 文章目录 目录 文章目录 前言 一 冯诺依曼体系结构 二 操作系统(Operator System&#xff09; 2.1 概念 2.2 设计OS的目的 ​编辑 2.3 OS如何进行管理 ​编辑2.4 总结 三 进程的标示符 3.1 基本概念…...

专题九_递归_算法专题详细总结

目录 递归 1.什么是递归&#xff1f; 2.为什么会用到递归&#xff1f; 3.如何理解递归&#xff1f; 1.递归展开的细节图 2.二叉树中的题目 3.宏观看待递归的过程 1) 不要在意细节的展开图 2) 把递归的函数当作一个黑盒 3) 相信这个黑盒一定能够完成这个任务 4.如何写…...

性能赶超GPT-4!多模态检索最新成果刷爆SOTA!顶会思路确定不学?

关注各大顶会的同学们都知道&#xff0c;今年多模态相关的主题可谓是火爆非常&#xff0c;有许多突破性成果被提出&#xff0c;比如最新的多模态检索增强框架MORE&#xff0c;生成性能猛超GPT-4&#xff01; 再比如多模态检索模型MARVEL&#xff0c;在所有基准上实现SOTA&…...

基于 Qwen2.5-0.5B 微调训练 Ner 命名实体识别任务

一、Qwen2.5 & 数据集 Qwen2.5 是 Qwen 大型语言模型的最新系列&#xff0c;参数范围从 0.5B 到 72B 不等。 对比 Qwen2 最新的 Qwen2.5 进行了以下改进&#xff1a; 知识明显增加&#xff0c;并且大大提高了编码和数学能力。在指令跟随、生成长文本&#xff08;超过 8K…...

16【Protues51单片机仿真】智能洗衣机倒计时系统

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 用直流电机转动模拟洗衣机。要求 有弱洗、普通洗、强洗三种模式&#xff0c;可通过按键选择。可以设置洗衣时长&#xff0c;通关按键选择15、30、45、60、90分钟。时间到蜂鸣器报警提示。LCD 显示…...

爱心曲线公式大全

local r a*((math.sin(angle) * math.sqrt(math.abs(math.cos(angle)))) / (math.sin(angle) 1.4142) - 2 * math.sin(angle) 2) local x r * math.cos(angle) -- 计算对应的x值 local z r * math.sin(angle) 1.5*a - --曲线公式绘画 local function generateParabola()…...

新书速览|你好,C++

《你好&#xff0c;C》 本书内容 《你好&#xff0c;C》主要介绍C开发环境的搭建、基础语法知识、面向对象编程思想以及标准模板库的应用&#xff0c;特别针对初学者在学习C过程中可能遇到的难点提供了解决方案。全书共分13章&#xff0c;以一个工资程序的不断优化和完善为线索…...

ufw:Linux网络防火墙

一、命令简介 ​ufw​&#xff08;Uncomplicated Firewall&#xff09;是一个为 Linux 系统提供简单易用的命令行界面的防火墙管理工具。它是基于 iptables ​的&#xff0c;但提供了更简洁的语法和更直观的操作方式&#xff0c;使得配置防火墙变得更加简单&#xff0c;特别适…...

[C++]使用纯opencv部署yolov11-cls图像分类onnx模型

【算法介绍】 在C中使用纯OpenCV部署YOLOv11-cls图像分类ONNX模型是一项具有挑战性的任务&#xff0c;因为YOLOv11通常是用PyTorch等深度学习框架实现的&#xff0c;而OpenCV本身并不直接支持加载和运行PyTorch模型。然而&#xff0c;可以通过一些间接的方法来实现这一目标&am…...

​​​​​​​如何使用Immersity AI将图片转换成3D效果视频

随着技术的进步&#xff0c;图片处理变得越来越强大和直观。借助Immersity AI这样的工具&#xff0c;我们现在可以轻松地将平面图片转换成3D效果视频。以下是如何使用Immersity AI进行这一转换的详细步骤。 第一步&#xff1a;访问Immersity AI网站 首先&#xff0c;打开你的…...

三维GIS开发cesium智慧地铁教程(5)Cesium相机控制

一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点&#xff1a; 路径验证&#xff1a;确保相对路径.…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录&#xff0c;不允许匿名访问&#xff0c;kefu只能访问/data/kefu目录&#xff0c;不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

群晖NAS如何在虚拟机创建飞牛NAS

套件中心下载安装Virtual Machine Manager 创建虚拟机 配置虚拟机 飞牛官网下载 https://iso.liveupdate.fnnas.com/x86_64/trim/fnos-0.9.2-863.iso 群晖NAS如何在虚拟机创建飞牛NAS - 个人信息分享...

Linux系统部署KES

1、安装准备 1.版本说明V008R006C009B0014 V008&#xff1a;是version产品的大版本。 R006&#xff1a;是release产品特性版本。 C009&#xff1a;是通用版 B0014&#xff1a;是build开发过程中的构建版本2.硬件要求 #安全版和企业版 内存&#xff1a;1GB 以上 硬盘&#xf…...

ui框架-文件列表展示

ui框架-文件列表展示 介绍 UI框架的文件列表展示组件&#xff0c;可以展示文件夹&#xff0c;支持列表展示和图标展示模式。组件提供了丰富的功能和可配置选项&#xff0c;适用于文件管理、文件上传等场景。 功能特性 支持列表模式和网格模式的切换展示支持文件和文件夹的层…...

【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅!

【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅! 🌱 前言:一棵树的浪漫,从数组开始说起 程序员的世界里,数组是最常见的基本结构之一,几乎每种语言、每种算法都少不了它。可你有没有想过,一组看似“线性排列”的有序数组,竟然可以**“长”成一棵平衡的二…...

JS红宝书笔记 - 3.3 变量

要定义变量&#xff0c;可以使用var操作符&#xff0c;后跟变量名 ES实现变量初始化&#xff0c;因此可以同时定义变量并设置它的值 使用var操作符定义的变量会成为包含它的函数的局部变量。 在函数内定义变量时省略var操作符&#xff0c;可以创建一个全局变量 如果需要定义…...

StarRocks 全面向量化执行引擎深度解析

StarRocks 全面向量化执行引擎深度解析 StarRocks 的向量化执行引擎是其高性能的核心设计&#xff0c;相比传统行式处理引擎&#xff08;如MySQL&#xff09;&#xff0c;性能可提升 5-10倍。以下是分层拆解&#xff1a; 1. 向量化 vs 传统行式处理 维度行式处理向量化处理数…...

数据挖掘是什么?数据挖掘技术有哪些?

目录 一、数据挖掘是什么 二、常见的数据挖掘技术 1. 关联规则挖掘 2. 分类算法 3. 聚类分析 4. 回归分析 三、数据挖掘的应用领域 1. 商业领域 2. 医疗领域 3. 金融领域 4. 其他领域 四、数据挖掘面临的挑战和未来趋势 1. 面临的挑战 2. 未来趋势 五、总结 数据…...