Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

โปรแกรม C++ ค้นหาการบวกและการลบโดยใช้การเรียกฟังก์ชันตามที่อยู่


สมมติว่าเรามีตัวเลขสองตัว a และ b เราจะต้องกำหนดฟังก์ชันที่สามารถคำนวณ (a + b) และ (a - b) ทั้งสองอย่าง แต่การใช้ฟังก์ชันใน C++ เราสามารถคืนค่าได้ไม่เกินหนึ่งค่า ในการค้นหามากกว่าหนึ่งเอาต์พุต เราสามารถใช้พารามิเตอร์เอาต์พุตในอาร์กิวเมนต์ของฟังก์ชันโดยใช้พอยน์เตอร์ และเรียกใช้ฟังก์ชันนั้นโดยใช้แอดเดรสของตัวแปรเหล่านั้น ในปัญหานี้เราจะอัปเดต a ด้วย a+b และ b ด้วย a-b เมื่อเราเรียกใช้ฟังก์ชัน เราจะต้องส่งที่อยู่ของตัวแปรสองตัวนี้

ดังนั้น หากอินพุตเป็น a =15, b =18 เอาต์พุตจะเป็น a + b =33 และ a - b =-3

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • กำหนดฟังก์ชั่น Solve() ซึ่งจะใช้ที่อยู่ของ a และ b

  • temp :=ผลรวมของค่าของตัวแปรที่กำหนดให้ address

  • b :=ความแตกต่างของค่าของตัวแปรที่ระบุที่อยู่

  • a =อุณหภูมิ

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

#include <iostream>
using namespace std;
int solve(int *a, int *b){
    int temp = *a + *b;
    *b = *a - *b;
    *a = temp;
}
int main(){
    int a = 15, b = 18;
    solve(&a, &b);
    cout << "a + b = " << a << " and a - b = " << b;
}

อินพุต

15, 18

ผลลัพธ์

a + b = 33 and a - b = -3