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

Знаковое умножение - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Переписать файл и удалить однобуквенные слова и пробелы http://www.cyberforum.ru/cpp-beginners/thread1065684.html
Дан текстовый файл F. Переписать текст в другой файл G. Удалив все однобуквенные слова и лишние пробелы. Я написал программу, но можно проще.Не знаю как переделать. Помогите сделать проще.И нарисуйте блок-схему. #include <iostream> #include <fstream> #include <iomanip> #include <stdlib.h>
C++ копирование элементов массива Необходимо скопировать двузначные числа в массиве ("eeg4gae85g41afe788") вот таким образом : "eeg4gae8585g4141afe788". У меня только получилось написать программу для нахождения таких чисел, а вот с копированием запутался. Подскажите пожалуйста как можно сделать это. #include <iostream> #include <conio.h> #include <cstdlib> using namespace std; int main() { http://www.cyberforum.ru/cpp-beginners/thread1065661.html
Подскажите пожалуйста что не так C++
Вот выражение: e2/3+e3/4+e4/5+...+e9/10 Вроде компилится, консоль запускается, но выражение не высчитывает. Вот код: #include <iostream.h> #include <conio.h> #include <math.h> int main () { int n;
C++ Составить формулу длины отрезка в двухмерном пространстве
#include <stdlib.h> #include <stdio.h> #include <math.h> #include <Windows.h> #include <iostream> bool rectPS(int x1,int y1,int x2,int y2,int *P,int *S) { bool res=true;//переменная возвращающая истину или ложь int a=(sqrt((x1-x1)+(y2-y1))); int b=(sqrt((x2-x1)+(y1-y1)));
C++ работа с typedef http://www.cyberforum.ru/cpp-beginners/thread1065623.html
Объясните пожалуйста в чем смысл конструкции: typedef struct _XMFLOAT2 { FLOAT x; FLOAT y; } XMFLOAT2; typedef создает "синоним" типа данных ведь ? т.е. например:
C++ Работа с функциями, возвращающими значения. Передача параметров по значению Помогите переделать задачу по ссылкам Даны длины a, b и c сторон некоторого треугольника. Найти медианы треугольника, сторонами которого являются медианы исходного треугольника. (Замечание: длина медианы проведенной к стороне a, равна 0.5*sqrt(2*(b^2)+2*(c^2)-(a^2)) .) #include <iostream> #include <math.h> #include <conio.h> using namespace std; double mediana (double x, double y,... подробнее

Показать сообщение отдельно
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927

Знаковое умножение - C++

08.01.2014, 14:19. Просмотров 226. Ответов 2
Метки (Все метки)

Доброго времени суток. Есть задание: имплементировать функцию умножения двух знаковых интов и записать результат в long *(то есть по сути int64), разрешается использовать только логические операции и только unsigned int.
Я придумал такой алгоритм: сначала избавляемся от знакового бита и приравниваем его нулю( конечно, где-то запоминаем сразу конечный знак), потом проходим побитово по второму инту(лонгу), если встречаем 1, то складываем первый лонг к нашему результату с правильным сдвигом, учитывая, что результат - это два лонга. Остался вопроса - как при складывании не потерять бит, который может выпасть при складывании.
Кто может помочь "допонять" алгоритм?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru