Feature/homework - #1
Conversation
LostPointer
left a comment
There was a problem hiding this comment.
если на 6 баллов то более менее, если хочется по выше то вторую задачу нужно научить решать с числами большей длинны чем 1 символ)
| return {}; | ||
| } | ||
| std::vector<std::string> symbs; | ||
| std::string symb = ""; |
There was a problem hiding this comment.
опечатка? symbl?
если нет, то лучше придумать название по лучше (как и переменной перед этим)
| symb.clear(); | ||
| } | ||
| return {symbs}; | ||
| }; No newline at end of file |
There was a problem hiding this comment.
добавь пустую строчку, в гугловом кодстайле так приянто
| CHECK(SplitString("a (a a) b (asd as) ") == std::vector<std::string>{"a", "(a a)", "b", "(asd as)"}); | ||
| CHECK(SplitString("a (a a) b (asd as) ") == std::vector<std::string>{"a", "(a a)", "b", "(asd as)"}); | ||
| CHECK(SplitString("yandex yandex yandex yep") == std::vector<std::string>{"yandex", "yandex", "yandex", "yep"}); | ||
| CHECK(SplitString("Штирлиц играл в карты в компании и проигрался. Но он умел делать хорошую мину при плохой игре. Когда Штирлиц покинул компанию, мину взорвалась.") == std::vector<std::string>{"Штирлиц", "играл", "в", "карты", "в", "компании", "и", "проигрался.", "Но", "он", "умел", "делать", "хорошую", "мину", "при", "плохой", "игре.", "Когда", "Штирлиц", "покинул", "компанию,", "мину", "взорвалась."}); |
There was a problem hiding this comment.
нужно крутить скролом что бы посмотреть все выражение, лучше будет выглядеть вот так:
CHECK(
SplitString(
"Штирлиц играл в карты в компании и проигрался. "
"Но он умел делать хорошую мину при плохой игре. "
"Когда Штирлиц покинул компанию, мину взорвалась."
) == std::vector<std::string>{
"Штирлиц", "играл", "в", "карты", "в", "компании", "и", "проигрался.",
"Но", "он", "умел", "делать", "хорошую", "мину", "при", "плохой", "игре.",
"Когда", "Штирлиц", "покинул", "компанию,", "мину", "взорвалась."
}
);```
| @@ -1,7 +1,42 @@ | |||
| #include "utils.hpp" | |||
|
|
|||
|
|
||
| #include <stack> | ||
| #include <iostream> | ||
| using namespace std; |
There was a problem hiding this comment.
спусти на 1 строку ниже, будет выглядеть в сто раз лучше
|
|
||
| } | ||
| return result; | ||
| } No newline at end of file |
| default: | ||
| cout << "Error! operator is not correct"; | ||
| break; | ||
|
|
| flag = 1; | ||
| } else if (ch != ' ' and ch != '\t') { | ||
| symb.push_back(ch); | ||
| } else if (ch == ' ' or ch == '\t') { |
There was a problem hiding this comment.
Ненужная проверка, можно просто else
| } | ||
| std::vector<std::string> symbs; | ||
| std::string symb = ""; | ||
| int flag = 0; |
There was a problem hiding this comment.
flag - плохое имя (не понятно, для чего это флаг). Лучше что-нибудь вроде is_brackets. Кроме того, если это флаг, то больше подходит тип bool
| if (flag == 1) { | ||
| if (ch != ')') { | ||
| symb.push_back(ch); | ||
| } else if (ch == ')') { |
There was a problem hiding this comment.
Ненужная проверка, можно просто else
| flag = 0; | ||
| }; | ||
| }; | ||
| }; |
There was a problem hiding this comment.
Точка с запятой после закрывающей блок скобки не нужна, лучше лишние ; убрать
| if (flag == 0) { | ||
| if (ch == '(') { | ||
| flag = 1; | ||
| } else if (ch != ' ' and ch != '\t') { |
There was a problem hiding this comment.
and и or - альтернативный вариант записи логических операторов && и || в С++. Его почти никто не использует, и вам не стоит.
zero attempt