Рубрики

Найти сумму двух чисел без использования какого-либо оператора

Напишите программу для поиска суммы натуральных чисел без использования оператора. Разрешено только использование printf (). Никакая другая библиотечная функция не может быть использована.

Решение
Это вопрос с подвохом. Мы можем использовать printf (), чтобы найти сумму двух чисел, так как printf () возвращает количество напечатанных символов. Поле ширины в printf () можно использовать для нахождения суммы двух чисел. Мы можем использовать '*', который указывает минимальную ширину вывода. Например, в выражении «printf («% * d », width, num);» вместо «*» подставляется указанная «ширина», а «num» печатается в пределах указанной минимальной ширины. Если количество цифр в 'num' меньше указанного 'width', вывод дополняется пробелами. Если количество цифр больше, вывод печатается как есть (не обрезается). В следующей программе add () возвращает сумму x и y. Он печатает 2 пробела в пределах ширины, указанной с помощью x и y. Таким образом, общее количество напечатанных символов равно сумме х и у. Вот почему add () возвращает x + y.

#include<stdio.h>

  

int add(int x, int y)

{

    return printf("%*c%*c", x, ' ', y, ' ');

}

  
// Код драйвера

int main()

{

    printf("Sum = %d", add(3, 4));

    return 0;

}

Выход:

       Sum = 7

В результате получается семь пробелов, за которыми следует «Sum = 7». Мы можем избежать пробелов, используя возврат каретки. Спасибо krazyCoder и Sandeep за предложение. Следующая программа печатает вывод без пробелов.

#include<stdio.h>

  

int add(int x, int y)

{

    return printf("%*c%*c", x, '\r', y, '\r');

}

  
// Код драйвера

int main()

{

    printf("Sum = %d", add(3, 4));

    return 0;

}

Выход:

      Sum = 7

Другой метод:

С

#include<stdio.h>

  

int main()

{

int a=10,b=5,sum;

while(b>0){

a++;
b--;
}

printf("Sum=%d",a);

return 0;

}

Джава

// Java-код

class GfG {

  

public static void main(String[] args) 

int a=10,b=5,sum; 

while(b>0){ 

a++; 
b--; 

System.out.println(a); 
}

Python 3

# Python 3 Code

  

if __name__ == '__main__':

      

    a = 10; b = 5; sum;

    while(b > 0):

      

        a = a + 1 ;

        b = b - 1;

      

    print("Sum =", a);

  
# Этот код добавлен
# от Akanksha Rai

C #

// код C #

using System;

  

public class GFG{

    static public void Main (){

            int a=10,b=5; 

        while(b>0){ 

                a++; 

                b--; 

            

        Console.Write(a); 

    

// Этот код предоставлен Tushil.

PHP

<?php
// PHP код

$a = 10;

$b = 5;

  

while($b > 0)

{

    $a++;

    $b--;

}

  

echo "Sum = ", $a;

  
// Этот код предоставлен Динешем.
?>

Выход:

sum = 15

Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.

Рекомендуемые посты:

Найти сумму двух чисел без использования какого-либо оператора

0.00 (0%) 0 votes