Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++
C++
  1. โปรแกรม C++ แก้สมการเชิงเส้นตัวแปรเดียว (Linear Equation in One Variable)

    สมการเชิงเส้นตัวแปรเดียวมีรูปแบบทั่วไป: aX + b = cX + d เป้าหมายคือหาค่า X เมื่อทราบค่า a, b, c, d วิธีแก้สมการ aX + b = cX + d aX - cX = d - b (a - c)X = d - b X = (d - b) / (a - c) (ถ้า a ≠ c) กรณีพิเศษ a = c และ b = d: สมการเป็นจริงทุก X → มีคำตอบอันมาก (infinite solutions) a = c แต่ b ≠ d

  2. โปรแกรม C++ คูณจำนวนเชิงซ้อน (Complex Number Multiplication)

    จำนวนเชิงซ้อน (Complex Number) มีรูปแบบ a + bi โดยที่: a = ส่วนจริง (Real part) b = ส่วนจินตภาพ (Imaginary part) i = หน่วยจินตภาพ โดยที่ i² = -1 ตัวอย่างจำนวนเชิงซ้อน 2 + 3i 5 + 9i 4 + 2i สูตรการคูณ (a + bi) × (c + di) = (ac - bd) + (ad + bc)i โค้ดโปรแกรม #include <iostream> using namespa

  3. โปรแกรม C++ หาค่าตัวหารร่วมมาก (GCD) ด้วย Euclid Algorithm แบบ Recursive

    GCD (Greatest Common Divisor) หรือ ตัวหารร่วมมาก คือ จำนวนเต็มบวกที่มากที่สุดที่หารทั้งสองจำนวนลงตัว ตัวอย่าง 63 = 7 × 3 × 3 21 = 7 × 3 GCD(63, 21) = 21 หลักการ Euclidean Algorithm แบบ Recursive หลักการคือ: GCD(a, b) = GCD(b, a % b) ทำซ้ำจน b = 0 แล้วคำตอบคือ a โค้ดโปรแกรม #include <iostream&g

  4. โปรแกรม C++ ใช้ Fisher-Yates Algorithm สลับลำดับอาร์เรย์ (Array Shuffling)

    Fisher-Yates Algorithm (หรือที่รู้จักในชื่อ Knuth Shuffle) เป็นอัลกอริทึมที่สร้างการจัดเรียงแบบสุ่ม (random permutation) ของสมาชิกในอาร์เรย์ ทุกการจัดเรียงที่เป็นไปได้มีโอกาสเท่ากัน (unbiased) โค้ดโปรแกรม Fisher-Yates Shuffle #include <iostream> #include <cstdlib> #include <ctime>

  5. โปรแกรม C++ ทำ LU Decomposition (การย่อย LU) ของเมทริกซ์

    LU Decomposition คือการย่อยเมทริกซ์ให้เป็นผลคูณของเมทริกซ์สามเหลี่ยมล่าง (Lower Triangular Matrix - L) และเมทริกซ์สามเหลี่ยมบน (Upper Triangular Matrix - U) โดยที่ L มีค่า 0 ทุกค่าที่อยู่เหนือแนวทแยง และ U มีค่า 0 ทุกค่าที่อยู่ใต้แนวทแยง ตัวอย่าง LU Decomposition Given matrix (A): 1 1 0 2 1 3 3 1 1

  6. โปรแกรม C++ แปลงเลขฐานสอง (Binary) เป็นฐานแปด (Octal) และกลับกัน

    ในระบบคอมพิวเตอร์ ตัวเลขฐานสอง (Binary) ใช้ฐาน 2 ส่วนตัวเลขฐานแปด (Octal) ใช้ฐาน 8 ทั้งสองระบบมีความสัมพันธ์ใกล้ชิดกัน เพราะ 23 = 8 ทำให้การแปลงระหว่างกันสะดวก ตารางเปรียบเทียบ Binary และ Octal เลขฐานสอง (Binary) เลขฐานแปด (Octal) 0101012 001117 1100131 1000020 โค้ดโปรแกรมแปลงสองทาง (Binar

  7. โปรแกรม C++ สำหรับแปลงเลขฐานแปด (Octal) เป็นเลขฐานสอง (Binary)

    ในระบบคอมพิวเตอร์ ตัวเลขฐานสอง (Binary) ถูกแสดงในระบบนิพจน์ฐานสอง ในขณะที่ตัวเลขฐานแปด (Octal) อยู่ในระบบนิพจน์ฐานแปด ตัวเลขฐานสองมีฐานเป็น 2 ส่วนตัวเลขฐานแปดมีฐานเป็น 8 ตัวอย่างการแปลงเลขฐานสองและฐานแปดที่ตรงกัน เลขฐานสอง (Binary) เลขฐานแปด (Octal) 0110115 001015 1011026 0101012 โค้ดโปรแก

  8. โปรแกรม C++ สำหรับการนำอาร์เรย์แบบขนาน (Parallel Array) ไปใช้งาน

    อาร์เรย์แบบขนาน (Parallel Array) คือโครงสร้างที่ประกอบด้วยหลายอาร์เรย์ อาร์เรย์แต่ละอันมีขนาดเท่ากัน และองค์ประกอบของอาร์เรย์แต่ละอันเชื่อมโยงกัน ทุกองค์ประกอบในอาร์เรย์แบบขนานแสดงถึงเอนทิตี (entity) เดียวกันตัวอย่างของอาร์เรย์แบบขนาน มีดังนี้:employee_name = { Harry, Sally, Mark, Frank, Judy } emp

  9. โปรแกรม C++ สำหรับการนำอาร์เรย์ความยาวแปรผัน (Variable Length Array) ไปใช้งาน

    อาร์เรย์ความยาวแปรผัน (Variable Length Arrays) สามารถมีขนาดตามที่ผู้ใช้ต้องการ กล่าวคือ สามารถมีขนาดที่เปลี่ยนแปลงได้โปรแกรม C++ สำหรับการนำอาร์เรย์ความยาวแปรผันไปใช้งาน มีดังนี้:ตัวอย่าง#include <iostream> #include <string> using namespace std; int main() { int *array, size;

  10. โปรแกรม C++ สำหรับการนำเวกเตอร์ (Vector) ไปใช้งาน

    เวกเตอร์ (Vector) คืออาร์เรย์แบบไดนามิกที่สามารถปรับขนาดได้ด้วยตนเองเมื่อมีการแทรกหรือลบองค์ประกอบ องค์ประกอบของเวกเตอร์จะถูกเก็บในหน่วยความจำที่ติดกัน และคอนเทนเนอร์จะจัดการหน่วยความจำโดยอัตโนมัติโปรแกรมที่สาธิตการใช้งานเวกเตอร์ มีดังนี้:ตัวอย่าง#include <iostream> #include <vector> #

  11. โปรแกรม C++ บวกระยะทางสองค่า (นิ้ว-ฟุต) โดยใช้โครงสร้าง (Structures)

    โครงสร้าง (Structure) คือการรวมกลุ่มข้อมูลที่มีชนิดข้อมูลต่างกันเข้าด้วยกัน มีประโยชน์มากในการสร้างโครงสร้างข้อมูลที่ซับซ้อนซึ่งประกอบด้วยระเบียนที่มีชนิดข้อมูลต่างกัน โครงสร้างจะถูกนิยามด้วยคีย์เวิร์ด structตัวอย่างโครงสร้างสำหรับระยะทางในรูปแบบฟุตและนิ้ว ดังนี้:struct DistanceFI { int feet;

  12. โปรแกรม C++ บวก Complex Numbers ด้วย Structure

    Complex Number: a + bi โดย a = Real Part, b = Imaginary Part, i = √(-1) โครงสร้าง Struct struct Complex { float real; float imag; }; ฟังก์ชันบวก Complex Complex addComplex(Complex n1, Complex n2) { Complex temp; temp.real = n1.real + n2.real; temp.imag = n1.imag + n2.imag;

  13. การใช้ rand() และ srand() ใน C++

    rand() สร้าง Pseudorandom Number srand() ตั้ง Seed ให้ Random Generator ตัวอย่าง: Seed คงที่ (ผลลัพธ์เดิมทุกครั้ง) #include <iostream> #include <cstdlib> int main() { srand(1); // Fixed Seed for (int i = 0; i < 5; i++) cout << rand() % 100 << ; retu

  14. โปรแกรม C++ บวกเลขด้วย Bitwise Operators

    บวกเลข 2 จำนวนโดยใช้ Bitwise Operators เท่านั้น (ไม่ใช้ +) อัลกอริธึม carry = a & b − หาบิตที่ทั้งคู่เป็น 1 (ต้อง Carry) a = a ^ b − บวกโดยไม่ Count Carry (XOR) b = carry << 1 − เลื่อน Carry ไปบิตถัดไป ทำซ้ำจน b == 0 (ไม่มี Carry เหลือ) โค้ดโปรแกรม #include <iostream> using names

  15. Substring ใน C++ (std::string::substr)

    Substring คือส่วนหนึ่งของ String ใช้ substr(pos, len) ของ std::string รูปแบบ string substr(size_t pos = 0, size_t len = npos) const; pos − ตำแหน่งเริ่มต้น (0-based) len − จำนวนตัวอักษร (Default: จนจบ String) ตัวอย่างโค้ด #include <iostream> #include <string> using namespace std; int

  16. ฟังก์ชัน strstr() ใน C++

    strstr() หา Substring แรกที่พบใน String หลัก ประกาศใน <string.h>/<cstring> ส่งคืน Pointer ไปยังตำแหน่งที่เจอ หรือ NULL หากไม่เจอ รูปแบบ char* strstr(const char* haystack, const char* needle); ตัวอย่างโค้ด #include <iostream> #include <cstring> using namespace std; int main

  17. Multiple Inheritance ใน C++

    Multiple Inheritance: คลาสลูกสืบทอดจากหลายคลาสแม่ (มากกว่า 1) ได้ Features จากทุก Base Classes ตัวอย่างโค้ด #include <iostream> using namespace std; class A { public: int a = 5; A() { cout << Constructor A\n; } }; class B { public: int b = 10; B() { cout << Const

  18. ฟังก์ชัน isspace() ใน C++

    isspace() ตรวจสอบว่าเป็น Whitespace Character หรือไม่ (Space, Tab, Newline, Vertical Tab, Form Feed, Carriage Return) ประกาศใน <ctype.h> ตัวอย่าง 1: นับ Space ใน String #include <iostream> #include <ctype.h> using namespace std; int main() { char str[] = Coding is fun; in

  19. Static Data Members ใน C++

    Static Data Members เป็นสมาชิกคลาสที่ประกาศด้วย static มีเพียง 1 ตัวต่อคลาส (Shared ทุก Object) เริ่มต้นเป็น 0 เมื่อสร้าง Object แรก รูปแบบ static data_type member_name; ตัวอย่างโค้ดสมบูรณ์ #include <iostream> #include <string> using namespace std; class Student { int rollNo;

Total 6007 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:21/301  20-คอมพิวเตอร์/Page Goto:1 15 16 17 18 19 20 21 22 23 24 25 26 27