Opened 8 years ago

Closed 8 years ago

Last modified 7 years ago

#1 closed ожидается проверка (задача сдана)

Домашнее задание №1: "Операции над матрицами"

Reported by: Анастасия Семенова Owned by: Vladimir Rutsky
Priority: проверка Milestone:
Component: HA#1 matrices Version:
Keywords: Cc: semenova.anastasia143@…

Description

Здравствуйте! Проверьте, пожалуйста, задачу.
Milestone: 8:00 9 октября.
Ссылка: http://trac.compscicenter.ru/svn/cpp16/semyonova.anastasiya/ha1/

Change History (4)

comment:1 Changed 8 years ago by Vladimir Rutsky

Milestone: ha1-milestone1ha1-milestone2
Type: ожидается проверкаожидаются исправления

Замечания:

  1. В случае ошибки программа должна завершиться с ненулевым кодом возврата --- возвращаемым значением из функции main().
  1. Почему вы открываете файл с матрицей для записи (std::ifstream::out), вместо чтения (std::ifstream::in, данный режим по умолчанию для ifstream = i[nput] f[ile] stream)?
Matrix::Matrix(std::string const &filename)
{
    std::ifstream input_stream;
    input_stream.open(filename, std::ifstream::out);
...
  1. Избавьтесь от дублирования кода выделения памяти под матрицу: сейчас вы делаете это в Matrix::multiply и Matrix::create_array. Вынесите общую часть в отдельную функцию.

comment:2 in reply to:  1 Changed 8 years ago by Анастасия Семенова

Cc: semenova.anastasia143@… added
Type: ожидаются исправленияожидается проверка

Здравствуйте! Проверьте, пожалуйста, исправленную версию.

  1. Добавила возвращение ненулевого кода в случае ошибки.
  2. Исправила out на in.
  3. Создала отдельную функцию allocate_memory_for_array для выделения памяти под массив с указанными row_count и column_count, вызываю ее в multiply и в create_array.

Replying to rutsky:

Замечания:

  1. В случае ошибки программа должна завершиться с ненулевым кодом возврата --- возвращаемым значением из функции main().
  1. Почему вы открываете файл с матрицей для записи (std::ifstream::out), вместо чтения (std::ifstream::in, данный режим по умолчанию для ifstream = i[nput] f[ile] stream)?
Matrix::Matrix(std::string const &filename)
{
    std::ifstream input_stream;
    input_stream.open(filename, std::ifstream::out);
...
  1. Избавьтесь от дублирования кода выделения памяти под матрицу: сейчас вы делаете это в Matrix::multiply и Matrix::create_array. Вынесите общую часть в отдельную функцию.

comment:3 Changed 8 years ago by Vladimir Rutsky

Resolution: задача сдана
Status: newclosed

Замечания:

  1. in это режим по умолчанию для std::ifstream, поэтому его можно не указывать. Плюс можно открыть файл прямо в конструкторе std::ifstream:
//    std::ifstream input_stream;
//    input_stream.open(filename, std::ifstream::in);
std::ifstream input_stream(filename);

Решение зачтено.

comment:4 Changed 7 years ago by Vladimir Rutsky

Milestone: ha1-milestone2

Milestone ha1-milestone2 deleted

Note: See TracTickets for help on using tickets.