|
0 / 0 / 0
Регистрация: 19.11.2018
Сообщений: 2
|
|
Реализация класса Matrix: Добавить, умножить19.11.2018, 02:06. Показов 5483. Ответов 0
Привет!
Помогите, пожалуйста, решить задание. 1. Реализуйте класс Matrix. Он должен содержать: Конструктор от списка списков. Гарантируется, что списки состоят из чисел, не пусты и все имеют одинаковый размер. Конструктор должен копировать содержимое списка списков, т.е. при изменении списков, от которых была сконструирована матрица, содержимое матрицы изменяться не должно. Метод __str__ переводящий матрицу в строку. При этом элементы внутри одной строки должны быть разделены знаками табуляции, а строки — переносами строк. При этом после каждой строки не должно быть символа табуляции и в конце не должно быть переноса строки. Метод size без аргументов, возвращающий кортеж вида (число строк, число столбцов) На проверку вы должны сдать только файл, содержащий описание класса и одну строку вне класса (в качестве основной программы): exec(stdin.read()) И в начале файла: from sys import stdin Для тестирования класса вы можете вместо строки exec(stdin.read()) вставлять код из примеров или писать свой код. Формат ввода Вводится исходный код тестирующей программы на языке Python. Формат вывода Выведите результат её работы в текущем окружении при помощи exec как это указано в условии. 2. Добавьте в предыдущий класс следующие методы: __add__ принимающий вторую матрицу того же размера и возвращающий сумму матриц __mul__ принимающий число типа int или float и возвращающий матрицу, умноженную на скаляр __rmul__ делающий то же самое, что и __mul__. Этот метод будет вызван в том случае, аргумент находится справа. Можно написать __rmul__ = __mul__ Данные для проверки: m1 = Matrix([[1, 0, 0], [0, 1, 0], [0, 0, 1]]) m2 = Matrix([[0, 1, 0], [20, 0, -1], [-1, -2, 0]]) print(m1 + m2) Вывод программы: 1 1 0 20 1 -1 -1 -2 1 Но нужно сделать код максимально быстрым, так как появляется ошибка Runtime error Помогите, пожалуйста
0
|
|
| 19.11.2018, 02:06 | |
|
Ответы с готовыми решениями:
0
Реализация класса Matrix (ООП на Python) Реализация класса matrix для умножения матриц, заданных в виде списков Добавить в определение класса Matrix, реализовать и протестировать функции перегрузки |
| 19.11.2018, 02:06 | |
|
Помогаю со студенческими работами здесь
1
Дать определение класса Matrix – квадратных матриц и реализацию этого класса Создание класса Matrix
Создание собственного класса Matrix Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|