Skip to content

Hm5.1 Сортировочная станция#4

Open
ialina07 wants to merge 4 commits intomainfrom
hm5.1
Open

Hm5.1 Сортировочная станция#4
ialina07 wants to merge 4 commits intomainfrom
hm5.1

Conversation

@ialina07
Copy link
Owner

Задание сортировочная станция (алгоритм Дейкстры - из инфиксной формы в постфиксную). Иванова Алина

@ialina07 ialina07 requested a review from chernishev October 16, 2025 19:04
/**
* @brief Проверка, является ли символ оператором
* @param character Проверяемый символ
* @return 1 если оператор, 0 если нет
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Если использовать bool, то не придётся везде писать "1 если что-то, 0 иначе".

Comment on lines +66 to +71
// Обрабатываем многозначные числа
while (isdigit(infixExpression[inputIndex]) || infixExpression[inputIndex] == '.') {
postfixExpression[outputIndex++] = infixExpression[inputIndex++];
}
postfixExpression[outputIndex++] = ' ';
inputIndex--; // Компенсируем инкремент цикла
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Не понимаю, зачем отдельно обрабатывать многозначные числа. Кажется, что можно просто добавлять по одной цифре на каждой итерации внешнего цикла.

Copy link
Collaborator

@p-senichenkov p-senichenkov Dec 8, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ваше решение абсолютно идентично с решением Александры Долженко. И я не преувеличиваю -- отличаются только имена переменных. Посмотрите сами: https://github.com/DolzhenkoAlexa/c_spbu/pull/4/files.
И тут Вам не повезло: Александра до этого ни разу не была замечена за списыванием, а к Вам с Адой всегда были вопросы. Кстати, у Ады решение тоже подозрительно похоже: https://github.com/ada1ra/homework-c/pull/3/files.
И не надо говорить, что это из-за того, что алгоритм один на всех: у остальных решения другие.
Так что Вам с Адой -2 балла за эту задачу.

* использоваться для различных задач, требующих LIFO-структуры данных.
*/

#ifndef STACK_H
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

По стайлгайду, мы не используем include guards. Используйте pragma once.

int main()
{
char infixInput[STACK_SIZE];
char postfixOutput[STACK_SIZE * 2]; // Постфиксная запись может быть длиннее
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Как постфиксная запись может быть длиннее, если в инфиксной используются скобки, а в постфиксной -- нет?

@@ -0,0 +1,114 @@
/**
* @file stack.h
* @brief Реализация стека для символов и целых чисел
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Зачем нужны две реализации? Используется же только одна (и в другой задаче со стеком, -- в балансе скобок, -- тем более).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants