Когда заранее знаешь порядок становится намного легче. Вот к примеру простая структура. struct stud { string name; string surname; string second_name; string lesson; int mark[3]; };
Далее мы с библиотеки fstream создаём экземпляр класса "ifstream" и соединяем его с файлом. Пример: ifstream fin("myfile.txt);
Потом в цикле считываем инфу с открытого файла. Вот пример для моей структуры.
student m; //создал переменную с типом моей структуры.
while(!fin.eof()) { fin >> m.surname; //считываю фамилию в структуру fin >> m.name; fin >> m.second_name; fin >> lesson; //а теперь оценки в инт, это уже будет сделать чуть сложнее. //для этого считываем инфу в чаровый буфер и через atoi переводим fin >> temp; m.mark[0]=atoi(temp); fin >> temp; m.mark[1]=atoi(temp); fin >> temp; m.mark[2]=atoi(temp); }
Что-то на подобии этого, я считывал инфу в свою структуру, но вы просто считывайте её в ваш вектор и всё. Обязательно в условии цикла поставить "!название вашего объекта.eof()". Ну и в конце закрыть файл методом .close(); Прикрепил скрин с маленьким примером, ну и кинул как это работает с массивами. (с векторами это тоже отлично работает, просто мне лень)
Там где N - это количество всех возможных событий (допустим, если речь идет про доставание шариков из 5 белых и 6 черных (мы понимаем, что шариков всего 11), то и N = 11, нельзя достать большее количество шариков из тех, что имеются в наличии. Итак, сразу, что мы знаем из твоей задачи: что N = 64, ну нет больше деталей) Дальше. Нам еще кое-что известно. Это то, что информация о бракованном шарике несет 4 бита информации. Это то самое i, которое обычно ищется в демонстрационных вариантах ЕГЭ! i - количество информации. Таким образом, мы понимаем, что 2^4 = 16, а это наша правая часть уравнения. Что мы имеем после обработки условия и по нашей замечательной формуле?
Вот к примеру простая структура.
struct stud
{
string name;
string surname;
string second_name;
string lesson;
int mark[3];
};
Далее мы с библиотеки fstream создаём экземпляр класса "ifstream" и соединяем его с файлом.
Пример: ifstream fin("myfile.txt);
Потом в цикле считываем инфу с открытого файла.
Вот пример для моей структуры.
student m; //создал переменную с типом моей структуры.
while(!fin.eof())
{
fin >> m.surname; //считываю фамилию в структуру
fin >> m.name;
fin >> m.second_name;
fin >> lesson;
//а теперь оценки в инт, это уже будет сделать чуть сложнее.
//для этого считываем инфу в чаровый буфер и через atoi переводим
fin >> temp;
m.mark[0]=atoi(temp);
fin >> temp;
m.mark[1]=atoi(temp);
fin >> temp;
m.mark[2]=atoi(temp);
}
Что-то на подобии этого, я считывал инфу в свою структуру, но вы просто считывайте её в ваш вектор и всё.
Обязательно в условии цикла поставить "!название вашего объекта.eof()".
Ну и в конце закрыть файл методом .close();
Прикрепил скрин с маленьким примером, ну и кинул как это работает с массивами. (с векторами это тоже отлично работает, просто мне лень)