หนึ่งในปัญหาคลาสิก เวลาเขียนโปรแกรมที่ทุกคนต้องเจอเลย
ก็คือการบวกลบเลขทศนิยมในภาษาโปรแกรม ของบางภาษา นี้แหละ
เช่น JavaScript, Python, Perl, C#, C, C++, Java, PHP, Fortran
(และอื่นๆ อีกหลายภาษาที่ไม่ได้กล่าวถึง)
.
หลายครั้งที่มันอาจเพี้ยนได้ เช่น
👉 0.1+0.2 ไม่ได้เท่ากับ 0.3
แต่ได้เป็น 0.30000000000000004
.
👉 หรือ 0.1 บวกกัน 10 ครั้ง ก็ไม่ได้เป็น 1
แต่ได้เป็น 0.9999999999999999
.
คนเขียนโปรแกรมเจอแบบนี้เข้าไป
ก็เหมือนมวยโดนหมัดน๊อคมึนงงในดงโค้ด
:
:
แต่ใช่ว่ามันจะเพี้ยนทุกครั้ง ซะเมื่อไร เช่น
0.5+0.5 = 1 (ถูกต้องเป๊ะ)
0.2+0.3 = 0.5 (บังเอิญไม่เพี้ยน)
.
สำหรับ กรณี 0.2 กับ 0.3 มันถูกตัดเศษเหลือเป็น
0.2000000000000000111022302462515654042363166809082031250
กับ
0.2999999999999999888977697537484345957636833190917968750
พอบวกกันจึงได้ 0.5 พอดี แบบฟลุ๊คๆๆ ซึ่งไม่ควรทำได้
(ตรงสอบดูได้ 0.2+0.3 == 0.5 ได้ค่าออกมาเป็น true)
:
:
สาเหตุที่เป็นเช่นนี้
ก็เพราะว่าคอมพิวเตอร์มันรู้จักแต่ เลขฐาน2 อะนะ
ต่อให้เราเขียนโค้ดใช้เลขฐาน10 ก็ตาม
สุดท้ายเวลาโค้ดมันถูกรัน ก็จะกลายเป็นเลขฐาน 2 อยู่ดี
.
😨 แล้วก็เป็นความซวยที่จะมาเยือนคนเขียนโปรแกรม
เพราะเวลาแปลงเลขฐาน10 ไปเป็นเลขฐาน 2
บางกรณีมันแปลงแล้ว ดันได้ตัวเลขที่ไม่รู้จบเสียด้วยซิ
จึงทำให้การเก็บทศนิยมผิดเพี้ยนไปได้
.
สำหรับรูปแบบการจัดเก็บเลขทศนิยม ในหลายภาษา
เขาจะนิยมใช้มาตรฐาน IEEE-754 floating point
เช่น 0.1 จะถูกมองว่าคือ 1/10
.
เมื่อเก็บเป็นเลขทศนิยมฐานสอง
ตามมาตรฐาน IEEE-754 floating point จะได้เป็น
0.0001100110011001100110011001100110011001100110011...
เป็นทศนิยมไม่รู้จบในรูปเลขฐานสอง ....นี้คือสิ่งที่คอมมองเห็น
.
พอคอมแปลงกลับมาเป็นทศนิยม เพื่อให้มนุษย์โลกอ่านเข้าใจ
ในรูปฐาน 10 ก็จะได้เป็น
0.1000000000000000055511151231257827021181583404541015625
ทว่าคอมมันจะตัดให้เหลือแค่ 0.1 (คนจึงเห็นแค่นี้)
:
🤔 ซึ่งความเพื้ยนแบบนี้
แน่นอนทำให้เกิดบั๊กเวลาคำนวณตัวเลข
- ยิ่งงานต้องการคำตอบที่ละเอียดมาก เช่น งานธนาคาร ก็จะประสบปัญหา เป็นต้น
- หรือเวลานำไปใช้ในเงื่อนไขเปรียบเทียบพวก if, while ฯลฯ ก็อาจมีบั๊กเกิดขึ้นได้ เป็นต้น
.
😀 แต่ไม่ต้องห่วง ในหลายๆ ภาษาเขาจะมีวิธีแก้ปัญหานี้อยู่ครับ
ป้องกันการคำนวณตัวเลข ไม่ให้คลาดเคลื่อน เช่น
- ใน Java ก็จะมีคลาส BigDecimal เอาไว้บวกลบคูณหาร สำหรับเลขทศนิยมโดยเฉพาะ
- ใน Python ก็จะมีคลาสคล้ายๆ กัน เช่น Decimal
- ส่วนใน JavaScript อาจใช้ไลบรารี่ ซึ่งมีให้เลือกเยอะเช่น
https://github.com/MikeMcl/decimal.js/
https://github.com/MikeMcl/bignumber.js/
https://github.com/MikeMcl/big.js/
- ภาษาอื่นที่เหลือลองไปศึกษาเองดูนะครับ
.
.
เรื่องบวกลบคูณหาร เลขทศนิยม ถือเป็นเรื่องสำคัญที่ไม่ควรมองข้าม
โดยส่วนตัวก็เคยเจอความเผลอเรอตรงนี้
ในระดับโปรเจคระดับธนาคาร ก็เคยพลาดมาแล้ว
สุดท้ายต้องมาไล่นั่งแก้โค้ดหลายบรรทัด
เสียเวลานั่งไล่ test ใหม่อีกรอบอีก
.
หมายเหตุเห็นคอมเมนต์สงสัยว่า
PHP กับ C# รอดชะตากรรมเดียวกันไหม ?
ก็บอกว่าไม่รอดครับ
.
// ลองดูตัวอย่างโค้ด C#
Console.WriteLine( ((0.1+0.2) == 0.3)); // False
Console.WriteLine( ((0.1+0.2) == 0.30000000000000004)); // True
// ลองดูตัวอย่างโค้ด PHP
echo number_format(0.1+0.2 , 17);
.
++++++
เขียนโดย โปรแกรมเมอร์ไทย thai programmer
อ่านเรื่อง IEEE-754 floating point ได้ที่
https://th.wikipedia.org/wiki/จำนวนจุดลอยตัว
One of the programming time class issues that everyone needs to encounter.
It's a positive, negative, decimal number in the programming language of some languages.
เช่น JavaScript, Python, Perl, C#, C, C++, Java, PHP, Fortran
(And many other languages not mentioned)
.
So many times it can be crazy like
👉 0.1 + 0.2 is not equal to 0.3
But got to be 0.30000000000000004
.
👉 or 0.1 plus 10 times. It's not 1
But got to be 0.9999999999999999
.
The programmers found this.
It's like boxing. I got a punch. I'm confused in the code.
:
:
But it's not crazy every time.
0.5 0.5 0.5 0.5 1 (Exactly correct)
0.2 0.2 0.3 0.3 0.5 (accidentally not crazy)
.
For 0.2 and 0.3 cases, it was cut as debris.
0.2000000000000000111022302462515654042363166809082031250
With
0.2999999999999999888977697537484345957636833190917968750
Let's be positive. I got 0.5 fits. Fluke which I shouldn't do.
(I can see the exam. 0.2 + 0.3 == 0.5 I got the value to be true)
:
:
The cause is like this
It's because computer only knows the base number 2
Even if we write code, use base number 10
Finally, when the code is run, it will become the base number 2 anyway.
.
😨 and it's bad luck to visit the programmers.
Because time converts base number 10 to base number 2
In some cases, it's converted. I get an endless number.
So that the decimal collection is wrong.
.
For decimal numbers storage in multiple languages
He will be popular with IEEE-754 floating point standards.
For example, 0.1 will be seen as 1/10
.
When it's kept as a decimal number, binary digits.
According to IEEE standards-754 floating point will be.
0.0001100110011001100110011001100110011001100110011...
It's an endless decimal in the second base number.... This is what the computer sees.
.
When the computer comes back to a decimal, so that the world can read and understand.
In the base photo, 10 will be.
0.1000000000000000055511151231257827021181583404541015625
But the computer will cut it down to 0.1 (that's all I see)
:
🤔 This kind of friendship
Definitely make a time bug. Calculates numbers.
- The more jobs require a detailed answer, such as banking job, the problem is etc.
- or time to apply in comparison terms. If, while etc, there may be a buck happening. etc.
.
😀 But don't worry. In many languages, there will be a solution to this problem.
Prevent calculation of numbers from discrepancy, e.g.
- In Java, there will be a BigDecimal class. Plus, multiply, multiply for decimal numbers.
- In Python there are similar classes like Decimal
- Parts in JavaScript may use a lot of library to choose from, e.g.
https://github.com/MikeMcl/decimal.js/
https://github.com/MikeMcl/bignumber.js/
https://github.com/MikeMcl/big.js/
- Other languages. Let's study it yourself.
.
.
A positive, multiply, digging, decimal numbers are important things that shouldn't be overlooked.
Personally, I have experienced the accident.
Bank level project. I have already missed it.
Finally, I have to sit and solve many lines of code.
Waste of time. Sit to chase the new test again.
.
Note, see comments, wonder if
PHP and C #survive the same fate?
I told you that you won't survive.
.
// Check out the C code trailer #
Console.WriteLine( ((0.1+0.2) == 0.3)); // False
Console.WriteLine( ((0.1+0.2) == 0.30000000000000004)); // True
// Check out the PHP code trailer
echo number_format(0.1+0.2 , 17);
.
++++++
Written by Thai programmer thai coder
Read IEEE-754 floating point at
https://th.wikipedia.org/wiki/จำนวนจุดลอยตัวTranslated
php class this 在 國立清華大學National Tsing Hua University Facebook 的精選貼文
賀陳弘校長寫給全校教職員生的一封信:
清華園的師生及同仁們:
大家好嗎?
在疫情日漸緊張之際,我們將一起迎接延後了兩星期的新學期。
很感謝許多行政同仁從農曆年假期就動員起來,在開學前完成了各項防疫措施,包括設置居家檢疫宿舍,幫助從港澳返校的同學們平安地度過14天的居家檢疫。所幸他們全都平安出關,能和我們一同迎接新學期的開始。負責清潔的阿姨伯伯們比平常更加辛勞,為大家準備好了清潔安全的環境。
也要謝謝學生會的幹部們,從防疫小組成立的第一天開始就積極加入,傳達同學的看法,提供了許多很好的建議,並且用很棒的方式協助學校將最新的防疫措施傳達給同學們。
在開學的時候,清華園還有一些境外師生尚未能返校。學校除了備妥視訊教學等彈性修業方案,也衷心期待他們在住居地一切平安,不要中斷學習;在疫情趨緩之後,能很快地回來加入我們。
大家也一定會發現,校園因防疫而必須採取許多措施,雖然會增添一些不便,但為了彼此的平安健康,要請大家務必配合。包括:
1. 校園全面量測體溫:
全校共設置19處體溫量測站(校本部15站,南大校區4站),體溫正常者貼上貼紙,大家互相提醒,希望進入建築物內的都是量過體溫正常者。體溫異常者,由衛保組詢問個案資料後指示後續安排方式。
https://reurl.cc/jdX2ln
2. 入境與健康狀況通報:
自中港澳、南韓、義大利以及國際旅遊疫情建議等級第一級與第二級國家(如日本、新加坡、伊朗、泰國)入境的教職員請向衛保組通報,所屬的單位也必須另外做通報。
若耳溫≥ 38℃、額溫≥37.5℃或出現呼吸道不適等類流感症狀,也請立即通報衛保組03-5743000(週一至周五,上午8時至下午5 時)或生輔組03-5711814(24小時)
個人通報: https://reurl.cc/RdKgy9
單位通報: https://reurl.cc/72ZNMQ
3. 視訊及彈性教學:
為了讓無法返校上課的學生學習不中斷,請助教徵得授課教師同意,協助將課程錄影下來,上傳到學校的數位學習平台。如無法錄影,也請教師指派助教協助學生補課及課輔。
彈性修業機制:
http://2019-ncov.site.nthu.edu.tw/var/file/499/1499/img/420369121.pdf
4. 記錄課堂出缺席:
為校內萬一出現確診病患、需要掌握其接觸史,請教師以點名或拍照方式,掌握學生出缺席情況並做記錄。以首爾大學確診案例為實驗室工作人員的例子,也請各實驗室主管掌握進出實驗室各種人員的日期時間。
5. 加強清潔消毒:
清潔人員需戴口罩及手套進行清潔工作。人體易接觸區域如電梯按鍵、門把開關、樓梯扶手、會議室桌椅、茶水間、交誼廳……等,每日以1:100比例漂白水消毒。廁所清潔以1:100比例漂白水消毒。
6. 關懷諮商:
疫情來襲時,師生們或多或少都有些恐懼和心理影響。請不要因謠言而恐慌,以關懷代替臆測或排斥。如果發現自己對疫情的焦慮與擔憂已經影響睡眠或正常作息,可以聯絡諮商中心
http://counsel.site.nthu.edu.tw/p/406-1250-174531,r492.php?Lang=zh-tw
新學期開始,疫情雖不可避免地影響了我們的生活,希望師生們儘可能如常地學習、研究,在清華園中天天有進步。清華有最美麗的校園,鼓勵大家帶著電腦書本走向戶外,在大草坪做小組討論,成功湖畔、相思湖邊也是午餐的好地點。
防疫在生活中最基本的工夫是多洗手、室內多通風、必要時戴口罩,這些仍然是最好也最有效的方法。
當我們一起經歷過了疫情流行,我們將學會比過去更加的關懷幫助彼此、學校的環境更加衛生乾淨,未來我們會記得在清華園的日子是生命中最值得回憶的時光。
讓我們以最健康最謹慎的心情,一起迎接清華園的新學期!
校長 賀陳弘
109.2.29
Feb. 29, 2020
Dear faculty members, students, and staff,
How are you?
As the epidemic is heightening, we are going to embrace the beginning of this new semester which was postponed for two weeks.
I would like to thank many administrators who have worked together since the Lunar New Year holidays to install a few prevention measures before school begins. These measures include the designation of home-quarantine dormitories so that students returning from Hong Kong and Macau could safely finish a 14-day period of home quarantine. Luckily, they have all peacefully exited the quarantine dorms and ready for the new semester like the rest of us. Also, the respectful cleaning staff worked even harder than usual to prepare a clean and safe environment for everybody.
I also thank the officers of NTHU Student Associations for being active since the first day when we set up the University Epidemic Prevention Team. You have conveyed the points of view of the student body, you have provided many great suggestions, and delivered the university announcements to students in superb ways.
However, as the school is about to begin, some students and professors still stay in their countries, not able to return to Taiwan. NTHU has prepared flexible study programs, including online learning resources, and we sincerely wish them peace and that they can continue their study with no interruption. Hopefully, if the epidemic becomes less severe, they will come back to join us soon.
You will certainly find out that the campus is going to implement various additional epidemic-prevention measures. Though these measures can be inconvenient, we ask everybody to comply to them for the sake of everybody’s well-being. The measures include:
1. A comprehensive plan for body temperature measurement:
We have set up 19 body temperature booths (15 in the main campus, and 4 in the Nanda campus). Those who have normal temperatures will be marked with a sticker. I ask everybody to remind one another of this, so that we can be sure that everybody’s temperature is normal inside all the university buildings. Just in case if your temperature turns out abnormal, the Division of Health Services will inquire some of your personal information and follow up accordingly.
2. For faculty and staff members: if you entered Taiwan from Mainland China, Hong Kong, Macau, South Korea, Italy, and countries listed under Travel Notice Level 1 or 2 (such as Japan, Singapore, Iran, and Thailand), please report to the Division of Health Services from this link: https://reurl.cc/RdKgy9. Your department or division are also requested to file in a separate report https://reurl.cc/72ZNMQ.
3. Video-based and flexible study programs:
To ensure that students continue to study in case that they cannot return to campus, we have asked teaching assistants to record and upload the lectures to the university e-learning systems (if the professor approves). If video recording is not plausible, we ask the professor to assign TAs for make-up classes and study consultation.
4. Class attendance:
If a confirmed COVID-19 case occurs in NTHU, we will need to clarify the patient’s disease contact history. Therefore, we have asked all teachers to check attendance at all time, perhaps by taking a picture, so that we have accurate records for every student’s presence and absence. For laboratory personnel management, we ask all the lab directors to thoroughly keep track of lab members’ entrance and exiting date and time.
5. Disinfection:
The cleaning staff will need to wear a mask and gloves at work. Bleach with 1:100 dilution will be used every day to disinfect places that are easily reached or touched by human body, including elevator buttons, doorknobs, staircase handrails, desks and chairs in meeting rooms, kitchenettes, social halls, and so on. Similarly, the toilets will be disinfected daily with 1:100 diluted bleach.
6. Caring and consultation:
During this difficult time, we might all be somewhat fearful and emotionally affected. Please do not panic over rumors; let us care for each other and do not exclude or speculate against anybody. If you find that your anxiety and worry is affecting your sleep or normal daily routine, you are encouraged to contact the University Counseling Center.
http://counsel-en.site.nthu.edu.tw/p/406-1292-174586,r1020.php?Lang=en
The epidemic is going to affect our life inevitably when the new semester begins. I wish that, as much as we can, we will study and do research normally, and keep making progress on our beautiful campus. Perhaps, we can enjoy picking up our books and laptops to study outdoors (weather permitting) on the lawn. Enjoying lunch at the lakeside may also be a good idea.
The most basic things we can do are to wash hands frequently, to have good ventilation indoors, and to wear a mask whenever necessary. I believe that these approaches will be effective.
When we go through this difficult time, we will care for and help one another even more than before, the school environment will become healthier and cleaner, and I believe that we will cherish every moment we spend here at NTHU as the most memorable time of our life.
Let us embrace the new semester with the most careful mind and a healthy heart!
From Your President, Hong Hecheng
php class this 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最讚貼文
ขออัพเดตโครงการ หลักสูตรโค้ดดิ้งสำหรับเด็กไทย อันนี้สรุปให้ตามข่าวที่ รมช.ศธ. พูด
1) การส่งเสริมการโค้ดดิ่งให้กับเด็กไทย
มีอยู่ในนโยบายของภาครัฐที่ประกาศต่อสภา
2) หลักสูตรโค้ดดิ่งเริ่มต้นในเดือน พ.ย.
เปิดเทอมหน้านี้ที่จะถึง ก็พร้อมลุยกันเลย
แต่จะเริ่มนำร่องกับเด็กระดับชั้น ป.1-ป.3 ก่อน
3) การเรียนโค้ดดิ้งตามหลักสูตร
จุดประสงค์ไม่ได้สอนเด็กเป็น #โปรแกรมเมอร์
4) แต่เรียนเพื่อให้เด็กคิดมีตรรกะ ให้คิดเป็น คิดเป็นระบบ
นำไปใช้ในชีวิตประจำวันได้ คิดสร้างสรรค์ สร้างสิ่งใหม่ๆ ในชีวิตได้
5) รัฐบาลไม่ได้บังคับทุกโรงเรียนต้องเปิดหลักสูตรนี้
เงื่อนไขต้องให้โรงเรียนสมัครมาเอง
ผู้อำนวยการ และคุณครูต้องอยากสอน ไม่ได้บังคับ
....แต่น่าจะลืมถามนักเรียนว่าจะเอาด้วยไหม (อันนี้แซวเล่นนะ)
6) เดือน ต.ค. จะอบรมครูทั่วประเทศ 1,000 คน
สำหรับคุณครูอบรบ 3 วัน
ส่วนผู้อำนวยการก็ต้องเข้าอบรบด้วย แต่อบรบแค่ 1 วัน
7) ถามว่าหลักสูตรตอนนี้พร้อมหรือยัง?
ต้องบอกว่าพร้อมตั้งนานแล้ว
แต่ตามข่าวยังไม่ได้นำไปปฏิบัติใช้จริง
+++++
ความเห็นส่วนตัวผมเองก็ยังงงๆ
มันจะต่างกับหลักสูตร "วิชาวิทยาการคำนวณ" ของกระทรวงศึกษา
ที่สอนตั้งแต่ ป.1- ยันโน่นถึงม.6
มันต่างกันยังไง????
.
ส่วนเนื้อหาการเรียนและการสอนจะเป็นอย่างไรนั้น?
อันนี้ต้องติดตามตอนต่อไป ......
ถ้าใครมีน้องๆ ป.1 ถึง ป.3.
เปิดเทอมหน้าลองถามน้องดูได้ เรียนแล้วเป็นไง
.
###########
อีกอย่างหนึ่ง ขอให้ความรู้เพิ่มเติม
เห็นบางคอมเมนต์ไม่เห็นด้วยที่ใช้คำว่าโคดดิ้งสอนเด็ก
เพราะโปรแกรมเมอร์อาจคุ้นเคยกับการโค้ดดิ้งเป็น Text
.
ต้องเข้าใจว่าในระดับปฐมเวลาสอนโค้ดดิ้งเด็ก
เขาไม่ได้ใช้ภาษาอย่างเช่น C++, Java, PHP มาสอน
.
ภาษาอย่าง Python มีสอนอยู่ในหลักสูตร
ที่มีอยู่ในตำราเรียนวิชาวิทยาการคำนวณ
จะเริ่มสอนในชั้น ม.ต้น ในประถมยังก่อน
(แต่จะให้ทางโรงเรียนเลือกสอนระหว่าง Python หรือ Scratch)
.
ในระดับเด็กประถมอย่างมากสุด
จะสอนเขียนโปรแกรม จะใช้เป็น Scratch
เวลาฝรั่งบอกว่าสอนโค้ดดิ้งให้กับเด็กเล็กวัยปฐม
ก็จะใช้ Scratch เป็นส่วนใหญ่ เพื่อเน้นตรรกะ และกระบวนการคิด
.
ซึ่งมันเป็นการใช้บล็อกคำสั่ง ควบคุมตัวละครในเกม
...โดยเน้นไปที่ ฝึกตรรกะ ฝึกกระบวนการคิด
...แต่ถ้าถามว่าใช้ Scratch สร้างเกมง่ายๆ ได้ไหม ก็ตอบว่าทำได้นั่นแหละ
.
สำหรับ Scratch ฝรั่งมันก็บอกว่า เป็นภาษาโปรแกรมมิ่งเหมือนกัน
แต่เป็นชนิดหนึ่งเรียกว่า visual programming language (VPL)
เป็นภาษาภาพ ใช้ภาพสร้างโปรแกรมขึ้นมา
.
ในการทำงานจริงถ้าใครเคยอยูภาคอุตสาหากรรม
คงรู้จัก LabView ซึ่งใช้ควมคุมฮาร์ดแวร์ PLC
มันก็ใช้ภาษาภาพนี้แหละเขียนโปรแกรมควบคุม
ไม่ต้องมาเขียน Text ด้วยมือ ที่เขียนคำผิด ก็มีผลต่อโปรแกรม
.
จึงไม่น่าจะแปลกอะไรที่ฝรั่งมันจะบอกว่าใช้ Scratch สอน
เพื่อปูทักษะ ฝึกพื้นฐานตรรกะ
ก็เหมาตีรวมว่าเป็นการโค้ดดิ้งไปเลย
กลายเป็นคำที่ขายได้ หรือคำการตลาด เวลาใช้โปรโมต
.
---
ที่มาข่าว
https://www.youtube.com/watch?v=SHXRHbdpcnY
สรุปโดย โปรแกรมเมอร์ไทย thai programmer
I would like to update the program of the teaching course for Thai kids. This one is summarized according to the news at the NCO. .. Speak.
1) Promotion of codeing for Thai children.
contained in public sector policy declared to congress
2) Code wording course starts in Feb. Y.
This next semester will be ready. Let's fight
But to start the pilot with the grade school kid 1-P. 3 first
3) Study code following the course.
Purpose doesn't teach kids to be #programmers.
4) But study to make kids think logically. Think as a system.
Apply everyday, get creative, create new things in life.
5) Government is not mandatory. All schools have to open this course.
Conditions must be applied for the school itself.
The director and the teacher must want to teach, not mandatory.
.... But I should forget to ask students whether they want to take it too (this one is teasing.)
6) The month of the year. .. I will train 1,000 teachers nationwide.
For the teacher. 3 days of training.
The director also has to go to the battle, but the training is only 1 days.
7) Ask if the course is now ready?
I have to say I have been ready for a long time
But according to the news, it hasn't been implemented yet.
+++++
My personal opinion is still confused.
It will be different to the ′′ Computational Science ′′ course of the Ministry of Education.
I have taught since the first grade. 1-Solstice to university. 6
What is the difference????
.
What would the content and teaching be?
This one must follow the next episode......
If anyone has kids in P.O. 1 to the P.O. 3.
Open next semester. Ask my sister. How was she studying?
.
###########
One more thing, more knowledge.
I see some comments that I don't agree with using the word ′′ code ′′ to teach kids ′′
Because programmers may be familiar with Text code rolling.
.
I need to understand that in premiere time teaching child code.
He doesn't use language like C ++, Java, PHP to teach.
.
Languages like Python are taught in the course.
Available in computational science textbooks.
Gonna start teaching in middle school class Early in primary school.
(But the school will choose between Python or Scratch)
.
At the highest grade kid level
I will teach programming. I will use it as Scratch.
When a foreigner says that she teaches code to young children in early age.
Scratch will be mostly used to focus on logic and thought process.
.
It's a character control command block in a game.
... With focus on practicing logic, practicing thought processes.
... But if you ask me whether I can use Scratch to create an easy game, I will say I can do it.
.
For Scratch, it says it's a programming language too.
But it's a kind called visual programming language (VPL)
In visual language, use image to create a program.
.
In real work, if anyone has ever lived in the industry.
I would know LabView which uses PLC hardware control.
It's using this image language. Programming. Control.
Don't have to write Text with hand written words. It affects the program.
.
It shouldn't be strange that a foreigner says that they use Scratch to teach.
To pave the skills, practice the basic logic.
Well, it's just a code.
Become a selling word or marketing word when you use to promote it.
.
---
News Source
https://www.youtube.com/watch?v=SHXRHbdpcnY
Summary by Thai Thai Thai programmerTranslated