From 8804e2becd6bdcd2d7560b32c64b1394cbc3e61a Mon Sep 17 00:00:00 2001 From: Kazuyuki Omi <omikazuy@fel.cvut.cz> Date: Sat, 22 Mar 2025 15:10:20 +0100 Subject: [PATCH] change in main --- hw/hw01/ascii | Bin 0 -> 24928 bytes hw/hw01/ascii.cpp | 22 ++++ hw/hw01/chat | Bin 25104 -> 49416 bytes hw/hw01/chat.cpp | 251 +++++++++++++++++++++++++++++++++++------ hw/hw01/get_sm_vek | Bin 0 -> 32392 bytes hw/hw01/get_sm_vek.cpp | 84 ++++++++++++++ hw/hw01/main | Bin 43608 -> 54152 bytes hw/hw01/main.cpp | 229 +++++++++++++++++-------------------- hw/hw01/print2 | Bin 32616 -> 32616 bytes hw/hw01/print2.cpp | 17 ++- hw/hw01/print3 | Bin 0 -> 32536 bytes hw/hw01/print3.cpp | 83 ++++++++++++++ hw/hw01/print4 | Bin 0 -> 53200 bytes hw/hw01/print4.cpp | 132 ++++++++++++++++++++++ hw/hw01/vector | Bin 0 -> 53136 bytes hw/hw01/vector.cpp | 211 ++++++++++++++++++++++++++++++++++ hw/hw01/width | Bin 0 -> 25640 bytes hw/hw01/width.cpp | 62 ++++++++++ 18 files changed, 923 insertions(+), 168 deletions(-) create mode 100755 hw/hw01/ascii create mode 100644 hw/hw01/ascii.cpp create mode 100755 hw/hw01/get_sm_vek create mode 100644 hw/hw01/get_sm_vek.cpp create mode 100755 hw/hw01/print3 create mode 100644 hw/hw01/print3.cpp create mode 100755 hw/hw01/print4 create mode 100644 hw/hw01/print4.cpp create mode 100755 hw/hw01/vector create mode 100644 hw/hw01/vector.cpp create mode 100755 hw/hw01/width create mode 100644 hw/hw01/width.cpp diff --git a/hw/hw01/ascii b/hw/hw01/ascii new file mode 100755 index 0000000000000000000000000000000000000000..3c5bbb6330655dbd54de4c5c9f446a0e11535ded GIT binary patch literal 24928 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 literal 0 HcmV?d00001 diff --git a/hw/hw01/ascii.cpp b/hw/hw01/ascii.cpp new file mode 100644 index 0000000..074c7f9 --- /dev/null +++ b/hw/hw01/ascii.cpp @@ -0,0 +1,22 @@ +#include <iostream> + +int main() +{ + std::string a = "578"; + + try + { + int i = std::stoi(a); + if (i == 0) + std::cout << i << std::endl; + else + return 103; + } + catch (const std::invalid_argument &e) + { + std::cerr << "invalid input" << std::endl; + return 103; + } + + return 0; +} \ No newline at end of file diff --git a/hw/hw01/chat b/hw/hw01/chat index b4103d7836c37ed1de00368427708652939a4fdf..df306090ee3bcc5d83a7a74a71e77421761e4628 100755 GIT binary patch literal 49416 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 literal 25104 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 G)&3V_#*&!; diff --git a/hw/hw01/chat.cpp b/hw/hw01/chat.cpp index e91478e..a84767c 100644 --- a/hw/hw01/chat.cpp +++ b/hw/hw01/chat.cpp @@ -1,60 +1,237 @@ #include <iostream> -#include <iomanip> +#include <sstream> +#include <string> #include <vector> +#include <cstring> +#include <cstdio> +#include <iomanip> + +typedef struct setting +{ + int min = -9999999; + int max = 98888999; + int width = 3; + std::string align = "left"; + std::vector<std::vector<int>> vectors; + int count = 0; + int suma = 0; + int stretch = 0; +} setting; + +void get_config(setting &a) +{ + std::string line; + std::cout << "start configration" << std::endl; + std::getline(std::cin, line); + std::istringstream iss(line); + + std::string setting; + + while (iss >> setting) + { + std::istringstream setting_stream(setting); + std::string key; + std::getline(setting_stream, key, '='); + + if (key == "config.min") + { + setting_stream >> a.min; + } + else if (key == "config.max") + { + setting_stream >> a.max; + } + else if (key == "config.width") + { + setting_stream >> a.width; + } + else if (key == "config.align") + { + setting_stream >> a.align; + } + else if (key == "=") + { + break; + } + } +} + +void sum(setting &a, int range) +{ + int suma = 0; + std::cout << range << std::endl; + for (int i = 0; i - 1 < range; i++) + { + suma += a.numbers[i]; + } + + a.numbers.push_back(suma); +} + +int get_numbers(setting &a) +{ + std::string line; + std::cout << "zadejte cisla: "; + + + while (std::getline(std::cin, line)) + { + std::getline(std::cin, line); + std::istringstream iss(line); + std::vector<int> numbers; + std::string token; + std::string range; + int tmp = 0; + + while (std::getline(iss, token, ';')) + { -// 上é¨ă®ĺŚşĺ‡ă‚Šç·šă‚’出力 -void print_prvi_hore(int a) { + if (token.rfind("SUM(", 0) == 0) + { + char start, end; + int range = 0; + sscanf(token.c_str(), "SUM(%c:%c)", &start, &end); + range = end - start; + sum(a, range); + } + else + { + try + { + tmp = std::stoi(token); + if (tmp > a.max || tmp < a.min) + { + std::cout << "Out of Range" << std::endl; + return 100; + } + numbers.push_back(tmp); + } + catch (std::exception &e) + { + std::cout << "Invalid " << std::endl; + } + } + } + } + return 0; +} + +int column = 1; +/* +void print_prvi_hore(setting &a) +{ std::cout << "+"; - for (int i = 0; i < a; i++) { - std::cout << "-----+"; + for (int i = 0; i < a.numbers.size(); i++) + { + std::cout<<"-----+"; } std::cout << "\n"; } +*/ +void print_prvi_hore(setting &a) +{ + std::cout << "+"; + for (int i = 0; i < a.numbers.size() + 1; i++) + { + for (int j = 0; j < a.width + 2; j++) + std::cout << "-"; -// ABC ă®ă©ă™ă«ă‚’出力 -void print_ABC(int s) { + std::cout << "+"; + } + std::cout << "\n"; +} + +void print_ABC(setting &a) +{ char posize = 'A'; - for (int j = 0; j < s; j++) { - if (j == 0) - std::cout << std::left << std::setfill(' ') << std::setw(5) << "|" << " "; - else - std::cout << std::left << std::setfill(' ') << std::setw(4) << "|" << posize++ << " "; + if (a.align == "left") + { + for (int j = 0; j < a.numbers.size() + 1; j++) + { + { + if (j == 0) + std::cout << std::left << std::setfill(' ') << std::setw(a.width + a.stretch + 3) << "|"; + + else + std::cout << std::left << "|" << " " << std::setfill(' ') << std::setw(a.width + a.stretch + 1) << posize++; + } + } } - std::cout << "|\n"; - print_prvi_hore(s); + else if (a.align == "right") + { + for (int j = 0; j < a.numbers.size() + 1; j++) + { + { + if (j == 0) + std::cout << std::right << "|" << std::setfill(' ') << std::setw(a.width); + + else + std::cout << std::right << "|" << std::setfill(' ') << std::setw(a.width - 2) << posize++ << " "; + } + } + } + std::cout << "|" << std::endl; + print_prvi_hore(a); } -// ă‡ăĽă‚żă‚’出力 -void print_da(const std::vector<int> &numbers, int size) { - int count = 1; - std::cout << std::left << std::setfill(' ') << std::setw(4) << "|" << count << " "; +void print_num(setting &a) +{ + if (a.align == "left") + { + std::cout << std::left << "|" << " " << std::setfill(' ') << std::setw(a.width + a.stretch + 1) << column++; + for (int i = 0; i < a.numbers.size() + 1; i++) + { + if (i < a.numbers.size() + 1) + std::cout << std::left << "|" << " " << std::setfill(' ') << std::setw(a.width + 1) << a.numbers[i]; + + else if (i > a.numbers.size() + 1) + { + std::cout << std::setfill(' ') << std::setw(a.width) << "|"; + print_prvi_hore(a); + } + } - for (int i = 0; i < size - 1; i++) { // size-1ă«ă™ă‚‹ă“ă¨ă§é©ĺ‡ăŞĺ—ć•°ă«čŞżć•´ - if (i < numbers.size()) { - std::cout << std::left << std::setfill(' ') << "|" << " " << std::setw(4) << numbers[i]; - } else { - std::cout << std::setfill(' ') << std::setw(6) << "|"; // 空白セ㫠+ std::cout << "|\n"; + print_prvi_hore(a); + } + else if (a.align == "right") + { + std::cout << std::right << std::setfill(' ') << "|" << std::setw(a.width) << column++ << " "; + for (int i = 0; i < a.numbers.size() + 1; i++) + { + if (i < a.numbers.size() + 1) + { + std::cout << std::right << std::setfill(' ') << "|" << std::setw(a.width) << a.numbers[i] << " "; + } + else if (i > a.numbers.size() + 1) + { + std::cout << std::right << " " << std::setfill(' ') << std::setw(a.width) << " " << "|"; + print_prvi_hore(a); + } } + + std::cout << "|\n"; + print_prvi_hore(a); } +} - std::cout << "|\n"; - print_prvi_hore(size); +void pre_print(setting &a) +{ + print_prvi_hore(a); + print_ABC(a); + print_num(a); } -int main() { - std::vector<int> first = {1, 2, 3, 4, 5}; - int size_first = first.size() + 1; +int main() +{ + setting a; + get_config(a); - std::vector<int> second = {10, 20, 30, 40, 50, 60}; - int size_second = second.size() + 1; + std::cout << a.min << " " << a.max << " " << a.width << " " << a.align << std::endl; - // 大ăŤă„ć–ąă®ă‚µă‚¤ă‚şă«çµ±ä¸€ - int table_size = std::max(size_first, size_second); + get_numbers(a); - print_prvi_hore(table_size); - print_ABC(table_size); - print_da(first, table_size); - print_da(second, table_size); + pre_print(a); return 0; -} +} \ No newline at end of file diff --git a/hw/hw01/get_sm_vek b/hw/hw01/get_sm_vek new file mode 100755 index 0000000000000000000000000000000000000000..c247c237f62258d4c3abb0e6a8b8ec4f3d33d1e9 GIT binary patch literal 32392 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 a%RgDK<i%quj`Ck>;~ccjiF(+I+J6JtmTxKm literal 0 HcmV?d00001 diff --git a/hw/hw01/get_sm_vek.cpp b/hw/hw01/get_sm_vek.cpp new file mode 100644 index 0000000..3305a1b --- /dev/null +++ b/hw/hw01/get_sm_vek.cpp @@ -0,0 +1,84 @@ +#include <iostream> +#include <vector> +#include <sstream> +#include <string> +#include <cstdio> // sscanf 用 + +// č¨ĺ®šć…ĺ ±ă‚’ĺ«ă‚€ć§‹é€ 体 +typedef struct +{ + int min = -99; // ă‡ă•ă‚©ă«ă最小値 + int max = 100; // ă‡ă•ă‚©ă«ă最大値 + std::vector<std::vector<int>>; +} setting; + + +// **SUM(A:C) を処ç†ă™ă‚‹é–˘ć•°** +void sum_range(const std::vector<int> &vec, char start, char end) +{ + int startIdx = start - 'A'; + int endIdx = end - 'A'; + int result = 0; + + for (int i = startIdx; i <= endIdx; i++) + { + result += vec[i]; + } + + std::cout << "SUM(" << start << ":" << end << ") = " << result << std::endl; +} + +// **1行を解ćžă—ă€ć•°ĺ€¤ăŞă‚ąăを作ćă™ă‚‹é–˘ć•°** +std::vector<int> parse_line(const std::string &line, const setting &config) +{ + std::istringstream iss(line); + std::vector<int> vec; + std::string token; + + while (std::getline(iss, token, ';')) + { + if (token.rfind("SUM(", 0) == 0) // `SUM(A:C)` ă®ĺ ´ĺ + { + char start, end; + if (sscanf(token.c_str(), "SUM(%c:%c)", &start, &end) == 2) + { + sum_range(vec, start, end); + } + } + else // 数値ă‡ăĽă‚żă®ĺ ´ĺ + { + int value = std::stoi(token); + if (!check_range(value, config)) + { + std::cout << "Out of Range: " << value << std::endl; + return {}; // 範囲外ăŞă‚‰ç©şă®ă™ă‚Żăă«ă‚’返㙠+ } + vec.push_back(value); + } + } + config.data.push_back(vec); + return vec; +} + + +// **1行ăšă¤ĺ‡¦ç†ă™ă‚‹ăˇă‚¤ăłé–˘ć•°** +void process_input(setting &config) +{ + std::string line; + std::cout << "入力ă—ă¦ăŹă ă•ă„ (SUM(A:C) 形式も可):\n"; + + while (std::getline(std::cin, line)) + { + if (line.empty()) continue; // 空行ăŻç„ˇč¦– + + std::vector<int> numbers = parse_line(line, config); + print_vector(numbers); // 数値ăŞă‚ąăを出力 + } +} + +int main() +{ + setting config; // č¨ĺ®šďĽmin/max ă®çŻ„囲) + process_input(config); + return 0; +} diff --git a/hw/hw01/main b/hw/hw01/main index 9bd94d7ed53194270071f83be2403616ad54da53..f4a00b5096d6db7fb20171421b93fb8bace12525 100755 GIT binary patch literal 54152 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%0AMBH6@U$Z3BUy4LBREZi;y911zZ8R2k>^l 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 literal 43608 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˘W#hIRP*^kJ%a-!)i853=sg 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 T+a-?RS>NNS^KAueN$vjtU?wGL diff --git a/hw/hw01/main.cpp b/hw/hw01/main.cpp index b2d1f30..7087a9c 100644 --- a/hw/hw01/main.cpp +++ b/hw/hw01/main.cpp @@ -8,214 +8,187 @@ typedef struct setting { - int min = 0; - int max = 0; - int width = 2; + int min = -9999999; + int max = 98888999; + int width = 3; std::string align = "left"; - std::vector<int> numbers; - int count = 0; - int suma = 0; -}setting; + int stretch = 0; + int header = 1; + std::vector<std::vector<int>> numbers; + int max_size_vector = 0; +} setting; + +void get_invalid_config_102(setting& a) +{ + std::cout<<"Invalid configration"<<std::endl; + exit (102); +} void get_config(setting &a) { std::string line; - std::cout<<"start configration"<<std::endl; + std::cout << "start configration" << std::endl; std::getline(std::cin, line); std::istringstream iss(line); - std::string setting; - - while(iss>>setting) - { + + while (iss >> setting) + { std::istringstream setting_stream(setting); std::string key; std::getline(setting_stream, key, '='); - if(key == "config.min") + if (key == "config.min") { setting_stream >> a.min; } - else if(key == "config.max") + else if (key == "config.max") { setting_stream >> a.max; + if(a.min > a.max) + get_invalid_config(a); } - else if(key == "config.width") + else if (key == "config.width") { setting_stream >> a.width; + if(a.width < 0) + get_invalid_config(a); } - else if(key == "config.align") + else if (key == "config.align") { setting_stream >> a.align; } - else if (key == "=") + else if (key == "config.stretch") { - break; + setting_stream >> a.stretch; + } + else if (key == "config.header") + { + setting_stream >>a.header; } } - } -void sum(setting& a, int range) +void sum(setting &a,std::vector<int> numbers, int range) { int suma = 0; - std::cout << range << std::endl; for (int i = 0; i < range; i++) { - suma += a.numbers[i]; + suma += numbers[i]; } - - a.numbers.push_back(suma); + numbers.push_back(suma); } -int get_numbers(setting& a) -{ - std::string line; - std::cout << "zadejte cisla: "; - - std::getline(std::cin, line); - std::istringstream iss(line); - - std::string token; +int get_numbers(setting &a, std::string line) +{ + std::istringstream iss(line); + std::string token; std::string range; - int tmp = 0; - + std::vector<int>vector; + int number_of_elements = 0; + while (std::getline(iss, token, ';')) { if (token.rfind("SUM(", 0) == 0) { + char start, end; - int range = 1; + int range = 0; sscanf(token.c_str(), "SUM(%c:%c)", &start, &end); - range = end - start; - sum(a, range); + range = end - start +1; + if(range > number_of_elements) + { + std::cerr<<"Invalid input"<<std::endl; + return 101; + } + sum(a, vector, range); } else { - tmp = std::stoi(token); + int tmp = std::stoi(token); if (tmp > a.max || tmp < a.min) { - std::cout << "Out of range" << std::endl; - return 2; + std::cout << "Out of Range" << std::endl; + return 100; } - a.numbers.push_back(tmp); + vector.push_back(tmp); + number_of_elements++; } } - - for (int num : a.numbers) - { - std::cout << num << " "; - } - std::cout << std::endl; + a.numbers.push_back(vector); + if(number_of_elements > a.max_size_vector) + a.max_size_vector = number_of_elements; + return 0; } -int column = 1; -void print_prvi_hore(setting &a) -{ +void print_roof(setting &a) +{ std::cout << "+"; - for (int i = 0; i < a.numbers.size() + 1; i++) + for (int i = 0; i < a.max_size_vector + 1; i++) { - std::cout << "-----+"; + for (int j = 0; j < a.width + 2; j++) + std::cout << "-"; + std::cout << "+"; } - std::cout << "\n"; + std::cout << std::endl; } void print_ABC(setting& a) { + char letter = 'A'; + std::cout << "| " << std::setw(a.width + 2)<< " |"; + + std::cout<<(a.align == "left" ? std::left : std::right); + for (int j = 0; j < a.max_size_vector; j++) + std::cout << " " << std::setw(a.width) << letter++ << " |"; - char posize = 'A'; - if (a.align == "left") - { - for (int j = 0; j < a.numbers.size() + 1; j++) - { - { - if (j == 0) - std::cout << std::left << std::setfill(' ') << std::setw(a.width) << "|"; - - else - std::cout<<std::left<<"|"<<" "<<std::setfill(' ')<<std::setw(a.width)<<posize++; - } - } - } - else if(a.align == "right") - { - for (int j = 0; j < a.numbers.size() + 1; j++) - { - { - if (j == 0) - std::cout << std::right << "|" << std::setfill(' ') << std::setw(a.width); - - else - std::cout<<std::right<<"|"<<std::setfill(' ')<<std::setw(a.width - 2)<<posize++<<" "; - } - } - } - std::cout << "|" << std::endl; - print_prvi_hore(a); + std::cout<<std::endl; + print_roof(a); } - -void print_num(setting& a) +void print_all_vectors(setting& a) { - if (a.align == "left") + for(size_t i = 0; i < a.numbers.size(); i++) { - std::cout << std::left <<"|"<<" "<< std::setfill(' ') << std::setw(a.width)<< column++; - for (int i = 0; i < a.numbers.size() + 1; i++) - { - if (i < a.numbers.size() + 1) - std::cout << std::left<< "|" << " " << std::setfill(' ')<<std::setw(a.width) << a.numbers[i]; - - else if (i > a.numbers.size() + 1) - { - std::cout << std::setfill(' ') << std::setw(a.width) << "|"; - print_prvi_hore(a); - } - } + std::cout<<"| "<<std::setw(a.width)<<i + 1<<" |"; + std::cout<<(a.align == "left" ? std::left : std::right); - std::cout << "|\n"; - print_prvi_hore(a); - } - else if(a.align == "right") - { - std::cout<<std::right<<std::setfill(' ')<<"|"<<std::setw(a.width - 2)<<column++<<" "; - for (int i = 0; i < a.numbers.size() + 1; i++) + for(int j = 0; j < a.max_size_vector; j++) { - if (i < a.numbers.size() + 1) - { - std::cout << std::right << std::setfill(' ') << "|" << std::setw(a.width - 2) << a.numbers[i] << " "; - } - else if (i > a.numbers.size() + 1) + if(j < a.numbers[i].size()) { - std::cout << std::right << " " << std::setfill(' ') << std::setw(a.width) << " " << "|"; - print_prvi_hore(a); + std::cout<<" "<<std::setw(a.width)<<a.numbers[i][j]<<" |"; } + else + std::cout<<" "<<std::setw(a.width)<<" "<<" |"; } - - std::cout << "|\n"; - print_prvi_hore(a); + std::cout<<std::endl; + print_roof(a); } } -void pre_print(setting& a) +void get_line(setting& a) { - print_prvi_hore(a); - print_ABC(a); - print_num(a); + std::string line; + std::cout<<"zadejte cislo"<<std::endl; + while(std::getline(std::cin, line)) + { + get_numbers(a, line); + } } - - int main() { setting a; + //std::vector<int> numbers; get_config(a); - - std::cout<<a.min<<" "<<a.max<<" "<<a.width<<" "<<a.align<<std::endl; - - get_numbers(a); - - pre_print(a); + //std::cout << a.min << " " << a.max << " " << a.width << " " << a.align << std::endl; + get_line(a); + print_roof(a); + print_ABC(a); + print_all_vectors(a); + return 0; -} \ No newline at end of file +} diff --git a/hw/hw01/print2 b/hw/hw01/print2 index 40f64831daedb55a5873c10e9fc0a184b38e533d..9f8dc50d1e10bc4cd26f5f0174a7f740f4c40613 100755 GIT binary patch delta 5290 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 S;^>D?{ZzrNcQ$N#SN}hS7p;H* delta 5239 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 diff --git a/hw/hw01/print2.cpp b/hw/hw01/print2.cpp index 51cb656..e088649 100644 --- a/hw/hw01/print2.cpp +++ b/hw/hw01/print2.cpp @@ -3,7 +3,8 @@ #include <vector> int column = 1; -int width = 3; +int width = 5; +/* void print_prvi_hore(int &a) { std::cout << "+"; @@ -13,10 +14,20 @@ void print_prvi_hore(int &a) } std::cout << "\n"; } +*/ +void print_prvi_hore(int& a) +{ + std::cout<<"+"; + for(int i = 0; i < width-1; i++) + { + std::cout<<std::setw(width)<<std::setfill('-')<<"+"; + } + std::cout<<"\n"; +} + void print_ABC(int &s, std::string &align) { - char posize = 'A'; if (align == "left") { @@ -97,7 +108,7 @@ int main() int size_first = first.size()+1; std::string align = "right"; - std::vector<int> second = {10, 20, 30, 40, 50, 60}; + std::vector<int> second = {10, 20, 30, 40, 50, 98}; int size_second = second.size() + 1; (size_first > size_second) ? print_prvi_hore(size_first) : print_prvi_hore(size_second); diff --git a/hw/hw01/print3 b/hw/hw01/print3 new file mode 100755 index 0000000000000000000000000000000000000000..1dc2c98269ffe0e62fb929a64008a443288640f9 GIT binary patch literal 32536 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 literal 0 HcmV?d00001 diff --git a/hw/hw01/print3.cpp b/hw/hw01/print3.cpp new file mode 100644 index 0000000..182802b --- /dev/null +++ b/hw/hw01/print3.cpp @@ -0,0 +1,83 @@ +#include <iostream> +#include <iomanip> +#include <vector> + +int width = 3; +int col = 1; +std::string align = "left"; + +void print_roof(int &size) +{ + std::cout << "+"; + for (int i = 0; i < size; i++) + { + // std::cout<<std::string(width + 2, '-')<<"+"; + for (int j = 0; j < width + 2; j++) + { + std::cout << "-"; + } + std::cout << "+"; + } + std::cout << std::endl; +} + +void print_ABC(int &size) +{ + char letter = 'A'; + // std::cout << "|"; + std::cout << "| " << std::setw(width + 2) << "|"; + if (align == "left") + for (int i = 0; i < size; i++) + { + std::cout << std::left << " " << std::setw(width) << letter++ << " |"; + } + + else if (align == "right") + { + for (int i = 0; i < size; i++) + std::cout << std::right << " " << std::setw(width) << letter++ << " |"; + } + + std::cout << "\n"; + print_roof(size); +} + +void print_num(const std::vector<int> &numbers, int &size) +{ + std::cout<<"| "<< std::setw(width)<<col++<< " |"; + if (align == "left") + { + //std::cout<<"| "<< std::setw(width)<<col++<< " |"; + for (int i = 0; i < size; i++) + std::cout << std::left << " " << std::setw(width) << numbers[i] << " |"; + } + else if (align == "right") + { + // std::cout << "| " <<std::setw(width) <<col++<< " |"; + for (int i = 0; i < size; i++) + std::cout << std::right << " " << std::setw(width) << numbers[i] << " |"; + } + std::cout << "\n"; + print_roof(size); +} + +int main() +{ + + std::vector<int> first = {1, 2, 3, 4, 5}; + + int size_first = first.size(); + std::string align = "right"; + std::vector<int> second = {10, 889, 10, 50, 50, 98}; + int size_second = second.size(); + + (size_first > size_second) ? print_roof(size_first) : print_roof(size_second); + + (size_first > size_second) ? print_ABC(size_first) : print_ABC(size_second); + + print_num(first, size_first); + + print_num(second, size_second); + + return 0; +} \ No newline at end of file diff --git a/hw/hw01/print4 b/hw/hw01/print4 new file mode 100755 index 0000000000000000000000000000000000000000..e69b0ceae768b6b41091f98e7127d7d86c405ecb GIT binary patch literal 53200 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 literal 0 HcmV?d00001 diff --git a/hw/hw01/print4.cpp b/hw/hw01/print4.cpp new file mode 100644 index 0000000..c2a2b15 --- /dev/null +++ b/hw/hw01/print4.cpp @@ -0,0 +1,132 @@ +#include <iostream> +#include <sstream> +#include <string> +#include <vector> +#include <cstring> +#include <cstdio> +#include <iomanip> + +typedef struct setting +{ + int min = -9999999; + int max = 98888999; + int width = 3; + std::string align = "left"; + std::vector<std::vector<int>> numbers; + int max_size_vector = 8; + int stretch = 0; +} setting; + +void print_roof(setting &a) +{ + std::cout << "+"; + for (int i = 0; i < a.max_size_vector + 1; i++) + { + for (int j = 0; j < a.width + 2; j++) + std::cout << "-"; + std::cout << "+"; + } + std::cout << std::endl; +} + +void print_ABC(setting &a) +{ + char letter = 'A'; + std::cout << "| " << std::setw(a.width + 2) << " |"; + + std::cout << (a.align == "left" ? std::left : std::right); + for (int j = 0; j < a.max_size_vector; j++) + std::cout << " " << std::setw(a.width) << letter++ << " |"; + + std::cout << std::endl; + print_roof(a); +} + +void print_void(setting &a) +{ + std::cout << " " << std::setw(a.width + 2) << "|"; +} +/* +void print_all_vectors(setting &a) +{ + for (size_t i = 0; i < a.numbers.size(); i++) + { + std::cout << "| " << std::setw(a.width) << i + 1 << " |"; + /* + if (a.numbers[i].empty()) + { + for (int j = 0; j < a.max_size_vector; j++) + print_void(a); + + std::cout<<std::endl; + print_roof(a); + + } + + //else + { + std::cout << (a.align == "left" ? std::left : std::right); + /* + for (int j = 0; j < a.numbers[i].size(); j++) + std::cout << " " << std::setw(a.width) << a.numbers[i][j] << " |"; + /ă“ă“ăŚă‚Źă‹ă‚‰ăŞă‹ăŁăź + for(int j = a.numbers[i].size(); j < a.max_size_vector; j++) + std::cout<<" "<<std::setw(a.width)<<" "<<" |"; + + for(int j = 0; j < a.numbers[i].size(); j++) + { + std::cout<<" "<<std::setw(a.width)<<a.numbers[i][j]<<" |"; + + if( j > a.numbers[i].size() && j < a.max_size_vector) + { + std::cout<<" "<<std::setw(a.width)<<" "<<" |"; + } + } + std::cout << std::endl; + print_roof(a); + + } + //std::cout << std::endl; + } +} +*/ +void print_all_vectors(setting& a) +{ + for(size_t i = 0; i < a.numbers.size(); i++) + { + std::cout<<"| "<<std::setw(a.width)<<i + 1<<" |"; + std::cout<<(a.align == "left" ? std::left : std::right); + + for(int j = 0; j < a.max_size_vector; j++) + { + if(j < a.numbers[i].size()) + { + std::cout<<" "<<std::setw(a.width)<<a.numbers[i][j]<<" |"; + } + else + std::cout<<" "<<std::setw(a.width)<<" "<<" |"; + } + std::cout<<std::endl; + print_roof(a); + } +} + +void set_numbers(setting &a) +{ + a.numbers = + { + {1, 2, 3, 4, 5}, + {2, 34, 75, 75, 78, 2, 1, 3}, + {2, 3, 4, 5}}; +} +int main() +{ + setting a; + + set_numbers(a); + print_roof(a); + print_ABC(a); + print_all_vectors(a); + + return 0; +} diff --git a/hw/hw01/vector b/hw/hw01/vector new file mode 100755 index 0000000000000000000000000000000000000000..a382be8b73e87be9247ec819a93c74b4df656558 GIT binary patch literal 53136 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 literal 0 HcmV?d00001 diff --git a/hw/hw01/vector.cpp b/hw/hw01/vector.cpp new file mode 100644 index 0000000..5003709 --- /dev/null +++ b/hw/hw01/vector.cpp @@ -0,0 +1,211 @@ +#include <iostream> +#include <sstream> +#include <string> +#include <vector> +#include <cstring> +#include <cstdio> +#include <iomanip> + +typedef struct setting +{ + int min = -9999999; + int max = 98888999; + int width = 3; + std::string align = "right"; + std::vector<std::vector<int>> numbers; + int count = 0; + int suma = 0; + int max_size_vector; + int stretch = 0; +} setting; + +void sum(setting &a, std::vector<int> &numbers, int range) +{ + int suma = 0; + std::cout << range << std::endl; + for (int i = 0; i - 1 < range; i++) + { + suma += numbers[i]; + } + + numbers.push_back(suma); +} +/* +void print_num(setting &a) +{ + int col = 1; + std::cout << "| " << std::setw(a.width) << col++ << " |"; + if (a.align == "left") + { + for (int i = 0; i < numbers.size() +1; i++) + std::cout << std::left << " " << std::setw(a.width) << numbers[i] << " |"; + } + else if (a.align == "right") + { + for (int i = 0; i < numbers.size(); i++) + std::cout << std::right << " " << std::setw(a.width) << numbers[i] << " |"; + } + std::cout << std::endl; +} +*/ + +void print_all_vectors(const setting &a) +{ + for (size_t i = 0; i < a.numbers.size(); i++) + { + + std::cout << "| " << std::setw(a.width) << i + 1 << " |"; + if(a.align == "left") + { + for(int j = 0; a < a.numbers[i].size(); j++) + { + std::cout<<std::left <<" "<<std::setw(a.width)<<a.numbers[i][j] <<" |"; + } + print_roof(a); + } + + if (a.align == "right") + { + for (int j = 0; j < a.numbers[i].size(); j++) + { + std::cout << std::right << " " << std::setw(a.width) << a.numbers[i][j] << " |"; + } + } + std::cout << std::endl; + } +} + +int get_numbers(setting &a, std::string line) +{ + std::istringstream iss(line); + int number_of_elements = 0; // to see which vector has more elements + std::string token; + int tmp = 0; + std::vector<int> vector; + + while (std::getline(iss, token, ';')) + { + if (token.rfind("SUM(", 0) == 0) + { + number_of_elements++; + char start, end; + int range = 0; + sscanf(token.c_str(), "SUM(%c:%c)", &start, &end); + range = end - start; + sum(a, vector, range); + } + else + { + tmp = std::stoi(token); + if (tmp > a.max || tmp < a.min) + { + std::cout << "Out of Range" << std::endl; + return 100; + } + vector.push_back(tmp); + number_of_elements++; + } + } + + number_of_elements > a.max_size_vector ? a.max_size_vector = number_of_elements : void(0); + a.numbers.push_back(vector); + number_of_elements = 0; + // print_num(a, numbers); + return 0; +} + +void get_line(setting &a) +{ + std::string line; + std::cout << "zadejte cislo" << std::endl; + + while (std::getline(std::cin, line)) + { + get_numbers(a, line); + } +} + +int main() +{ + setting a; + get_line(a); + // get_numbers(a); + + std::cout << "biggest vector has size of " << a.max_size_vector << std::endl; + + print_all_vectors(a); + return 0; +} + +/* +void print_num(setting &a) +{ + int col = 1; + std::cout << "| " << std::setw(a.width) << col++ << " |"; + if (a.align == "left") + { + for (int i = 0; i < a.numbers.size(); i++) + std::cout << std::left << " " << std::setw(a.width) << a.numbers[i] << " |"; + } + else if (a.align == "right") + { + for (int i = 0; i < a.numbers.size(); i++) + std::cout << std::right << " " << std::setw(a.width) << a.numbers[i] << " |"; + } + std::cout << std::endl; + print_roof(a); +} +*/ + +/* +void print_all_vectors(setting &a) +{ + for (size_t i = 0; i < a.numbers.size(); i++) + { + + std::cout << "| " << std::setw(a.width) << i + 1 << " |"; + if(a.align == "left") + { + for(int j = 0; j < a.numbers[i].size(); j++) + std::cout<<std::left <<" "<<std::setw(a.width)<<a.numbers[i][j] <<" |"; + std::cout<<std::endl; + print_roof(a); + } + + if (a.align == "right") + { + for (int j = 0; j < a.numbers[i].size(); j++) + std::cout << std::right << " " << std::setw(a.width) << a.numbers[i][j] << " |"; + std::cout<<std::endl; + print_roof(a); + } + + } + std::cout << std::endl; +} + +void print_ABC(setting &a) +{ + char letter = 'A'; + std::cout << "| " << std::setw(a.width + 2)<< " |"; + /* + if (a.align == "left") + { + for (int j = 0; j < a.max_size_vector ; j++) + std::cout << std::left << " " << std::setw(a.width) << letter++ << " |"; + } + else if (a.align == "right") + { + for (int j = 0; j < a.max_size_vector; j++) + std::cout << std::right << " " << std::setw(a.width) << letter++ << " |"; + } + + std::cout<<(a.align == "left" ? std::left : std::right); + for (int j = 0; j < a.max_size_vector; j++) + std::cout << " " << std::setw(a.width) << letter++ << " |"; + + std::cout<<std::endl; + print_roof(a); +} + +*/ diff --git a/hw/hw01/width b/hw/hw01/width new file mode 100755 index 0000000000000000000000000000000000000000..121c1df4ab128fe511bfc2a34132459151e6d8d2 GIT binary patch literal 25640 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 Ht7`uZR82+V literal 0 HcmV?d00001 diff --git a/hw/hw01/width.cpp b/hw/hw01/width.cpp new file mode 100644 index 0000000..fe7b832 --- /dev/null +++ b/hw/hw01/width.cpp @@ -0,0 +1,62 @@ +#include <iostream> +#include <iomanip> +#include <vector> + +int width = 3; +int column = 1; + +// 上é¨ç˝«ç·šă‚’é©ĺ‡ă«čŞżć•´ +void print_roof(int size) +{ + std::cout << "+"; + for (int i = 0; i < size; i++) + { + std::cout << std::string(width + 2, '-') << "+"; + } + std::cout << "\n"; +} + +// ABC ăăă€ăĽă‚’é©ĺ‡ă«čŞżć•´ +void print_ABC(int size) +{ + char posice = 'A'; + std::cout << "|"; + for (int j = 0; j < size; j++) + { + std::cout << " " << std::setw(width) << posice++ << " |"; + } + std::cout << "\n"; + print_roof(size); +} + +// 数値行を出力 +void print_num(const std::vector<int> &numbers, int size) +{ + std::cout << "| " << std::setw(width) << column++ << " |"; + for (int i = 0; i < size - 1; i++) + { + if (i < numbers.size()) + std::cout << " " << std::setw(width) << numbers[i] << " |"; + else + std::cout << " " << std::setw(width) << " " << " |"; // 空セ㫠+ } + std::cout << "\n"; + print_roof(size); +} + +int main() +{ + std::vector<int> first = {1, 2, 3, 4, 5}; + std::vector<int> second = {10, 20, 30, 500, 50, 98}; + + int size_first = first.size() + 1; + int size_second = second.size() + 1; + int max_size = std::max(size_first, size_second); + + print_roof(max_size); + print_ABC(max_size); + print_num(first, max_size); + print_num(second, max_size); + + return 0; +} -- GitLab