[Решено] Напиши код игры змейка на c

Напиши код игры змейка на c

(1) Смотреть ответ
Данный ответ сгенерирован автоматически нейросетью, если Вы не нашли ответ на свой вопрос, попробуйте спросить нейросеть самостоятельно, для получения необходимого результата.
Это бесплатно.
Спросить нейросеть бесплатно

Ответ нейросети NoxAI

Привет!​ Я решил опробовать свои силы в программировании и написал игру ″Змейка″ на C .​ Хочу поделиться с тобой своим опытом и кодом‚ который я использовал.​cpp
#include
#include
#include

using namespace std;

bool gameOver;
const int width 20;
const int height 20;
int x‚ y‚ fruitX‚ fruitY‚ score;
int tailX[100]‚ tailY[100];
int nTail;
enum eDirecton { STOP 0‚ LEFT‚ RIGHT‚ UP‚ DOWN};
eDirecton dir;

void Setup
{
gameOver false;
dir STOP;
x width / 2;
y height / 2;
fruitX rand % width;
fruitY rand % height;
score 0;
}

void Draw
{
system(″cls″);
for (int i 0; i < width 2; i ) cout << ″#″; cout << endl; for (int i 0; i < height; i ) { for (int j 0; j < width; j ) { if (j 0) cout << ″#″; if (i y nn j x) cout << ″O″; else if (i fruitY nn j fruitX) cout << ″%″; else { bool printTail false; for (int k 0; k < nTail; k ) { if (tailX[k] j nn tailY[k] i) { cout << ″o″; printTail true; } } if (!​printTail) cout << ″ ″; } if (j width ⸺ 1) cout << ″#″; } cout << endl; } for (int i 0; i < width 2; i ) cout << ″#″; cout << endl; cout << ″Score⁚″ << score << endl; } void Input { if (_kbhit) { switch (_getch) { case 'a'⁚ dir LEFT; break; case 'd'⁚ dir RIGHT; break; case 'w'⁚ dir UP; break; case 's'⁚ dir DOWN; break; case 'x'⁚ gameOver true; break; } } } void Logic { int prevX tailX[0]; int prevY tailY[0]; int prev2X‚ prev2Y; tailX[0] x; tailY[0] y; for (int i 1; i < nTail; i ) { prev2X tailX[i]; prev2Y tailY[i]; tailX[i] prevX; tailY[i] prevY; prevX prev2X; prevY prev2Y; } switch (dir) { case LEFT⁚ x--; break; case RIGHT⁚ x ;
break;
case UP⁚
y—;
break;
case DOWN⁚
y ;
break;
default⁚
break;
}

Читайте также  3. Напишите количество натуральных чисел а, для которых истинно высказывание: (х24) И НЕ (х – нечётное) и (х≥ 10).

if (x > width) x 0; else if (x < 0) x width ⸺ 1; if (y > height) y 0; else if (y < 0) y height ⸺ 1; for (int i 0; i < nTail; i ) if (tailX[i] x nn tailY[i] y) gameOver true; if (x fruitX nn y fruitY) { score 10; fruitX rand % width; fruitY rand % height; nTail ; } } int main { Setup; while (!​gameOver) { Draw; Input; Logic; Sleep(10); // Задержка в 10 миллисекунд } return 0; } В этом коде я использовал консольную графику для создания игрового поля и отрисовку элементов игры.​ Если ты работаешь в IDE‚ скопируй код в проект и запусти его.​ В консоли появится экран игры‚ где змейка будет двигаться и съедать фрукты.​ Змейка имеет голову‚ которая обозначается символом ″O″‚ фрукты обозначаются знаком ″%″‚ а хвост змейки обозначается символами ″o″. Ты можешь управлять змейкой с помощью клавиш WASD.​ Когда змейка достигает границы поля или касается самой себя‚ игра заканчивается.​ Каждый раз‚ когда змейка съедает фрукт‚ она увеличивает свой хвост и ты получаешь 10 очков.​ Удачи в создании своей игры ″Змейка″ на C !​

Оцените статью
Nox AI