C++版iwanna1

news2024/10/8 12:25:13

第一篇目录

  • 开头
  • 程序
    • 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

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

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

相关文章

DHCP安装

步骤 1&#xff1a;安装DHCP服务器 在系统上安装DHCP服务。以下是安装命令&#xff1a; # 安装DHCP软件包 yum install dhcp步骤 2&#xff1a;配置DHCP服务器 安装完成后&#xff0c;需要配置DHCP服务器来绑定MAC地址和IP地址。 # 备份原始的DHCP配置文件 cp /etc/dhcp/dh…

华为 HCIP-Datacom H12-821 题库 (33)

&#x1f423;博客最下方微信公众号回复题库,领取题库和教学资源 &#x1f424;诚挚欢迎IT交流有兴趣的公众号回复交流群 &#x1f998;公众号会持续更新网络小知识&#x1f63c; 1.VLAN Pool 只要通过一个 SSID 就能够同时支持多个业务 VLAN&#xff0c;从而缩小广播域&#…

[含文档+PPT+源码等]精品大数据项目-基于python爬虫实现的大数据岗位的挖掘与分析

大数据项目——基于Python爬虫实现的大数据岗位的挖掘与分析&#xff0c;其背景主要源于以下几个方面&#xff1a; 一、大数据时代的来临 随着互联网、物联网、云计算等技术的快速发展&#xff0c;数据呈现出爆炸式增长。根据国际数据公司&#xff08;IDC&#xff09;的预测&…

送给fans的一封感谢信

引言 首先&#xff0c;十分感谢&#xff0c;这几个月里粉丝的点赞和关注。我同时手里也有很多资料。也像跟大家分享&#xff0c;促进大家一起进步。可以加我企鹅2101750384。或者绿泡泡qier3451841065 &#xff08;加好友验证的时候&#xff0c;记得填“胡萝卜不甜”&#xff0…

241006-Gradio中Chatbot通过CSS自适应调整高度

A. 最终效果 B. 参考代码 import gradio as grCSS """ .contain { display: flex; flex-direction: column; } .gradio-container { height: 100vh !important; } #component-0 { height: 100%; } #chatbot { flex-grow: 1; overflow: auto;} #tab_item_4 { …

LeetCode-871 最低加油次数

重启力扣每日一题系列&#xff01; 因为过去两个月里掉粉掉的好严重&#xff0c;我想大抵是因为更新的频率不如上半年了&#xff0c;如果我重启了每日一题系列那岂不是至少是每日一更☝&#x1f913;&#xff1f; 也不是每天都更&#xff0c;我有两不更&#xff0c;特难的就不…

LIN总线学习大全(基于CANoe和CAPL)

&#x1f345; 我是蚂蚁小兵&#xff0c;专注于车载诊断领域&#xff0c;尤其擅长于对CANoe工具的使用&#x1f345; 寻找组织 &#xff0c;答疑解惑&#xff0c;摸鱼聊天&#xff0c;博客源码&#xff0c;点击加入&#x1f449;【相亲相爱一家人】&#x1f345; 玩转CANoe&…

Linux操作系统——概念扫盲I

目录 虚拟机概念刨析 在那之前&#xff0c;询问什么是虚拟化&#xff1f; 现在来看看什么是虚拟机 虚拟机有啥好的 小差&#xff1a;那JVM也叫Java Virtual Machine&#xff0c;有啥区别呢&#xff1f; Reference 虚拟机概念刨析 我们下面来简单聊聊虚拟机这个概念。对于…

一款开源Ai语音合成TTS工具:Fish Speech

在人工智能和语音技术日新月异的今天&#xff0c;Fish Speech项目以其卓越的性能和广泛的应用前景&#xff0c;成为了开源语音合成领域的一颗璀璨新星。 该项目由Fish Audio团队倾力打造&#xff0c;旨在为研究者、开发者和普通用户提供一个高质量、易用且功能强大的语音合成解…

Docker13-图形工具Portainer

零、文章目录 Docker13-图形工具Portainer 1、图形化管理工具 Docker 的图形化管理工具可以帮助用户更直观地管理 Docker 容器、镜像、网络和数据卷等。 选择哪个工具取决于您的具体需求&#xff0c;比如是否需要支持远程管理、是否需要集成 Kubernetes、是否偏好桌面应用或…

JVS·智能BI数据可视化图表:普通列表与分组列表配置全解析

使用场景 在可视化配置中&#xff0c;很多场景中需要图形和详细信息的融合展示&#xff0c;那么在图表中可以新增普通列表与分组列表的配置。如下图所示&#xff1a; 配置说明 1、新增组件&#xff1a;配置入口如下图所示&#xff0c;新增组件时&#xff0c;选择普通列表与分…

电脑屏幕录屏怎么弄?4个方法教会你录制

电脑屏幕录屏怎么弄&#xff1f;电脑屏幕录屏是一项非常实用的技能&#xff0c;它在学习、工作和娱乐中扮演着不可或缺的角色。通过录屏&#xff0c;我们可以轻松记录并分享操作步骤、会议内容、游戏过程等&#xff0c;极大地丰富了我们的表达和沟通方式。同时&#xff0c;录屏…

mysql 慢查询日志、设置单条数据最大 packet 插入大小指令

检查是否开启慢查询日志 show variables like "%slow%";slow_query_log为 ON 表示已经开启慢查询日志记录。 slow_query_log_file&#xff1a;慢查询日志文件存放地址 设置慢查询 sql 记录阈值 大于 1s 的 sql 都会被记录到日志文件里面。系统默认 10s。mysql 重…

3、Redis Stack扩展功能

文章目录 一、了解Redis产品二、申请RedisCloud实例三、Redis Stack体验1、RedisStack有哪些扩展&#xff1f;2、Redis JSON1、Redis JSON是什么2、Redis JSON有什么用3、Redis JSON的优势 3、Search And Query1、传统Scan搜索2、Search And Query搜索 4、Bloom Filter1、布隆过…

【Python_PySide6学习笔记(三十八)】基于QPushButton实现自定义的圆形按键指示灯类tQCircularButton

基于QPushButton实现自定义的圆形按键指示灯类tQCircularButton 基于QPushButton实现自定义的圆形按键指示灯类tQCircularButton前言正文1、Qt样式表1.1 Qt样式表1.2 样式属性 2、设置Qt样式表3、tQCircularButton类4、使用示例 基于QPushButton实现自定义的圆形按键指示灯类tQ…

系统规划与管理——1信息系统综合知识(3)

文章目录 1.3 信息系统1.3.1 信息系统定义1.3.2 信息系统的生命周期1.3.3 信息系统常用的开发方法 1.3 信息系统 1.3.1 信息系统定义 信息系统是一种以处理信息为目的的专门的系统类型。信息系统可以是手工的&#xff0c;也可以是计算机化的。计算机化的信息系统的组成部件包…

【JVM调优】JVM高频参数和最优实践

JVM高频参数 一、常用参数配置1. 堆内存设置方式1&#xff08;Java8及之前&#xff09;方式2&#xff08;Java9及之后&#xff09; 2. 新生代和老年代设置3. 垃圾收集器选择4. 调试和日志5. Metaspace设置6. 其他重要参数 二、参数设置最佳实践三、GC日志参数设置日志解析Minor…

构建宠物咖啡馆:SpringBoot框架的实现策略

1系统概述 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及&#xff0c;互联网成为人们查找信息的重要场所&#xff0c;二十一世纪是信息的时代&#xff0c;所以信息的管理显得特别重要。因此&#xff0c;使用计算机来管理基于Spring Boot的宠物咖啡馆平台的设计与…

Vue入门-使用Vue2完成简单的记事本Demo

需求&#xff1a; ①能够实现记录重复数据 ②全部清空 ③单条记录清空 页面效果&#xff1a; 代码&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content&quo…