Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python
Python
  1. โปรแกรมหาค่าเฉลี่ยความสูงของค่าที่ไม่ซ้ำใน Python

    สมมติว่าเรามีชุดข้อมูลความสูงที่อาจมีค่าซ้ำ เราต้องหาค่าเฉลี่ยของค่าที่ไม่ซ้ำกัน (Distinct Values) ตัวอย่าง heights = [96,25,83,96,33,83,24,25] ค่าที่ไม่ซ้ำ = [96,25,83,33,24] ผลรวม = 261 ค่าเฉลี่ย = 261/5 = 52.2 ขั้นตอนการแก้ปัญหา h_set := set(heights) เพื่อลบค่าซ้ำ คืนค่า sum(h_set) / len(h_set

  2. โปรแกรมหาตัวหารที่ดีที่สุดของตัวเลขใน Python

    สมมติว่าเรามีตัวเลข n เราต้องหาตัวหารของ n ที่ ดีที่สุด ตามเงื่อนไข: ระหว่างสองตัวเลข p และ q ตัวที่ผลรวมหลัก (Digit Sum) มากกว่าจะ ดีกว่า หากผลรวมหลักเท่ากัน ตัวเลขที่น้อยกว่าจะดีกว่า ตัวอย่าง n = 180 ตัวหารคือ [1,2,3,4,5,6,9,10,12,15,18,20,30,36,45,60,90,180] ผลรวมหลักมากที่สุดคือ 9 (จาก 9, 18, 3

  3. โปรแกรมสร้างลิสต์ n สมาชิกจาก 1 ถึง n ใน Python

    สมมติว่าเรามีตัวเลข n เราต้องสร้างรายการขนาด n โดยสมาชิกคือ 1, 2, ..., n ตัวอย่าง n = 5 ผลลัพธ์ = [1, 2, 3, 4, 5] ขั้นตอนการแก้ปัญหา ใช้ List Comprehension สร้างลิสต์ด้วย i สำหรับ i จาก 1 ถึง n ใช้ range(1, n+1) ตัวอย่างโค้ด def solve(n): return [i for i in range(1, n+1)] n = 5 print(solve

  4. โปรแกรมกลับลำดับลิสต์ด้วย List Slicing ใน Python

    สมมติว่าเรามีรายการ n สมาชิกชื่อ nums เราต้องกลับลำดับรายการนี้ด้วยการ Slicing ตัวอย่าง nums = [5,7,6,4,6,9,3,6,2] ผลลัพธ์ = [2, 6, 3, 9, 6, 4, 6, 7, 5] ขั้นตอนการแก้ปัญหา List slicing รับสูงสุด 3 พารามิเตอร์คั่นด้วย colon: start, end, step เริ่มจาก 0 จึงไม่ส่งพารามิเตอร์แรก จบที่ n ไม่ส่งพารามิเ

  5. โปรแกรมหาผลรวมของสมาชิกคี่ในลิสต์ใน Python

    สมมติว่าเรามีรายการ n สมาชิกชื่อ nums เราต้องหาผลรวมของสมาชิกที่เป็นเลขคี่ทั้งหมด ตัวอย่าง nums = [5,7,6,4,6,9,3,6,2] ผลลัพธ์ = 24 เพราะ 5+7+9+3 = 24 ขั้นตอนการแก้ปัญหา ใช้ List Comprehension l := รายการของ e สำหรับทุก e ใน nums ที่ e เป็นคี่ คืนค่า sum(l) ตัวอย่างโค้ด def solve(nums): retu

  6. โปรแกรมหาความยาวลิสต์โดยไม่ใช้ฟังก์ชัน len() ใน Python

    สมมติว่าเรามีลิสต์ nums เราต้องหาความยาวของลิสต์นี้ แต่ห้ามใช้ฟังก์ชัน len(), size() หรือ length() ใดๆ ตัวอย่าง nums = [5,7,6,4,6,9,3,6,2] ผลลัพธ์ = 9 ขั้นตอนการแก้ปัญหา ใช้ map() และ list operations x := รายการที่มีสมาชิกทั้งหมดจาก nums แปลงสมาชิกทั้งหมดใน x เป็น 1 หาผลรวมของ x ด้วย sum() ตัวอ

  7. โปรแกรมอัปเดตสมาชิกในลิสต์ด้วยค่าสัมบูรณ์ใน Python

    สมมติว่าเรามีรายการตัวเลข nums ที่มีทั้งบวกและลบ เราต้องอัปเดตรายการนี้ให้เก็บเฉพาะค่าสัมบูรณ์ (Absolute Value) ของแต่ละสมาชิก ตัวอย่างเช่น nums = [5,-7,-6,4,6,-9,3,-6,-2] ผลลัพธ์ = [5, 7, 6, 4, 6, 9, 3, 6, 2] ขั้นตอนการแก้ปัญหา ใช้ map() และ list operations กำหนด anonymous function l ที่รับ x คื

  8. โปรแกรมหาคะแนนและชื่อผู้ชนะเกม Minion Game ใน Python

    สมมติว่ามีผู้เล่นสองคนคือ Amal และ Bimal กฎเกม: ทั้งคู่มีสตริง s เหมือนกัน ทั้งคู่ต้องสร้าง substring จากตัวอักษรของ s Bimal สร้างคำที่เริ่มต้นด้วยพยัญชนะ (Consonants) Amal สร้างคำที่เริ่มต้นด้วยสระ (Vowels) เกมจบเมื่อทั้งคู่สร้าง substring ทุกแบบที่เป็นไปได้ เกณฑ์การให้คะแนน: ผู้เล่นได้ 1 คะแนนส

  9. โปรแกรมแบ่งสตริงเป็น k ส่วนที่ไม่ซ้ำกันใน Python

    สมมติว่าเรามีสตริง s และค่า k โดย k เป็น因數ของความยาว s (สมมติความยาวคือ n) เราสามารถแบ่ง s เป็น n/k สตริงย่อย t_i ขนาด k แล้วจาก t_i สร้าง u_i โดยที่: ตัวอักษรใน u_i เป็น subsequence ของ t_i ลบตัวอักษรซ้ำออก ทำให้ความถี่ของแต่ละตัวอักษรใน u_i เป็น 1 MP, QM, MR ขั้นตอนการแก้ปัญหา i := 0, ret :=

  10. โปรแกรมหาความต่างระหว่างสอง Timestamp ใน Python

    สมมติว่าเรามีเวลาสองค่าในรูปแบบ Day dd Mon yyyy hh:mm:ss +/-xxxx โดย Day คือชื่อวัน 3 ตัวอักษรตัวแรกพิมพ์ใหญ่ Mon คือชื่อเดือน 3 ตัวอักษร และ + หรือ - xxxx แทนโซนเวลา เช่น +0530 หมายถึงมากกว่า GMT 5 ชั่วโมง 30 นาที เราต้องหาความต่างสัมบูรณ์ระหว่างสอง timestamp ในหน่วยวินาที ใน Python เราใช้ไลบรารี

  11. โปรแกรมหามุมระหว่างจุดกึ่งกลางและฐานของสามเหลี่ยมมุมฉากใน Python

    สมมติว่าเรามีสองด้านของสามเหลี่ยมมุมฉาก คือ AB และ BC จุดกึ่งกลางของด้านตรงข้ามมุมฉาก AC คือ M เราต้องหามุมระหว่าง M และ BC ตัวอย่างเช่น หาก ab = 6, bc = 4 ผลลัพธ์จะเป็น 56.3099... องศา เพราะ arctan(ab/bc) = 0.9828 เรเดียน แปลงเป็นองศาประมาณ 56.31 ขั้นตอนการแก้ปัญหา ans := arctan(ab/bc) คืนค่า an

  12. โปรแกรมคำนวณ e^x อย่างมีประสิทธิภาพใน Python

    สมมติว่าเรามีตัวเลข x เราต้องหาค่า e^x อย่างมีประสิทธิภาพ โดยไม่ใช้ฟังก์ชันจากไลบรารี สูตรของ e^x คือ: $$e^{x} = 1 + x + \frac{x^2}{2!} + \frac{x^3}{3!} + \dots$$ ตัวอย่างเช่น หาก x = 5 ผลลัพธ์จะเป็นประมาณ 148.4131 ขั้นตอนการแก้ปัญหา fact := 1 (เก็บแฟกทอเรียล) res := 1 (ผลลัพธ์สะสม) n := 20 (จำน

  13. โปรแกรมหาความสุขจากการตรวจสอบสมาชิกในเซตใน Python

    สมมติว่าเรามีอาเรย์ nums ที่มี n จำนวนเต็มต่างกัน เรายังมีเซต A และ B ที่ไม่ซ้อนทับกัน (Disjoint Sets) เรามีพารามิเตอร์ความสุข (Happiness) เริ่มต้นที่ 0 เราไปผ่านแต่ละจำนวน i ใน nums ถ้า i อยู่ใน A เพิ่มความสุข 1 ถ้าอยู่ใน B ลดลง 1 เราต้องหาค่าความสุขสุดท้าย ตัวอย่างเช่น หาก nums = [1,2,5,8,6,3] A

  14. โปรแกรมตรวจสอบว่าโดเมนและเรนจ์เป็นฟังก์ชันหรือไม่ใน Python

    y เป็นฟังก์ชันหรือไม่ โดยพิจารณาว่าทุกสมาชิกใน x และ y เป็นบวก ตัวอย่างเช่น หาก x = [1,3,2,6,5] y = [1,9,4,36,25] ผลลัพธ์จะเป็น True เพราะสำหรับแต่ละ x ค่า y ที่สอดคล้องคือกำลังสองของ x จึงเป็นฟังก์ชัน ขั้นตอนการแก้ปัญหา mp := dictionary ใหม่ for i ในช่วง 0 ถึง len(x): a := x[i], b := y[i] ถ้า a

  15. โปรแกรมหาเส้นรอบรูปของรูปหลายเหลี่ยมใน Python

    สมมติว่าเรามีรายการจุดที่เรียงลำดับแล้ว แทนจุดปลายของรูปหลายเหลี่ยมแบบง่าย บนระนาบ 2 มิติ เราต้องหาเส้นรอบรูปของรูปหลายเหลี่ยมนั้น ตัวอย่างเช่น หาก points = [(0, 0), (0,5), (3, 5), (3,0)] ผลลัพธ์จะเป็น 16.0 เพราะมีสองด้านยาว 3 และสองด้านยาว 5 ดังนั้น 2*5 + 2*3 = 16 ขั้นตอนการแก้ปัญหา กำหนดฟังก์ชั

  16. โปรแกรมนับคำที่ไม่ซ้ำและความถี่ของแต่ละคำใน Python

    สมมติว่าเรามีรายการคำ คำเหล่านี้อาจเกิดขึ้นหลายครั้ง เราต้องแสดงความถี่ของคำเหล่านี้และนับว่ามีคำที่ไม่ซ้ำกันกี่คำ ตัวอย่างเช่น หาก words = [Book, Sound, Language, Computer, Book, Language] ผลลัพธ์จะเป็น (4, 2 1 2 1) เพราะมีคำที่ไม่ซ้ำ 4 คำ คำที่ 1 และ 3 เกิดขึ้น 2 ครั้ง ขั้นตอนการแก้ปัญหา d := O

  17. โปรแกรมนับคู่ของสมาชิกที่ติดกันในสตริงตัวเลขใน Python

    สมมติว่าเรามีสตริงตัวเลข s ที่มีหลายหลัก หลักอาจซ้ำกันได้ เราต้องคืนค่าคู่บางคู่ (digit, count) แทนว่าตัวเลขไหนเกิดขึ้นติดกันกี่ครั้งใน s ในการแก้ปัญหานี้ เราสามารถใช้ฟังก์ชัน groupby() จากไลบรารี itertools ฟังก์ชันนี้จะคืนค่า iterator ที่แต่ละรายการมีค่าตัวอักษรอยู่ตำแหน่งแรก และอ็อบเจ็กต์ groupby

  18. โปรแกรมหาพื้นที่ของรูปหลายเหลี่ยมใน Python

    สมมติว่าเรามีรายการจุดที่เรียงลำดับแล้ว แทนจุดปลายของรูปหลายเหลี่ยมแบบง่าย (Simple Polygon) บนระนาบ 2 มิติ เราต้องหาพื้นที่ของรูปหลายเหลี่ยมนั้น ตัวอย่างเช่น หาก points = [(0, 0), (0,5), (3, 5), (3,0)] ผลลัพธ์จะเป็น 15.0 ขั้นตอนการแก้ปัญหา (ใช้สูตร Shoelace Formula) กำหนดฟังก์ชัน getInfo(x1, y1,

  19. โปรแกรมหาตัวอักษรที่พบมากที่สุด 3 อันดับจากชื่อบริษัทใน Python

    สมมติว่าเรามีชื่อบริษัทเป็นสตริง เราต้องหาตัวอักษรที่พบบ่อยที่สุด 3 ตัว และแสดงตามกฎ: เลือกตัวอักษรที่มีความถี่มากที่สุด 3 อันดับ จัดเรียงตามความถี่มากไปน้อย ถ้าความถี่เท่ากัน เรียงตามลำดับตัวอักษร ตัวอย่างเช่น หาก s = TUTORIALSPOINT ผลลัพธ์จะเป็น [[3, T], [2, I], [2, O]] ขั้นตอนการแก้ปัญหา x :

  20. โปรแกรมหาตัวหารร่วมมาก (GCD) แบบเรียกซ้ำใน Python

    สมมติว่าเรามีตัวเลขสองตัว a และ b เราต้องหาตัวหารร่วมมาก (GCD) ของทั้งสองตัวแบบเรียกซ้ำ (Recursive) โดยใช้อัลกอริทึมยุคลิด (Euclidean Algorithm) ตัวอย่างเช่น หาก a = 25, b = 45 ผลลัพธ์จะเป็น 5 ขั้นตอนการแก้ปัญหา กำหนดฟังก์ชัน gcd(a, b): ถ้า a == b: คืนค่า a ถ้า a < b: คืนค่า gcd(b, a) มิฉะนั้น:

Total 9001 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:374/451  20-คอมพิวเตอร์/Page Goto:1 368 369 370 371 372 373 374 375 376 377 378 379 380