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

Индексация вектора структур - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Напишите программу, которая вычисляет факториал числа http://www.cyberforum.ru/cpp-beginners/thread1829053.html
Напишите программу, которая вычисляет факториал числа п. N должен быть введен с клавиатуры. Программа должна вывести также "малый", если факторный менее 100 и "большой" в противном случае. long double fact(int N) { if (N < 0) return 0; if (N == 0) return 1; else
C++ Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов Даны целые числа a1, a2, ... an. Наименьший член последовательности a1, a2, ... an заменить целой частью среднего арифметического всех членов, остальные члены оставить без изменения. Если в последовательности несколько членов со значением min(a1, a2, ... an), то заменить последний по порядку. http://www.cyberforum.ru/cpp-beginners/thread1829046.html
Определить функцию, возвращающую количество членов последовательности, больших предыдущего числа C++
Определить функцию p(n,m), n - натуральное число, в теле которой вводятся вещественные числа x1, x2, ... xn и значением выходного параметра m является количество членов последовательности, больших предыдущего числа.
Считывание кириллицы C++
Подскажите, пожалуйста, как считывать кириллицу из массива символов, чтобы функция ниже заработала (если заменить символы на кириллицу) void answer() { int i = 0, j = 0, z = 0, count = 3, n = 0; char k = 0, word = "anchor", answer, mas = { { 'a','n','c','h','o','r', }, { '*','*','*','*','*','*', }, { '*','*','*','*','*','*', }, {...
C++ Создание массива для нескольких вариантов ответа http://www.cyberforum.ru/cpp-beginners/thread1829026.html
Пишу игру "Поле чудес". Функция представленная ниже должна отвечать на вопрос. В игре 10 вопросов и соответственно 10 разных ответов, и соответственно должно быть 10 разных массивов. Создавать 10 разных функций не хочу, но другого выхода из положения не вижу:wall:. Пожалуйста, подскажите путь поизящнее, спасибо. void answer() { int i = 0, j = 0, z = 0, count = 3, n = 0; char k = 0,...
C++ Вывод комментария соответствующего возрасту Вывести целое число,означающее возраст. При анализе этого числа должны выводиться следующие сообщения: -Если оно меньше 20- "Вы слишком молоды!"; -Если оно равно 30, 40,50, 60- "Поздравляем с повышением!"; -Если оно равно 65-"Преподносим вам золотые часы!"; -Если оно больше 65-"Вы слишком стары!". Во всех остальных случаях выводится сообщение: "Продолжайте науапоивать опыть!" P.S.Напишите... подробнее

Показать сообщение отдельно
JohnnyDow
0 / 0 / 0
Регистрация: 24.10.2015
Сообщений: 6

Индексация вектора структур - C++

18.10.2016, 17:12. Просмотров 199. Ответов 6
Метки (Все метки)

Здравствуйте! Возник следующий вопрос:

Почему при попытке создания массива индексов (indexArray) не выходит сохранить в него начальный индекс из вектора записей (defaultRecords) и провести дальнейший вывод ?

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
struct fileFields {
 
    int ID;
    int zipCode;
    string publicationTitle;
    string initials;
    int price;
 
};
 
vector<fileFields> records; //вектор неотсортированных записей из таблицы
 
vector<int> indexArray[records.size]; //массив индексов (изначальных из defaultRecords) отсортированных записей
 
/* процесс считывания записей из файла */
 
vector<fileFields> defaultRecords = records; //неотсортированный вектор записей таблицы
 
/* процесс сортировки */    
 
vector<fileFields> sortedRecords = records; //отсортированный вектор записей
 
//Индексация
 
    for (int i = 0; i < sortedRecords.size(); i++) {
        
        for (int j = 0; j < defaultRecords.size(); j++) {
 
            if (sortedRecords[i].ID == defaultRecords[j].ID) {
                
                indexArray.push_back(j);
                
            }
        }
    }
    
    
    for (int i = 0; i < indexArray.size(); i++) {
 
        cout << defaultRecords[indexArray[i]].ID << " " << defaultRecords[indexArray[i]].zipCode << " " << defaultRecords[indexArray[i]].publicationTitle << " " << defaultRecords[indexArray[i]].initials << " " << defaultRecords[indexArray[i]].price << endl;
 
    }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru