From 04dba2874d081dbe291157b9ea607da4a1f606f4 Mon Sep 17 00:00:00 2001
From: Kazuyuki Omi <omikazuy@fel.cvut.cz>
Date: Sun, 16 Mar 2025 15:13:13 +0100
Subject: [PATCH] Moved sstream2 to hw01

---
 hw/hw01/sstream2           | Bin 0 -> 32984 bytes
 hw/{ => hw01}/sstream2.cpp |   0
 sstream2.cpp               |  93 +++++++++++++++++++++++++++++++++++++
 3 files changed, 93 insertions(+)
 create mode 100755 hw/hw01/sstream2
 rename hw/{ => hw01}/sstream2.cpp (100%)
 create mode 100644 sstream2.cpp

diff --git a/hw/hw01/sstream2 b/hw/hw01/sstream2
new file mode 100755
index 0000000000000000000000000000000000000000..13cd900706ef3f4eb88656cddb3aabd8b1e6f995
GIT binary patch
literal 32984
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

literal 0
HcmV?d00001

diff --git a/hw/sstream2.cpp b/hw/hw01/sstream2.cpp
similarity index 100%
rename from hw/sstream2.cpp
rename to hw/hw01/sstream2.cpp
diff --git a/sstream2.cpp b/sstream2.cpp
new file mode 100644
index 0000000..a941146
--- /dev/null
+++ b/sstream2.cpp
@@ -0,0 +1,93 @@
+#include <iostream>
+#include <sstream>
+#include <string>
+#include <vector>
+
+typedef struct setting
+{
+    int min = 0;
+    int max = 0;
+    int width = 2;
+    std::string align = "left";
+    std::vector<int> numbers;
+    int count = 0;
+    int suma = 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;//configのそれぞれを見分けるための変数min, max, width, or align.
+    //issに、tokenの値を入れ、終わるのはeofつまり、何も読み込めない時。
+    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;
+        }
+    }
+
+}
+
+void get_numbers(setting &a)
+{
+    std::string line;
+    std::cout<<"zadejte cisla"<<std::endl;
+    std::getline(std::cin, line);
+    std::istringstream iss(line);
+
+    std::string point;
+    while(iss >> point)
+    {
+        if(point == "SUM(A:C)")
+        {
+            //sum(a);
+            break;
+        }
+
+        std::istringstream num_stream(point);
+        int number;
+        if(num_stream >>number)
+        {
+            a.numbers.push_back(number);
+        }
+        
+    }
+}
+
+int main()
+{
+    setting a;
+    get_config(a);
+
+    get_numbers(a);
+    std::cout<<a.min<<" "<<a.max<<" "<<a.width<<" "<<a.align<<std::endl;
+
+    for(int num:  a.numbers)
+    {
+        std::cout<<num<<" ";
+    }
+    std::cout<<std::endl;
+
+    return 0;
+}
\ No newline at end of file
-- 
GitLab