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

โปรแกรม C หาผลรวมสองจำนวนโดยไม่ใช้ Operator ใดๆ

บทนำ

ในส่วนนี้เราจะดูวิธีพิมพ์ผลรวมของสองจำนวนโดยไม่ใช้ operator ใดๆ ในโปรแกรม

ปัญหานี้ tricky เราใช้ minimum width field ของ printf() ตัวอย่างเช่น ต้องการเว้นวรรค x ช่องก่อน "Hello" ด้วย printf() เขียนได้ printf() รับ width และตัวอักษรที่จะพิมพ์ ในที่นี้ใช้ช่องว่าง

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

#include <stdio.h>
int main() {
    int x = 10;
    printf("%*cHello", x, ' ');
    return 0;
}

ผลลัพธ์

          Hello

นำฟังก์ชันนี้มาใช้หาผลรวม เรารับ x และ y เป็น input ผลรวม x + y สร้างช่องว่าง x ช่องตามด้วย y ช่อง แล้วเอาค่าที่ printf() คืนมา (ความยาวสตริง) เป็นผลลัพธ์

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

#include <stdio.h>

int add(int x, int y) {
    int len;
    len = printf("%*c%*c", x, ' ', y, ' ');
    return len;
}

int main() {
    int x = 10, y = 20;
    int res = add(x, y);
    printf("\nThe result is: %d", res);
    return 0;
}

ผลลัพธ์

The result is: 30