Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Посчитать количество букв 'а' в строке Всем здравствуйте) Хочу обратиться с такой проблемой:написала часть кода,но работает не так как нужно.Нужно что бы программа подсчитывала сколько раз встречается та или иная буква(например "а"),но программа выдаёт ноль.Прошу вашей помощи Вот код: #include <iostream> #include <string> using namespace std; void VvodStroki() { string stroka; https://www.cyberforum.ru/ cpp-beginners/ thread2628110.html C++ Изменение динамического массива внутри функции
Добрый день. Имеется следующий код: void add(int* mas, int& size, int elem) { int* old = mas; mas = new int; for (int i = 0; i < size - 1; i++)
C++ Функция find https://www.cyberforum.ru/ cpp-beginners/ thread2628103.html
Доброго дня. Самостоятельно изучаю С++. При изучении функций типа string столкнулся с проблемой. Я беру из файла строку определенного вида. Насколько я понял, функция find возвращает значение типа int - позицию первого вхождения данной подстроки. Мне необходимо выводить на экран определенные строки. пытаюсь делать if (Line.find("...") != -1), но он в упор отказывается выводить нужные строки....
C++ Вывести весь массив Помогите, пожалуйста, решить проблему! Необходимо вывести весь массив после строки Start array, как показано на рисунке. # include "stdafx.h" #include <cstdlib> #include <iostream> #include <conio.h> using namespace std; int main(int argc, char* argv) { https://www.cyberforum.ru/ cpp-beginners/ thread2628098.html
Одномерные массивы C++
Дан одномерный массив, размером N, где N – натуральное число, задаваемое пользователем, содержащий вещественные значения. Заполнить массив данными. Вычислить:  номер минимального элемента массива;  сумму элементов массива, расположенных между первым и вторым отрицательными элементами. Преобразовать массив, таким образом, чтобы сначала располагались все элементы массива, модуль которых...
C++ Вывести все трехзначные восьмеричные числа начинающиеся и заканчивающиеся на одну и ту же цифру https://www.cyberforum.ru/ cpp-beginners/ thread2628095.html
Составьте программу, выводящую на экран все трехзначные восьмеричные числа которые начинаются и заканчиваются на одну и ту же цифру. Цикл while обязателен.
C++ Множественный вызов функции https://www.cyberforum.ru/ cpp-beginners/ thread2628069.html
Добрый день. Возникла следующая проблема. Допустим у меня есть функция. Когда я ее вызываю - выдаёт рандомное число. Я хочу ее вызвать несколько раз, чтобы получить несколько РАЗНЫХ значений. Если вызывать ее таким образом: func(); func(); func();
Сортировка строк матрицы C++
Всем привет. Есть задание Дана действительная матрица размером MxN. Упорядочить (переставить) строки матрицы по убыванию сумм элементов строк. Используйте алгоритм сортировки вставками. Я понял, как можно сортировать обычный массив, но как мне менять местами строки, я не могу понять уже как два дня. В конце кода, лишь мои неудачные попытки сортировать. Заранее огромное спасибо!!! #include...
C++ как правильно получить итератор на элемент двумерной талицы векторов привет есть такая грандиозная конструкция std::vector<std::vector<std::vector<double>>> table; нужно получить итератор на элемент самого вложенного вектора std::vector<double>. делаю так auto iter = table.begin(); auto border = table.end(); https://www.cyberforum.ru/ cpp-beginners/ thread2628064.html C++ как добавить "новые" символы в вижуал студио или уже в с++? https://www.cyberforum.ru/ cpp-beginners/ thread2628063.html
я о тех символах которые выводит когда я нажимаю ALT + кнопки на нумпаде. ♦ и ♣, например
ошибка: LNK2019: ссылка на неразрешенный внешний символ C++
Помогите плиз ошибка: LNK2019: ссылка на неразрешенный внешний символ Вот сам код delta.cpp #include "delta.h"
C++ Напечатать индексы нечетных элементов вектора, превышающих по значению величину К https://www.cyberforum.ru/ cpp-beginners/ thread2628051.html
Определить и напечатать индекс нечетных элементов вектора W5 размерности 5 элементов, превышающих по значению величину К Нарисуйте, пожалуйста, блок-схему
Just Do It!
4012 / 2396 / 639
Регистрация: 23.09.2014
Сообщений: 7,684
Записей в блоге: 2
26.04.2020, 22:29 0

Нужно найти ошибку в коде игры "змейка" в консоли - C++ - Ответ 14476890

26.04.2020, 22:29. Показов 638. Ответов 3
Метки (Все метки)

Ответ

Цитата Сообщение от MariaAiram Посмотреть сообщение
проблемы начались при работе с функцией Process (логика игры)
какие именно проблемы:
Кликните здесь для просмотра всего текста

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#include <iostream>
#include <stdlib.h>
#include <conio.h> //для фун.Tracker, дабы консоль не закрывалась когда ввод происходил
#include <windows.h>
 
using namespace std;
 
//изначально false, ибо мы ещё НЕ проиграли
bool game_over;
const int wh = 20; //ширина поля, равна 20 единицам (width)
const int ht = 20; //высота поля, равна 20 единицам (height)
int x, y, itemX, itemY,
    score; //itemX и itemY - это фрукты которые подбирает змейка.
enum eDirection { STOP = 0, LEFT, RIGHT, UP, DOWN }; //создание перечисления
eDirection direct;
 
//1 функция - при старте настраивает все нужные параметры
void Setup()
{   game_over = false;
    direct = STOP; //дабы змейка при запуске стояла на месте
    x = wh / 2 -
        1; //что бы змейка заспавнилась на середине карты, -1 ибо снизу +1 дописывали
    y = ht / 2 -
        1; //аналогично с высотой - спавн по середине поля, -1 ибо снизу +1 дописывали
    itemX = rand() %
            wh; //рандом + остаток при делении по иксу = рандомный спавн по ширине
    itemY = rand() %
            ht; //рандом + остаток при делении по игрику = рандомный спавн по высоте
    score = 0; //счёт изначально равен нулю
}
 
//2 функция - рисует игровое поле
void Map()
{   Sleep(100);
    system("cls");//очищает консоль каждый раз когда вызывается Map
 
    /*верхняя граница*/
    for (int i = 0; i < wh + 1 /*20 единиц*/; i++)
    {   cout << "_";
    }
    cout << endl; // перевод строки нужен в конце, а не после каждого символа.
 
 
    /*левая граница*/
    for (int i = 0; i < ht /*20 единиц + одна котрой нехватало*/;
                          i++)
                          
    {   for (int j = 0; j < wh; j++) /*что бы проверить каждую "ячейку" по ширине*/
        {   if (j == 0
                    || j == wh -
                    1) //проверка(!) если j==0, то это первый элемент, а значит нужна граница || там же нижняя граница 2-, а значит -1 ещё
                cout << "|";
            if (i == y && j == x) //координата самой змейки
                cout << "О";
            else if (i == itemY && j == itemX) //координата item
                cout << "o";
            else // остальные значит else
                cout << " ";//остальные поля заполняем пустотой
 
        }
 
        cout << endl;
    }
 
 
    /*нижняя граница*/for (int i = 0;
                           i < wh + 1/*20 единиц + одна котрой нехватало*/; i++)
    {   cout << "=";
    }
    cout << endl; // аналогично верхней границе
    cout << x << " " << y << endl;
}
 
//3 функция -отслеживает движения мыши/ввод с клавы
void Tracker()
{   if (_kbhit())   //keyboard hit, возвращает true если нажимается на нужную кнопку
    {   char a = _getch();
    
        switch (a) //помощью _getch можно отследит на какую кнопку нажал пользователь
        {   
 
            case 'a': //если пользователь нажимает на "а", то змейка влево двигается
                direct = LEFT;
                break;
 
            case 'w': //если пользователь нажимает на "w", то змейка вверх двигается
                direct = UP;
                break;
 
            case 'd': //если пользователь нажимает на "d", то змейка вправо двигается
                direct = RIGHT;
                break;
 
            case 's': //если пользователь нажимает на "s", то змейка вниз двигается
                direct = DOWN;
                break;
 
            case 'x': //если пользователь нажимает на "x", то игра заканчивается
                game_over = true;
                break;
        }
    }
}
 
//4 функция - логика игры и все процессы
void Process()
{   switch (direct)
    {
 
        case LEFT:
            x--; //координату х на еденицу меньше
            break;
 
        case RIGHT:
            x++;//координату х на еденицу больше
            break;
 
        case UP:
            y--;//координату y на еденицу меньше
            break;
 
        case DOWN:
            y++;//координату у на еденицу больше
            break;
    }
}
 
//ВСЕ ФУНКЦИИ МЫ ВЫЗЫВАЕМ В main
int main()
{   setlocale(0, "");
 
    Setup();
    while (!game_over) //"проверка" game_over, пока она запущена и равна false, то будут выполняться вписанные функции, "!" - значит логическое НЕ, Цикл продолжается, если gameOver НЕ равен true
    {   Map();
        Tracker();
        Process();
    }
    return 0;
}


Вернуться к обсуждению:
Нужно найти ошибку в коде игры "змейка" в консоли C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.04.2020, 22:29
Готовые ответы и решения:

Не могу найти ошибку в коде игры Змейка
Просидел очень долго, но не удалось исправить то, что при запуску кода функция gameOver сразу-же...

Дописать 3 функции в коде игры змейка
Здравствуйте, извините, если создал тему, которая уже была поднята. Необходима помощь, в связи с...

Найти ошибку в коде игры. (Файлы прикреплены)
uses ABCobjects, graphABC, timers; var object2, Spawn, winTable: PictureABC; spPlayer,...

Не могу найти ошибку в коде игры tetris
Доброе утро, начал изучать JS (самоучка) , беру код разных разработчиков и пытаюсь в нем...

3
26.04.2020, 22:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.04.2020, 22:29
Помогаю со студенческими работами здесь

Не могу понять в чем ошибка в коде, создание игры змейка
процедура game не работает корректно при вызове через другую процедуру (difficult) , но корректно...

Нужно найти ошибку в коде
не могу найти ошибку в коде. задание такое: (1/a)+(1/a^2)+(1/a^4)+...+(1/a^2^n) вот код: var...

Нужно найти ошибку в коде
| sin x ; x &gt;= p/2 У = | tg x ; – p /2 &lt; x &lt; p/2 | cos x ; x &lt;= -p/2 ^^ | | ...

Нужно найти ошибку в коде
Вообщем, при вводе 13, у меня должно выходить 21, но выходит 15, что здесь не правильно, не вижу,...

Нужно найти ошибку в коде
&lt;html&gt; &lt;head&gt; &lt;title&gt;javascript массивы&lt;/title&gt; &lt;link rel=&quot;stylesheet&quot;...

Нужно найти ошибку в коде
Пример: у= 1)a*b*sin(x) 2)a+ln(a+b*x) 3)cos^2(a+b*x) Условия: 1)sin(x)&lt;2,5*a...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru