Форум программистов, компьютерный форум, киберфорум
Наши страницы

Рекурсия: сложение, вычитание, деление и вычисление остатка от деления двух целых чисел - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перевод символов в код таблицы ascii http://www.cyberforum.ru/cpp-beginners/thread253488.html
помогите перевести элементы символьного массива в код таблицы ascii
C++ реализация класса "симметричная матрица целых чисел"... Условие вообще такое: Определите пользовательский тип “симметричная матрица целых чисел” для обработки квадратных матриц, в которых A == A для всех допустимых элементов матрицы. Хранить в объекте... http://www.cyberforum.ru/cpp-beginners/thread253484.html
решить уравнение в зависимости от введенного Х (if else) C++
требуется помощь в решении задачи. дано три уравнения и в зависимости от введенного Х нужно решить определенное уравнение. но программа работает не так как надо, все время выводит результат из...
C++ Структурированные файлы
Как сделать,чтобы во всех полях которые у меня объявлены как int в самих функциях при вводе букв она у меня обратно возвращала в меню и программа не подвисала,и я мог заново один из пунктов меню....
C++ Динамика http://www.cyberforum.ru/cpp-beginners/thread253474.html
При вводе студента появляется одновременно фамилия и число. Как сделать так чтобы поэтапно появлялось ? #include <iostream> #include <conio.h> #include <string.h> #include <stdio.h> #include...
C++ Строка Есть набор слов и любая текстовая строка. Нужно взять из текстовой строки слова, входящие в данный набор и вывести на экран, применяя strtok, strcmp. На 15 и 20 строчке как сделать? #include... подробнее

Показать сообщение отдельно
asics
Freelance
Эксперт С++
2848 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
07.03.2011, 20:51
Можно так
C++
1
2
3
4
5
6
7
8
int multiply(int a, int b){
    if(b<0)
      return -multiply(a, -b);
    else if (!b)
      return 0;
    else
      return a + multiply(a, b-1);
}
Добавлено через 1 минуту
Или
так
C++
1
2
3
4
5
int mult(int a, int b)
{
    if(b < 0) return -mult(a, -b);    
    return  (b & 1 ? a : 0) + (b ? mult(a <<= 1, b >>= 1) : 0);
}
Признаюсь чесно, способ не мой
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru