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

Как запомнить индексы равных элементов массива? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Поворот фигуры в игре тетрис. http://www.cyberforum.ru/cpp-beginners/thread526558.html
Здравствуйте, пытаюсь написать тетрис, но вот не знаю как крутить фигуры, можете чем то помочь? Слышал про матрицу поворотов только не пойму как ее использовать
C++ Дан массив А(М). Сосчитайте, сколько различных значений в этом массиве. Дан массив А(М). Сосчитайте, сколько различных значений в этом массиве. Подскажите где ошибка. int A,M; ................. for (int i = 0;i<M;i++) { for(int j = i+1 ; j < M; j++) { http://www.cyberforum.ru/cpp-beginners/thread526549.html
Проблема с массивом C++
Здравствуйте. Задача: умножение матрицы на число. Проблема: корректно выводятся только 2, 5, 6, 7, 8 и 9 элементы массива. Причем существует закономерность, что значение первого элемента = значению четвертого элемента = значению седьмого элемента и значение третьего элемента = значению пятого элемента массива. main.cpp #include "stdio.h" #include "func.h" #include "conio.h" #include...
C++ Ошибка
#include<cstdio> #include<vector> using namespace std; int main() { int n,k,a,p,br1,br2,s; vector<int> u; scanf("%d %d",&n,&k); for (int i=0;i<n;++i) scanf("%d %d",&a,&a);
C++ Перевернуть слово http://www.cyberforum.ru/cpp-beginners/thread526529.html
Слово вводится с клавиатуры. Перевернуть введенное слово. (Напр: диск-ксид)
C++ Прерывание бесконечного цикла с возвратом значения нажатой клавиши в main() Вкратце, в функции main() есть некий объект класса - scene, также есть бесконечно работающий цикл while(1), в котором вызывается функция-член типа char того же класса: char ch=scene.start(), она должна возвращать значение нажатой клавиши, для дальнейшей работы с этим значением в операторе switch(). Тело функции char THandler::start() тоже должно содержать бесконечно работающий цикл: char... подробнее

Показать сообщение отдельно
Я-Лис
 Аватар для Я-Лис
29 / 64 / 13
Регистрация: 10.05.2011
Сообщений: 173
24.03.2012, 12:55  [ТС]     Как запомнить индексы равных элементов массива?
Нашел неточности в своем примере:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int max = A[0];
int count = 0;  //вот здесь надо присвоить,иначе во второй ветке else неизвестно чему равен count
B[0] = 0;           //т.к. первый элемент типа уже max, то запомнить его индекс
for(int i=1;i<N;i++)
{
    if(A[i] > max)
    {
        count = 0;
        max = A[i];
        B[count] = i;
        count++;
    }
    else if(A[i] == max)
    {
        if(count == 0)//если первый элемент массива был максимальный
            count++;
        B[count] = i;
        count++;
    }
}
Вроде нормально теперь
 
Текущее время: 22:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru