เฉลยข้อสอบ A1-001

โดย รศ. ดร.พันธุ์ปิติ เปี่ยมสง่า

📘 โจทย์: สวัสดี (A1-001)

A1 = ข้อง่าย   |   001 = เลขที่อ้างอิงของโจทย์

ภาพโจทย์ A1-001

🧠 สรุปเนื้อหาโจทย์:

  • รับ ชื่อ และ นามสกุล จากผู้ใช้
  • แสดงผล 2 บรรทัด:
    • บรรทัดที่ 1: Hello ชื่อ นามสกุล
    • บรรทัดที่ 2: ชื่อแฝง → เอา 2 ตัวแรกของชื่อ + 2 ตัวแรกของนามสกุล

📌 ตัวอย่าง:

 

Input:
Katy
Perry

Output:
Hello Katy Perry
KaPe


🐍 แนวทางการเขียนโปรแกรมภาษา Python

  • อ่านโจทย์ให้เข้าใจ
  • เขียนโค้ดในไฟล์ .py เช่น a1-001.py
  • ใช้ input() รับข้อมูล 2 บรรทัด
  • ใช้ print() แสดงผลตามรูปแบบที่โจทย์กำหนด
  • อัปโหลดไฟล์ .py ไปยังระบบ TOI National Grader
  • ระบบจะรันทดสอบหลาย test case ให้อัตโนมัติ
  • โปรแกรมต้องแสดงผลให้ "ตรงเป๊ะ" กับรูปแบบที่โจทย์กำหนด

💻 ตัวอย่างโค้ด Python

 

print(f"Hello {first_name} {last_name}")
print(first_name[:2] + last_name[:2])

⚠️ ข้อควรระวัง ⚠️

  • ห้ามพิมพ์ “Input:” หรือ “Output:”
  • ใช้เฉพาะ input() และ print() เท่านั้น
  • ระวัง ช่องว่าง ตัวพิมพ์ใหญ่/เล็ก และบรรทัดว่าง
  • คำตอบต้อง เหมือนตัวอย่างทุกตัวอักษร เช่น Hello ไม่ใช่ hello

 

⚠️ หากชื่อหรือนามสกุลมีน้อยกว่า 2 ตัวอักษร โปรแกรมอาจ error → แต่โจทย์เบื้องต้นจะไม่หลอกเราแน่นอน 

 

 


💻 แนวทางการเขียนโปรแกรมภาษา C

  • อ่านโจทย์ให้เข้าใจ
  • เขียนโค้ดในไฟล์ .c เช่น a1-001.c
  • ใช้ scanf(); รับข้อมูล 2 บรรทัด
  • ใช้ printf(); แสดงผลตามรูปแบบที่โจทย์กำหนด
  • อัปโหลดไฟล์ .c ไปยังระบบ TOI National Grader
  • ระบบจะรันทดสอบหลาย test case ให้อัตโนมัติ
  • โปรแกรมต้องแสดงผลให้ "ตรงเป๊ะ" กับรูปแบบที่โจทย์กำหนด

💻 ตัวอย่างโค้ด C

 

prinft("Hello %s %sn”,  firstname, lastname);
printf(“%.2s%.2s”, firstname, lastname)

⚠️ ข้อควรระวัง ⚠️

  • ห้ามพิมพ์ข้อความอื่นนอกเหนือจากที่โจทย์กำหนด เช่น  “Please input name:” หรือ “Output:”
  • ใช้เฉพาะ scanf(); และ printf(); เท่านั้น
  • ระวัง ช่องว่าง ตัวพิมพ์ใหญ่/เล็ก และบรรทัดว่าง
  • คำตอบต้อง เหมือนตัวอย่างทุกตัวอักษร เช่น Hello ไม่ใช่ hello

 


🖥️ แนวทางการเขียนโปรแกรมภาษา C++

  • อ่านโจทย์ให้เข้าใจ
  • เขียนโค้ดในไฟล์ .cpp เช่น a1-001.cpp
  • ใช้ cin รับข้อมูล 2 บรรทัดเช่น cin >> firstName >> lastName;
  • ใช้ count แสดงผลตามรูปแบบที่โจทย์กำหนดเช่น cout << “Hello” << “ “ << firstName << “ “  << lastName << endl;
  • อัปโหลดไฟล์ .c ไปยังระบบ TOI National Grader
  • ระบบจะรันทดสอบหลาย test case ให้อัตโนมัติ
  • โปรแกรมต้องแสดงผลให้ "ตรงเป๊ะ" กับรูปแบบที่โจทย์กำหนด

💻 ตัวอย่างโค้ด CPP

 

cout << “Hello” << “ “ << firstName << “ “  << lastName << endl;
cout << firstName.substr(0,2) << lastName.substr(0,2) << endl;

⚠️ ข้อควรระวัง ⚠️

  • ห้ามพิมพ์ข้อความอื่นนอกเหนือจากที่โจทย์กำหนด เช่น  “Please input name:” หรือ “Output:”
  • ระวัง ช่องว่าง ตัวพิมพ์ใหญ่/เล็ก และบรรทัดว่าง
  • คำตอบต้อง เหมือนตัวอย่างทุกตัวอักษร เช่น Hello ไม่ใช่ hello

 


📤 แนวทางการอัปโหลด

📥 วิธีดาวน์โหลดโจทย์:

  1. คลิกเมนู Statement ทางซ้าย
  2. คลิกปุ่ม Download task statement ทางด้านขวามือ

📥 วิธีการ Upload โปรแกรมเพื่อตรวจสอบความถูกต้อง

  1. คลิกที่เมนู Submission ด้านซ้ายมือ
  2. คลิกปุ่ม choose file เพื่อเลือกไฟล์โปรแกรมนามสกุล .c หรือ .cpp หรือ .py
  3. คลิกปุ่ม Submit เพื่อส่งโปรแกรม

💡 ใครติดขัดสามารถแจ้งทีมงาน ม.บูรพา ได้เลยครับ
ขอให้สนุกกับการฝึกทำโจทย์ ฝึกบ่อย ๆ เดี๋ยวก็เก่งเอง 💪

#TOIZero #Python #C #C++ #ฝึกเขียนโปรแกรม #สายโอลิมปิกก็มา