Форум программистов, компьютерный форум CyberForum.ru

Выполнить умножение с помощью повторного сложения - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
maven
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 93
23.12.2012, 14:34     Выполнить умножение с помощью повторного сложения #1
Реализуйте функцию square О, не используя оператор умножения; иначе говоря,
выполните умножение х*х с помощью повторного сложения (начиная с перемен-
ной, равной нулю, и х раз добавляя к ней число х). Затем выполните версию первой
программы, используя функцию square ().



Задачу решил так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int sq(int x){
    int n = 0;
    for(int i = 0; i <= x;){
        n = i + x;
        n = i;
}
    return n;
}
#include "std_lib_facilities.h"
int main(){
    setlocale(LC_ALL,"Rus");
    cout << sq(7);
    return 0;
}


Должно появиться 49 а консоль пустая.
Помагите
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.12.2012, 14:34     Выполнить умножение с помощью повторного сложения
Посмотрите здесь:

C++ Подмена операции сложения на умножение. Си!!!
Как выполнить распараллеливание с помощью OpenMP C++
Числа по основанию 10 и 16. Выполнить операцию сложения C++
Выполнить сортировку массива с помощью стандартной функции быстрой сортировки qsort C++
C++ Написать функции сложения, умножения и вычитания квадратных матриц, и вычислить с их помощью выражение
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 538
23.12.2012, 14:38     Выполнить умножение с помощью повторного сложения #2
Цитата Сообщение от maven Посмотреть сообщение
C++
1
for(int i = 0; i <= x;)
будет выполняться бесконечно.

C++
1
for(int i = 0; i <= x; ++i)
maven
1 / 1 / 0
Регистрация: 22.11.2012
Сообщений: 93
23.12.2012, 15:22  [ТС]     Выполнить умножение с помощью повторного сложения #3
Цитата Сообщение от Afflicted Посмотреть сообщение
будет выполняться бесконечно.

C++
1
for(int i = 0; i <= x; ++i)
Все равно не помагло

Добавлено через 2 минуты
Цитата Сообщение от maven Посмотреть сообщение
Все равно не помагло
А стоп все теперь есть но вот решать подругому нада

Добавлено через 39 минут
Цитата Сообщение от Afflicted Посмотреть сообщение
будет выполняться бесконечно.

C++
1
for(int i = 0; i <= x; ++i)
Не поможите полностью задачу решить?
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 538
23.12.2012, 16:06     Выполнить умножение с помощью повторного сложения #4
C++
1
2
3
4
5
6
int sq(int x)
{
    int n = 0;
    for(int i = 0; i <= x; i++)
        n += x;
}
Flysolo
0 / 0 / 0
Регистрация: 13.03.2015
Сообщений: 22
18.07.2015, 20:13     Выполнить умножение с помощью повторного сложения #5
Я не понимаю что автор требует в этой задаче. Напишите пожалуйста первую часть задачи без использованияфункции square. Заранее бблагодарен
Flysolo
0 / 0 / 0
Регистрация: 13.03.2015
Сообщений: 22
19.07.2015, 14:53     Выполнить умножение с помощью повторного сложения #6
Выполнить умножение с помощью повторного сложения
Объясните пожалуйста почему фигурная скобка подчеркивается красным.
Kurles
154 / 119 / 29
Регистрация: 30.05.2015
Сообщений: 373
19.07.2015, 14:56     Выполнить умножение с помощью повторного сложения #7
Цитата Сообщение от Flysolo Посмотреть сообщение
Объясните пожалуйста почему фигурная скобка подчеркивается красным.
функцию square за пределы main() вынеси.
zss
Модератор
Эксперт С++
 Аватар для zss
5949 / 5554 / 1785
Регистрация: 18.12.2011
Сообщений: 14,193
Завершенные тесты: 1
19.07.2015, 14:57     Выполнить умножение с помощью повторного сложения #8
Функция не может быть локальной, ее надо писать вне функции main()
Flysolo
0 / 0 / 0
Регистрация: 13.03.2015
Сообщений: 22
19.07.2015, 15:10     Выполнить умножение с помощью повторного сложения #9
Вот засада, элементарные азы не понял, перечитал раз 5. далее
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main();
int square(int x)
{
    
 
    {
    int n = 0;
    for(int i = 0; i <= x; i++)
        n+=x;
    }
 
    
 
    cout << square(7);
    return 0;
    
}
1>LINK : fatal error LNK1561: точка входа должна быть определена

Добавлено через 9 минут
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "std_lib_facilities.h"
 
 
    
 
int square(int x)
 
    
 
    {
    int n = 0;
    for(int i = 0; i <= x; i++)
        n+=x;
    return x;
    }
 
 
 int main()
{
    cout << square(7);
    return 0;
    keep_window_open();
}
Flysolo
0 / 0 / 0
Регистрация: 13.03.2015
Сообщений: 22
19.07.2015, 15:12     Выполнить умножение с помощью повторного сложения #10
даже в таких грустных ситуациях я не позволяю себе отчаиваться) насколько бы плохо у меня это не получалось)
IgRiK000
2 / 2 / 0
Регистрация: 07.07.2015
Сообщений: 27
19.07.2015, 15:37     Выполнить умножение с помощью повторного сложения #11
Вот как-то так

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int square(int n)
{
    int k = 0;
    for (int i = 0; i < n; ++i)
        k = k + n;
    return k;
}
 
int main()
{
    setlocale(0, "");
    cout << square(11);
    _getch();
    return 0;
}
Flysolo
0 / 0 / 0
Регистрация: 13.03.2015
Сообщений: 22
19.07.2015, 15:56     Выполнить умножение с помощью повторного сложения #12
Спасибо большое! А скажите что мне нужно включить в заголовке чтобы заработала _getch()?
IgRiK000
2 / 2 / 0
Регистрация: 07.07.2015
Сообщений: 27
19.07.2015, 16:34     Выполнить умножение с помощью повторного сложения #13
пожалуйста

#include <conio.h>

можно использовать и просто system("pause");
одно и тоже.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2015, 17:13     Выполнить умножение с помощью повторного сложения
Еще ссылки по теме:

C++ Найти квадрат числа с помощью сложения
Выполнить объединение двух строк с помощью перегрузки оператора (*) C++
Какая цифра в строке встречается чаще всего (выполнить с помощью указателей) C++

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

Или воспользуйтесь поиском по форуму:
MicM
 Аватар для MicM
820 / 487 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
19.07.2015, 17:13     Выполнить умножение с помощью повторного сложения #14
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
 
int square (int x)
{
  int k = 0;
  for (int i = 0; i < x; k += x, i++);
  return k;
}
 
int main()
{
  std::cout << square (30) << "\n";
}
Yandex
Объявления
19.07.2015, 17:13     Выполнить умножение с помощью повторного сложения
Ответ Создать тему
Опции темы

Текущее время: 21:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru