Opened 5 years ago

Closed 4 years ago

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

hw#1

Reported by: Никита Усольцев Owned by: Vasily Alferov
Component: HW #1 (BMP) Version: 3.0
Keywords: Cc:

Description


Change History (5)

comment:1 Changed 5 years ago by Vasily Alferov

Type: ожидается проверкаожидаются исправления

А Makefile где? =(

Корректность

За чтение аргументов можно поставить около 3 баллов, ну и больше пока оценить не могу, функциональность пока не дописана.
Если хочешь, чтобы я это подебажил, пиши в заголовке тикета.

Стиль

Поскольку у тебя почти всё уже написано, тут есть, что оценивать.

  • main.c:27: табуляция.
  • Давай не делать больше одной пустой строки подряд внутри функций?
  • Транслит в названии переменных, причём мешающийся с английскими словами. На всякий случай, традиционная английская пара терминов для таких случаев — «column» и «row».
  • Глобальные переменные, особенно с названиями «arr» и «arr2» — однозначная бяка.

Вообще, пользователь твоей библиотечки может захотеть работать с несколькими картинками одновременно. А ещё довольно странно, что пользователь заводит структуры для заголовков на своей стороне, а память под пиксели ты выделяешь сам — тут нужна консистентность.
А чтобы не передавать каждый раз два заголовка, height, width, arr и вот это всё, с целью, чтобы было удобно, нужно завести просто структурку под bmp-файл!

  • Фокус с arr и `arr2 — видимо, для удобности индексации, на промежуточных попытках сойдёт, но к финальной придётся выбрать один из двух вариантов, чтобы не получить штрафов.

Суммарно тут балла 4 за стиль набирается.

comment:2 Changed 4 years ago by Никита Усольцев

Type: ожидаются исправленияожидается проверка
Version: 1.02.0

comment:3 Changed 4 years ago by Vasily Alferov

Type: ожидается проверкаожидаются исправления

Круто, гораздо лучше.

Корректность: 15/20
Стиль: 7/10

  • Обсуждали, что у тебя проблема в заголовках. Тут у меня такие замечания:
    • Стилистическое. Заголовки надо бы обновлять в bmp.c, а не в main. Причём и в crop, и в rotate.
    • По корректности: ты их банально путаешь. Там, где размеры: в одном из двух нужно указать размер всего файла, а в другом (ты про него, кажется, забыл), размер dib_header'а. А есть ещё третий, где размер именно картинки в байтах, а ты его вообще не трогаешь.
    • Кроме того, у тебя какая-то лажа в формулке для паддинга, по-видимости. Кажется, ты где-то налажал при округлении вверх. Сам размер файла при этом вроде бы правильный. При исправлении заголовков тесты проходят.
  • При вырезании картинки ты зачем-то лишний раз делаешь bitmap[0] = arrs. Подумай, почему тебе этого не надо делать?
  • Стиль: вынеси заголовок в отдельную структуру, хранящуюся в struct bmp по значению? А то всё в кучу, не очень красиво.
  • Стиль: мне не очень нравится часто встречающееся число 54. Либо сделай константу, либо (ещё лучше) используй sizeof(header) из предыдущего замечания.

comment:4 Changed 4 years ago by Никита Усольцев

Type: ожидаются исправленияожидается проверка
Version: 2.03.0

comment:5 Changed 4 years ago by Vasily Alferov

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

Круто, зачтено.

Стиль: 10/10
Корректность: 19/20 =(

В формуле для biSizeImage ошибка: 3 * h * (w + 4 - (3 * w) % 4)h * (3 * w + 4 - (3 * w) % 4).

Note: See TracTickets for help on using tickets.