merna adel Ответов: 2

Преобразование строки в массив матрицы


Требуется разработать программу для выполнения матричных операций. Программа использует определенный строковый формат для представления матрицы в разделах ввода и вывода данных пользователя. Для следующей матрицы: examplee : пользователь вводит строковое представление матрицы : ex:[10 2.13 3;-5 0 4;16.5 1 8] В программе пользователь вводит матрицу в определенном строковом формате, а затем просит ввести оператор

поэтому я не могу преобразовать эту строку в массив, чтобы выполнять операции суммирования или умножения.

Что я уже пробовал:

using namespace std;

int main() { 

    int i, j, n; 
    string s1; 
    float m1[100][100]; 

    getline(cin, s1);

    for (int i = 0; i < 100; i++) { 
        for (n = 0; n < s1.length(); n++) { 
            if (isspace(s1.at(i)));
        } 
    }
}

2 Ответов

Рейтинг:
1

Richard MacCutchan

Сначала вам нужно разделить строку, используя точку с запятой в качестве разделителя. Это даст вам строку чисел для каждой строки. Затем разделите каждую подстроку, используя запятую в качестве разделителя, который даст числа для каждого столбца. Затем вы можете выделить массив для матрицы. Затем вам нужно взять каждое число по очереди, преобразовать его в двойное значение и сохранить его в соответствующей ячейке матрицы. Видеть элементах класса | Майкрософт документы[^] чтобы увидеть, как найти символы-разделители.