Домашнее задание: Алгоритм банкиров, прочитать матричный текстовый файл
Алгоритм банкиров: я пытаюсь прочитать из TXT-файла в 4 переменных. распределение, максимальная матрица / доступные и векторы запросов. Я застрял в том, как правильно читать. Первое значение txt-файла - это номер процесса, а 2-е значение - ресурсы, первая матрица - это распределение, а 2-я матрица - это Макс, затем, наконец, 2 вектора. Это то, что я имею до сих пор.
это текстовый файл:
5
4
0 0 1 2
1 0 0 0
1 3 5 4
0 6 3 2
0 0 1 4
0 0 1 2
1 7 5 0
2 3 5 6
0 6 5 2
0 6 5 6
1 5 2 0
1:04 2 0
#include <stdio.h>
#include <fstream>
#include <vector>
int main(int argc, char *argv[])
{
ifstream mFile;
mFile.open("s1.txt");
vector<int> request[],available[];
int allocation[][],Max[][];
int m,n;
vector <int> work,finish;
work = available;
mFile >>m >>n;
while(!mFile.eof())
{
for(int i=0; i< m; i++)
{
for(int j =0;j<n;j++)
{
mFile >> allocation[i][i];
mFile >> Max[i][j];
request[i][j] = Max[i][j] - allocation[i][j];
}
}
}
mFile.close();
}
1 ответ
С чего начать: без поиска слишком далеко, я вижу:
vector<int> need[][],available[];
Для чего нужен?, 2D массив векторов int с размером 0?
Вы используете переменную m
а также n
, но я не вижу их определенных или объявленных.