Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Morozilka
2 / 2 / 0
Регистрация: 17.03.2010
Сообщений: 21
#1

Написать рекурсивную функцию которая принимает два аргумента и перемножает их между собой, но без оператора умножения

31.03.2010, 14:51. Просмотров 919. Ответов 4
Метки нет (Все метки)

Добрый день, помогите пожалуйста с написанием рекурсивной функции или хотябы с обычным цикличиским оператаром в мейне, не могу просто понять как делать задачу.
Вообщем задание: Написать рекурсивную функцию которая принимает два аргумента и перемножает их между собой, но без оператора умножения.(т.е просто плбюсовать 1ое число столько раз сколько будит стоять во 2ом аргументе, например 5*3=5+5+5).
Я понимаю как это сделать на бумаге, а как в коде рзложить не знаю...
помогите пожалуйста хотябы написать код без рекурсии, там думаю уже сам пойму. Заранее спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2010, 14:51
Ответы с готовыми решениями:

Написать функцию, которая принимает в качестве аргумента целое число по ссылке, и увеличивает его на единицу
Dev C++

Написать функцию, которая принимает два числа и возвращает
Решите пожалуйста!!!!!!!!!!! 4 ) число, которое получается, если...

Написать функцию, которая принимает два числа и возвращает
Режить все !!!Буду благодарин!!Заранее спасибо!!

написать рекурсивную функцию, которая взводит число в степень путем многократного умножения числа на самое себя.
Помогите написать программу , которая запрашивает два числа (1-ое число, 2...

Написать функцию, которая принимает два параметра типа unsignet short int
Здравствуйте. Начал изучать С++ и столкнулся с таким заданием. Не могу...

4
neske
1527 / 894 / 192
Регистрация: 26.03.2010
Сообщений: 3,074
31.03.2010, 15:38 #2
Комментарии там вроде бы не требовались, но если будет непонятно, объясню

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 // с помощью рекурсии.
#include <iostream>
using namespace std;
 
int rezult (int, int);
 
int main()
{
    setlocale( LC_ALL,"Russian" );
    int firstNum, secondNum; 
    
    cout << "Введите два числа: ";
    cin >> firstNum >> secondNum;
    cout << "Результат: " << rezult(firstNum, secondNum) << endl;
    
    system ("pause");
    return 0;
}
 
int rezult (int first, int second)
{
    if ((first==0) || (second==0)) return 0;
    if (second==1) return first;
    else return rezult(first, second-1)+first;
}



C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 // с помощью цикла.
#include <iostream>
using namespace std;
 
int main()
{
    setlocale( LC_ALL,"Russian" );
    int firstNum, secondNum; 
    int rezult=0; 
 
    cout << "Введите два числа: ";
    cin >> firstNum >> secondNum;
 
    for (secondNum; secondNum>0; secondNum--)
    rezult+=firstNum;
 
    cout << "Результат: " << rezult << endl;
    
    system ("pause");
    return 0;
}
или
C++
1
2
3
4
5
while (secondNum!=0)
    {
        secondNum--;
        rezult+=firstNum;
    }
1
Morozilka
2 / 2 / 0
Регистрация: 17.03.2010
Сообщений: 21
31.03.2010, 21:51  [ТС] #3
Большое спасибо!!!)

rezult+=firstNum;

вот вопрос ток по этому возник что это нам даёт "+=" ?
понял что результат + 1ое число, но почему если стереть "=" и оставить просто "rezult+firstNum;" код уже не работает, каков принцып работы +=?
0
Psixodelik
40 / 39 / 5
Регистрация: 27.11.2009
Сообщений: 100
31.03.2010, 22:05 #4
Цитата Сообщение от Morozilka Посмотреть сообщение
Большое спасибо!!!)

rezult+=firstNum;

вот вопрос ток по этому возник что это нам даёт "+=" ?
понял что результат + 1ое число, но почему если стереть "=" и оставить просто "rezult+firstNum;" код уже не работает, каков принцып работы +=?
rezult+=firstNum это будет result = result + firstNum

если ты уберёшь =, то result + firstNum не будет ничему присваиваться
1
Morozilka
2 / 2 / 0
Регистрация: 17.03.2010
Сообщений: 21
31.03.2010, 22:07  [ТС] #5
Psixodelik спасибо!) но я уже получил ответ от neske
0
31.03.2010, 22:07
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.03.2010, 22:07

Написать функцию, которая принимает два параметра типа unsigned long long и выводит их на экран
Я самое наглое , ленивое и бессовестное чудовище)) но тем не менее Напишите...

Создайте логическую функцию, которая принимает в качестве аргумента число и проверяет, является ли оно автоморфным
5. Число называется автоморфным, если оно равно последним цифрам своего...

Напишите функцию, которая принимает 3 аргумента целого типа(часы, минуты и секунды) и возвращает количество секунд
5. Напишите функцию, которая принимает 3 аргумента целого типа(часы, минуты и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru