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

จะรวมสองจำนวนเต็มโดยไม่ใช้ตัวดำเนินการเลขคณิตใน C / C ++ ได้อย่างไร


ต่อไปนี้คือตัวอย่างการบวกตัวเลขสองตัวโดยไม่ต้องใช้ตัวดำเนินการทางคณิตศาสตร์

ตัวอย่าง

#include <iostream>
#include <cmath>
using namespace std;
int add(int val1, int val2) {
   while(val2 != 0) {
      int c = val1 & val2;
      val1 = val1 ^ val2;
      val2 = c << 1;
   }
   return val1;
}
int main() {
   cout <<"The sum of two numbers : "<< add(28, 8);
   return 0;
}

ผลลัพธ์

The sum of two numbers : 36

ในโปรแกรมข้างต้น ฟังก์ชัน add() ถูกกำหนดด้วยอาร์กิวเมนต์ประเภท int สองรายการ การเพิ่มตัวเลขสองตัวนั้นถูกเข้ารหัสใน add()

int add(int val1, int val2) {
   while(val2 != 0) {
      int c = val1 & val2;
      val1 = val1 ^ val2;
      val2 = c << 1;
   }
   return val1;
}

ในฟังก์ชัน main() ผลลัพธ์จะถูกพิมพ์โดยการเรียกฟังก์ชัน add()

cout <<"The sum of two numbers : "<< add(28, 8);