Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

โปรแกรมบวกจำนวนเชิงซ้อนสองจำนวนในภาษา C

ได้รับจำนวนเชิงซ้อนสองจำนวนในรูป a1 + ib1 และ a2 + ib2 งานคือบวกจำนวนเชิงซ้อนทั้งสองนี้

จำนวนเชิงซ้อนคือจำนวนที่สามารถแสดงในรูป "a+ib" โดยที่ "a" และ "b" เป็นจำนวนจริง และ i เป็นจำนวนจินตนาการซึ่งเป็นคำตอบของสมการ x2 = -1 เนื่องจากไม่มีจำนวนจริงใดที่ทำให้สมการนี้เป็นจริง จึงเรียกว่าจำนวนจินตนาการ

ตัวอย่าง

อินพุต

a1 = 3, b1 = 8  a2 = 5, b2 = 2

เอาต์พุต

จำนวนเชิงซ้อน 1: 3 + i8
จำนวนเชิงซ้อน 2: 5 + i2
ผลรวมของจำนวนเชิงซ้อน: 8 + i10

คำอธิบาย

(3+i8) + (5+i2) = (3+5) + i(8+2) = 8 + i10

อินพุต

a1 = 5, b1 = 3  a2 = 2, b2 = 2

เอาต์พุต

จำนวนเชิงซ้อน 1: 5 + i3
จำนวนเชิงซ้อน 2: 2 + i2
ผลรวมของจำนวนเชิงซ้อน: 7 + i5

วิธีการแก้ปัญหา

  • ประกาศ struct สำหรับเก็บส่วนจริงและส่วนจินตนาการ
  • รับอินพุตและบวกส่วนจริงและส่วนจินตนาการของจำนวนเชิงซ้อนทั้งหมด

อัลกอริทึม

Start
ประกาศ struct complexnum มีสมาชิก
    1. real
    2. img
In function complexnum sumcomplex(complexnum a, complexnum b)
    Step 1: ประกาศ struct complexnum c
    Step 2: กำหนด c.real = a.real + b.real
    Step 3: กำหนด c.img = a.img + b.img
    Step 4: Return c
In function int main()
    Step 1: ประกาศและกำหนด complexnum a = {1, 2} และ b = {4, 5}
    Step 2: ประกาศและกำหนด complexnum c = sumcomplex(a, b)
    Step 3: พิมพ์จำนวนเชิงซ้อนตัวแรก
    Step 4: พิมพ์จำนวนเชิงซ้อนตัวที่สอง
    Step 5: พิมพ์ผลรวมทั้งสองใน c.real, c.img
Stop

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

#include <stdio.h>

// โครงสร้างเก็บค่าจริงและจินตนาการของจำนวนเชิงซ้อน
struct complexnum {
    int real, img;
};

complexnum sumcomplex(complexnum a, complexnum b) {
    struct complexnum c;
    // บวกจำนวนเชิงซ้อนสองจำนวน
    c.real = a.real + b.real;
    c.img = a.img + b.img;
    return c;
}

int main() {
    struct complexnum a = {1, 2};
    struct complexnum b = {4, 5};
    struct complexnum c = sumcomplex(a, b);
    printf("จำนวนเชิงซ้อน 1: %d + i%d\n", a.real, a.img);
    printf("จำนวนเชิงซ้อน 2: %d + i%d\n", b.real, b.img);
    printf("ผลรวมของจำนวนเชิงซ้อน: %d + i%d\n", c.real, c.img);
    return 0;
}

ผลลัพธ์

หากรันโค้ดข้างต้นจะได้ผลลัพธ์ดังนี้ —

จำนวนเชิงซ้อน 1: 1 + i2
จำนวนเชิงซ้อน 2: 4 + i5
ผลรวมของจำนวนเชิงซ้อน: 5 + i7