Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.11.2020, 18:45   #1
Randy4k
Пользователь
 
Регистрация: 26.11.2019
Сообщений: 20
По умолчанию Помогите с программой. Исправьте ошибки пожалуйста. С++

Пользователем указываются цели без знаковые числа a и b.Вычислить произведение этих чисел, используя только операторы побитового сдвига и сложения.

Код:
#include <iostream>
#include <clocale>
using namespace std;
int main()
{
	cout << "Enter number";
	int a,b,f,n,m;
	cin >> a;
	cin >> b;
	for (int m=n,f=1; f; f<<=1, ++n)
		if (b&f)
		m+=a<<n;
		cout << "Result=" <<m,a*b; 
		
	return 0;
}
Randy4k вне форума Ответить с цитированием
Старый 28.11.2020, 19:50   #2
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,546
По умолчанию

Если бы мне когда-нибудь пришлось писать на С++ , это у меня выглядело бы так:

Код:
int main()
{
	cout << "Enter number";
	unsigned int a,b,sum,tmp,mask;
	cin >> a;
	cin >> b;
        for (sum=0,tmp=a,mask=b; mask>0; mask>>=1, tmp<<=1)
		if (mask & 1)
		     sum += tmp;
        cout << "Result=" <<sum,a*b;
	return 0;
}
Возможно, mask && 1 - сишные гуру поправят. Или компилятор.

Последний раз редактировалось digitalis; 28.11.2020 в 20:19.
digitalis вне форума Ответить с цитированием
Старый 28.11.2020, 22:29   #3
Randy4k
Пользователь
 
Регистрация: 26.11.2019
Сообщений: 20
По умолчанию

Спасибо большое
Randy4k вне форума Ответить с цитированием
Старый 28.11.2020, 22:52   #4
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,546
По умолчанию

Попробовал? Работает?
Потому что у меня С++ нет, только вот так, "на пальцах".
digitalis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачи по C++. Подскажите пожалуйста ошибки(их может быть много) и исправьте меня если что, спасибо заранее) Princeofsecret Общие вопросы C/C++ 11 20.11.2018 16:14
Помогите пожалуйста с программой. Боря1234567 Паскаль, Turbo Pascal, PascalABC.NET 0 13.06.2015 23:51
Помогите с программой, пожалуйста!!! InTime Софт 1 07.12.2014 19:11
Помогите с прогой (исправьте ошибки) k1r1ch Паскаль, Turbo Pascal, PascalABC.NET 7 18.10.2009 09:29
Си++. Исправьте пожалуйста ошибки megavolt91 Помощь студентам 3 29.05.2009 16:02