Форум программистов, компьютерный форум CyberForum.ru

Работа с динамическим массивом - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Путаница в условном операторе http://www.cyberforum.ru/cpp-beginners/thread1042101.html
Задача: Если сумма трех попарно различных действительных чисел x, y, z меньше единицы, то наименьшее из этих трех чисел заменить полусуммой двух других; в противном случае заменить меньшее из x и y полусуммой двух оставшихся значений. Код: int main(int argc, char* argv) { double x,y,z; if (x+y+z < 1) { if ((x<y) & (x<z)) {
C++ Провести побитовое кодирование слов английского языка Провести побитовое кодирование слов английского языка( мне нужно тока слово Alexandr), используя минимальное количество переменных, типа unsigned int. Помогите пожалуйста, т.к уже конец семетра, а на мне висит тока эта прога, и я вообще не знаю как её сделать!!! http://www.cyberforum.ru/cpp-beginners/thread1042091.html
Программа удаления информации о сотруднике C++
Всем привет, задание на лабораторной дали: Написать программу удаления информации о сотруднике с указанным возрастом вот собственно программа, написал. но выводит не то, что надо. преподаватель сказал, что дело в printf в конце. по идее, я должен ввести возраст и он удалит строку, в которой этот возраст. а он наоборот удаляет ту строку, которую не вводишь. #include <string.h> #include...
система счисления C++
Написать програму на С++, чтобы переводила 16 числа в двоичные. Можна в консоле можна из формами. Помогите пожалуста Добавлено через 4 часа 18 минут Кто поможет?
C++ Шаблоны классов. Обработка исключений http://www.cyberforum.ru/cpp-beginners/thread1042075.html
1. Описать шаблон класса АТД Стек. 2. Определить и реализовать в шаблоне класса конструкторы, деструктор, функции Input (ввод с клавиатуры) и Print (вывод на экран), перегрузить операцию присваивания. 3. Дополнить определение класса заданными перегруженными операциям. Реализовать эти операции. 4. Предусмотреть генерацию и обработку исключений для возможных ошибок. 5. Показать в клиенте main()...
C++ Арифметическая прогрессия Вывести на экран 7ой член прогрессии если числа находящиеся по соседству различаются в 5 раз, а первое число равен 3ем Добавлено через 10 часов 4 минуты ответьте пожалуйста.. подробнее

Показать сообщение отдельно
antonid
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 22
15.12.2013, 18:01     Работа с динамическим массивом
В программе есть динамический массив класса Enemy. И есть функция, которая при попадании стрелы во врага проверяет жив ли он после попадания, если мертв, то уменьшает переменную en_kol (количество врагов) на 1. Проблема в том, что если стрела пересекается с первым врагом (нулевым элементом массива), то количество врагов сразу падает до нуля. С остальными элементами все нормально. В чем может быть ошибка? Вот код столкновения:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
for (int i =1 ;i<en_kol;i++){
            if (arrow.rect.top>en[i].rect.top-30 && arrow.rect.top< en[i].rect.top+30 && arrow.rect.left> en[i].rect.left-30 &&  arrow.rect.left< en[i].rect.left+30){/*условие столкновения*/
            arrow.fly = 0;
            arrow.rect.left = -800;
            arrow.rect.top = -800;
            en[i].hp -= 20;
        }
                        if (en[i].hp<=0){
                            en[i].checklive();
                            std::cout<<en_kol<<std::endl;
 
                        }
}
Вот код функции checklive

C++
1
2
3
4
5
6
void checklive(){
            en_kol--;
            rect.left = -200; /*координата по х*/
            rect.top = -200; /* координата по у*/
            live = 0; /*Враг объявляется мертвым*/
    }
Добавлено через 1 час 56 минут
актуально

Добавлено через 2 часа 10 минут
Актуально

Добавлено через 40 минут
PS. Цикл в первом коде начинается с нуля, тут опечатка
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 09:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru