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

Кнут - деление длинных чисел - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ C++ http://www.cyberforum.ru/cpp-beginners/thread562233.html
Где закачать C++ для 64-разрядную Windows 7
C++ Индексы седловых точек Помогите пожалуйста! Буду премного благодарен за решение этой задачи на языке C++: Элемент матрицы назовём седловой точкой, если он является наименьшим в своей строке и одновременно наибольшим в своём столбце или, наоборот, является наибольшим в своей строке и наименьшим в своём столбце. Для заданной целой матрицы размером nxm напечатать индексы всех её седловых точек. Ах да, если вас не... http://www.cyberforum.ru/cpp-beginners/thread562209.html
Вращение прямоугольника вокруг оси C++
Программа должна вращать прямоугольник с заданными параметрами длины и ширины, вокруг оси. Общий алгоритм приведен ниже. Вопрос: как определить точки 2 и 4 исходя из уже имеющихся (1, 3). #include <graphics.h> #include <cmath> void DrawRectangle(int x0, int y0, int a, int b, double angle, int color) {
Красно-черные деревья C++
Помогите, пожалуйста. Запускаю программу и выводится только дерево, не понимаю, как с ним работать, почему нельзя проделать операцию добавления элемента? #include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdarg.h> #include <conio.h> #include <iostream.h> typedef int T; // Тип хранимых данных inline int compLT(T a, T b) { return(a < b); }
C++ Трудность с компиляцией классов http://www.cyberforum.ru/cpp-beginners/thread562162.html
Здраствуйте. У меня возникла проблема при компиляции программы из классов с++. Программа заключается в написании системы управления лифтом. Классы полностью описывают все функции и связанны друг с другом, но при компиляции бьёт ошибку. Подскажите пожалуйста в чем ошибка или как написать проект обьединив эти классы.
C++ таблица умножения от 1 до 100 Здравствуйте у меня возник такой вопрос. Вот я создал маленький программ который создает таблицу умножения с одного до ста. Но когда я запускаю программ мне показывает только последнюю часть таблицы. Как сделать чтобы было видно вся таблица? подробнее

Показать сообщение отдельно
Shandr_71
13 / 13 / 1
Регистрация: 05.12.2011
Сообщений: 84
01.05.2012, 16:03     Кнут - деление длинных чисел
Нужна помощь в переводе алгоритма деления длинных чисел из книги:
Д. Э. Кнут - Искусство Программирование Том 2 Получисленные Алгоритмы.
Особенно интересен третий шаг, я никак не могу понять, что там имеется в виду.

Мой код 4го шага:
C++
1
2
3
4
5
6
7
int q((static_cast<int>(num[j+n])*255+static_cast<int>(num[j+n-1]))/v[n-1]);
int r((static_cast<int>(num[j+n])*255+static_cast<int>(num[j+n-1]))%v[n-1]);
while(q!=255 || (q*static_cast<int>(v[n-2])<=255*r+static_cast<int>(num[j+n-2])))
    {
        q--;
        r+=static_cast<int>(v[n-1]);
    }
num соответствует переменной u из книги, v - v, n и m те же.
Числа предствлены в виде std::vector<unsigned char>, младший разряд соответствует нулевому элементу.

Добавлено через 6 часов 3 минуты
Вопрос все еще актуален.

Добавлено через 16 часов 53 минуты
Проблема решена:
C++
1
2
3
4
5
6
7
8
9
10
int q((static_cast<int>(u[j+n])*255+static_cast<int>(u[j+n-1]))/v[n-1]);
    int r((static_cast<int>(u[j+n])*255+static_cast<int>(u[j+n-1]))%v[n-1]);
 
    if(q==ds_int || (q*static_cast<int>(v[n-2])>ds_int*r+static_cast<int>(u[j+n-2])))
    {
        q--;
        r+=static_cast<int>(v[n-1]);
        if(q*static_cast<int>(v[n-2])>ds_int*r+static_cast<int>(u[j+n-2]) && r<ds_int)
            q--;
    }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru