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

Рекурсивная функция умножения целых чисел - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Проверка на существования файла http://www.cyberforum.ru/cpp-beginners/thread637196.html
Можно ли проверять файл на существование таким образом: ifstream file("file.txt"); if (file.is_open()) {} //Если файл существует и
C++ Получение зависимостей файлов В интернете нашёл информацию по PE файлам и инструкции по получению списков импорта и экспорта, но если честно запутался ужасно. Объясните пожалуйста на пальцах, как получить список файлов... http://www.cyberforum.ru/cpp-beginners/thread637180.html
C++ visual studio 2010 problems
Здравствуйте!!! Я вот тут решил попрограммировать на с++ и установил себе среду visual studio c++ 2010 express.....но проблема заключается в том когда я создаю обычное консольное приложение типа...
Указатель this C++
Всем привет. Как можно преобразовать указатель this в строку, для дальнейшего использования в функции MessageaBoxA()? Просто - напросто. я думаю, что если сделать преобразование типа (int)this и...
C++ Реализация условия http://www.cyberforum.ru/cpp-beginners/thread637151.html
Помогите реализовать такое условие: Пока не конец файла делать то
C++ Ошибка в коде C++ Надо присвоить все данные значения в result используя цикл в цикле у меня получается значение на много больше чем должно быть что не так? Вот сам код: #include "stdafx.h" #include <iostream>... подробнее

Показать сообщение отдельно
lom
15 / 15 / 5
Регистрация: 28.03.2012
Сообщений: 52
13.08.2012, 20:38
Цитата Сообщение от wep6ak Посмотреть сообщение
Нужно написать рекурсивную функцию умножения двух целых чисел.
Вот, что у меня получилось :
C++
1
2
3
4
5
6
7
int mul(int a, int b)
{
    if (b == 1)
        return a;
    else
        return a + mul(a, b - 1);
}
Но эта функция работает только для целых чисел.

Как сделать, чтоб использовался только один оператор if-else и не использовались оп-ции умножения или деления ?
А Вы пробовали изменять тип на вещественный, говорят, что помогает
C++
1
2
3
4
5
6
7
float mul(float a, float  b)
{
    if (b == 1)
        return a;
    else
        return a + mul(a, b - 1);
}
а нет, извините, не прав

Добавлено через 10 минут
по сути, первый и третий методы одинаковы, но третий еще и для отрицательных
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.