Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C
การเขียนโปรแกรม C
  1. พิมพ์ตัวเลข N บรรทัดเพื่อให้ทุกคู่ในตัวเลขมี GCD K

    จีซีดี GCD ย่อมาจาก Greatest Common Divisor ของจำนวนเต็มตั้งแต่สองตัวขึ้นไป ยกเว้น 0 เช่น การหาตัวหารร่วมมากของ 48 และ 180 48 =2 × 2 × 2 × 2 × 3 180 =2 × 2 × 3 × 3 × 5 ตัวหารร่วมมากที่สุด =2 × 2 × 3 =12. ในปัญหาที่กำหนด ควรพิมพ์ N บรรทัดด้วยองค์ประกอบที่มี GCD ตามที่ระบุ Input : N=2 GCD=2 Ou

  2. พิมพ์ตัวประกอบร่วม kth ของตัวเลขสองตัว

    ด้วยตัวเลขสองตัว x และ y ผลลัพธ์ควรมีตัวประกอบร่วมที่ k Input: x=9 y=18 k=1 Output : k common factor = 2 Factors of 9 : 1, 3, 9 Factors of 18 : 1, 2, 3, 6, 9, 18 Greatest Common Factor : 9 อัลกอริทึม START Step 1 -: take input as x and y lets say 3 and 21 and k as 1 Step 2 -: declare start variables

  3. พิมพ์เงื่อนไขของ Newman-Conway Sequence

    Newman-Conway Sequence ใช้สำหรับสร้างลำดับจำนวนเต็มดังต่อไปนี้ 1 1 2 2 3 4 4 4 5 6 7 7 8 8 8 8 9 10 11 12 สูตรที่ใช้สร้างลำดับนิวแมน-คอนเวย์สำหรับตัวเลข n คือ − P(n) = P(P(n - 1)) + P(n - P(n - 1)) Where, p(1) =p(2) =1 อัลกอริทึม START Step 1 -> Input variable n(e.g. 20) Step 2 -> start varia

  4. พิมพ์องค์ประกอบที่เล็กที่สุดจากอาร์เรย์ที่กำหนดในลำดับเดิม

    ด้วยอาร์เรย์ของสมมุติว่าองค์ประกอบ k โปรแกรมจะต้องค้นหาองค์ประกอบที่เล็กที่สุด n รายการตามลำดับที่ปรากฏ Input : arr[] = {1, 2, 4, 3, 6, 7, 8}, k=3 Ouput : 1, 2, 3 Input k is 3 it means 3 shortest elements among the set needs to be displayed in original order like 1 than 2 and than 3 อัลกอริทึม START

  5. พิมพ์รูปแบบที่กำหนดซ้ำ

    ที่นี่ ตามรูปแบบปัญหาที่กำหนดจะต้องแสดงโดยใช้วิธีการแบบเรียกซ้ำ ฟังก์ชันแบบเรียกซ้ำ คือตัวที่เรียกตัวเองว่า n จำนวนครั้ง สามารถมีฟังก์ชันแบบเรียกซ้ำจำนวน n ในโปรแกรมได้ ปัญหาในการทำงานกับฟังก์ชันแบบเรียกซ้ำคือความซับซ้อน อัลกอริทึม START Step 1 -> function int printpattern(int n)    If

  6. คำถามความน่าจะเป็นเมทริกซ์ ?

    ที่นี่เราจะเห็นปัญหาความน่าจะเป็นของเมทริกซ์หนึ่งปัญหา เรามีเมทริกซ์สี่เหลี่ยมหนึ่งอัน เราสามารถย้ายสี่ทิศทางจากเซลล์ปัจจุบันด้วยความน่าจะเป็นเท่ากัน ทิศทั้งสี่นี้ คือ ซ้าย ขวา ขึ้นและลง เราต้องคำนวณความน่าจะเป็นหลังจาก N เคลื่อนจากตำแหน่ง M[i, j] ที่นี่เราจะทำสิ่งที่เกี่ยวข้องกับ DFS เราจะสำรวจแบบ

  7. ปริศนาห่วงซ้อน?

    ในส่วนนี้เราจะเห็นปัญหาหนึ่งที่น่าสนใจ เราจะเห็นรหัสสองส่วน ทั้งสองมีลูปซ้อนกันสองลูป เราต้องระบุว่าอันไหนจะวิ่งเร็วกว่ากัน (เราจะถือว่าคอมไพเลอร์ไม่ได้ปรับโค้ดให้เหมาะสม) ส่วนที่ 1 for(int i = 0; i < 10; i++){    for(int j = 0; j<100; j++){       //code    }

  8. ปัญหาการคัดแยกแพนเค้ก?

    ที่นี่เราจะเห็นปัญหาการจัดเรียงอื่นที่ชื่อว่า Pancake sort ปัญหานี้ง่าย เรามีหนึ่งอาร์เรย์ เราต้องจัดเรียงสิ่งนี้ แต่เราสามารถใช้การดำเนินการเดียวที่เรียกว่า rev(arr, i) สิ่งนี้จะย้อนกลับองค์ประกอบของ arr จาก 0 เป็นตำแหน่ง ith แนวคิดนี้เหมือนกับการเรียงลำดับการเลือก เราวางองค์ประกอบสูงสุดซ้ำ ๆ ที่ส

  9. ปริศนาเกี่ยวกับนิพจน์ C/C++ R-Value?

    ที่นี่เราจะเห็นปริศนาตัวหนึ่ง สมมติว่ามีโปรแกรมที่ให้มาตามข้างล่างนี้ต้องบอกว่าผลงานออกมาเป็นอย่างไร เพราะอะไร ตัวอย่าง #include<iostream> using namespace std; int main() {    int x = 0xab;    ~x;    cout << hex << x; } แล้วผลงานจะเป็นอย่างไร? ~x กำลั

  10. หนูอยู่ในเขาวงกตที่มีหลายขั้นตอนหรือกระโดดได้รับอนุญาต?

    หนูในปัญหาเขาวงกตเป็นหนึ่งในปัญหาที่รู้จักกันดีของการย้อนรอย ที่นี่เราจะเห็นปัญหาที่มีการเปลี่ยนแปลงเล็กน้อย สมมติว่าได้รับเขาวงกต NxN M หนึ่งอัน จุดเริ่มต้นอยู่ที่มุมซ้ายบน M[0, 0] และปลายทางคือมุมล่างขวา M[N – 1, N - 1] หนูตัวหนึ่งวางอยู่ที่จุดเริ่มต้น เป้าหมายของเราคือหาเส้นทางจากจุดเริ่มต้นไปยัง

  11. เซลล์ที่ใช้งานและไม่ใช้งานหลังจาก k วัน?

    3 ค่าจริงหรือ 1 ค่าบ่งชี้ว่าสถานะใช้งานอยู่ และ 0 หรือเท็จระบุว่าไม่ได้ใช้งาน ยังให้เลข k อีกตัวหนึ่ง เราต้องหาเซลล์ที่ใช้งานหรือไม่ทำงานหลังจาก k วัน หลังจากสถานะประจำวันของ ith เซลล์จะเปิดใช้งานหากเซลล์ด้านซ้ายและด้านขวาไม่เหมือนกัน หากเหมือนกัน เซลล์จะไม่ทำงาน เซลล์ด้านซ้ายสุดและด้านขวาสุดไม่มีเซ

  12. เพิ่ม 1 ให้กับตัวเลขที่แสดงเป็นรายการที่เชื่อมโยงหรือไม่

    ที่นี่เราจะดูวิธีการเพิ่ม 1 ด้วยหมายเลขที่เก็บไว้ในรายการที่เชื่อมโยง ในรายการที่เชื่อมโยง ตัวเลขแต่ละหลักของตัวเลขจะถูกเก็บไว้ หากตัวเลขคือ 512 จะถูกเก็บไว้ดังนี้ - 512 = (5)-->(1)-->(2)-->NULL เรากำลังจัดเตรียมรายการลงในฟังก์ชันการเพิ่มขึ้น ที่จะกลับรายการอื่นหลังจากเพิ่ม 1 กับมัน ที่นี่

  13. เพิ่ม 1 ให้กับตัวเลขที่แสดงเป็นอาร์เรย์ (Recursive Approach)?

    ในส่วนนี้เราจะเห็นปัญหาหนึ่งที่น่าสนใจ สมมติว่ามีหนึ่งหมายเลข เราต้องเพิ่มจำนวนนี้ขึ้น 1 นี่เป็นงานที่ง่ายมาก แต่ที่นี่เราจะวางตัวเลขเป็นอาร์เรย์ แต่ละหลักของตัวเลขนั้นจะถูกวางเป็นองค์ประกอบของอาร์เรย์ หากตัวเลขคือ 512 จะถูกเก็บไว้เป็น {5, 1, 2} และเราต้องเพิ่มจำนวนโดยใช้วิธีการแบบเรียกซ้ำ ให้เราดูอ

  14. เพิ่มองค์ประกอบของอาร์เรย์ที่กำหนดด้วยข้อจำกัดที่กำหนดหรือไม่

    ที่นี่เราจะเห็นปัญหาหนึ่ง เราจะเพิ่มองค์ประกอบอาร์เรย์สองรายการและเก็บไว้ในอาร์เรย์อื่น แต่เราจะปฏิบัติตามข้อจำกัดบางประการ ข้อจำกัดเหล่านี้มีลักษณะดังต่อไปนี้ - ควรระบุการเพิ่มเติมจากดัชนีที่ 0 ของทั้งสองอาร์เรย์ แบ่งผลรวมหากเป็นตัวเลขมากกว่าหนึ่งหลัก และวางแต่ละหลักในตำแหน่งที่เกี่ยวข้อง ตัวเลขที

  15. โปรแกรม C/C++ ตรวจสอบว่าสามารถหารด้วย 3 ตัวเลขโดยใช้ตัวเลขทั้งหมดในอาร์เรย์ได้หรือไม่?

    ในส่วนนี้เราจะดูว่าอาร์เรย์หนึ่งมีตัวเลข n หรือไม่ เราต้องตรวจสอบว่าเราสร้างตัวเลขโดยใช้องค์ประกอบทั้งหมดของตัวเลขเหล่านี้หรือไม่ ตัวเลขนั้นจะหารด้วย 3 ลงตัวหรือไม่ หากองค์ประกอบอาร์เรย์คือ {15, 24, 23, 13} เราก็สามารถสร้างจำนวนเต็มได้ เช่น 15242313 ซึ่งจะหารด้วย 3 ลงตัว อัลกอริทึม checkDivThree(arr

  16. โปรแกรม C / C ++ เพื่อนับเลขศูนย์ต่อท้ายในแฟกทอเรียลของตัวเลขหรือไม่

    ที่นี่เราจะมาดูวิธีการคำนวณจำนวน 0 ต่อท้ายสำหรับผลลัพธ์ของแฟคทอเรียลของจำนวนใดๆ ดังนั้นถ้า n =5 แล้ว 5! =120 มี 0 ต่อท้ายเพียงตัวเดียว สำหรับ 20! มันจะเป็นศูนย์ 4 ตัวเท่ากับ 20! =2432902008176640000 วิธีที่ง่ายที่สุดคือการคำนวณแฟคทอเรียลและนับ 0 แต่วิธีนี้ใช้ไม่ได้ผลสำหรับค่า n จำนวนมาก ดังนั้นเราจ

  17. เพิ่มตัวเลขสองตัวที่แสดงโดยรายการที่เชื่อมโยงหรือไม่

    ที่นี่เราจะมาดูวิธีการเพิ่มตัวเลขสองตัวที่จัดเก็บไว้ในรายการที่เชื่อมโยงแยกกัน ในรายการที่เชื่อมโยง ตัวเลขแต่ละหลักของตัวเลขจะถูกเก็บไว้ หากตัวเลขคือ 512 จะถูกเก็บไว้ดังนี้ - 512 = (5)-->(1)-->(2)-->NULL เราจัดเตรียมรายการประเภทนี้ไว้สองรายการ หน้าที่ของเราคือเพิ่มและรับผลลัพธ์หลังจากคำนวณ

  18. หมายเลขพาลินโดรมทั้งหมดในรายการ?

    เราจะเห็นปัญหาง่ายๆ ประการหนึ่ง เราต้องหาตัวเลขทั้งหมดที่มีลักษณะเป็นพาลินโดรมในรายการที่กำหนด วิธีการนั้นง่าย นำแต่ละหมายเลขจากรายการและตรวจสอบว่าเป็น palindrome หรือไม่ แล้วพิมพ์หมายเลข อัลกอริทึม getAllPalindrome(arr, n) Begin    for each element e in arr, do       if e i

  19. เลขฐานสองที่เป็นไปได้ทั้งหมดที่มีความยาว n ที่มีผลรวมเท่ากันในทั้งสองครึ่ง?

    ที่นี่เราจะเห็นเลขฐานสองที่เป็นไปได้ทั้งหมดของ n บิต (ผู้ใช้กำหนด n) โดยที่ผลรวมของแต่ละครึ่งจะเท่ากัน ตัวอย่างเช่น หากตัวเลขคือ 10001 ที่นี่ 10 และ 01 เหมือนกันเพราะผลรวมเท่ากัน และอยู่ในส่วนต่างๆ ที่ต่างกัน เราจะสร้างตัวเลขประเภทนั้นทั้งหมด อัลกอริทึม genAllBinEqualSumHalf(n, ซ้าย, ขวา, ค่าต่าง)

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