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

Смоделировать операцию умножения двух целых чисел длиной до 30 десятичных цифр каждое - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Игра "Борьба за жизнь". Цель игры – убрать с доски все шашки противника http://www.cyberforum.ru/cpp-beginners/thread1100092.html
Здравствуйте! Помогите пожалуйста написать программу на с++. Два игрока имеют по n шашек и играют в поле m m клеток, делая ходы по очереди. Возможные ходы: 1) переставить свою шашку на соседние свободные клетки 2) переставить свою шашку через поле, если оно занято другой шашкой. Если шашка с трёх сторон окружена шашками противника, она снимается с поля. Если пустая клетка с 3-х сторон...
C++ Разработка рекурсивных алгоритмов для вычисления функции Сразу к сути!!! Я должен сделать рекурсию функции y=x+3-e^-x. Что то y2 не выводит, ошибок нету! Вот код программы: //--------------------------------------------------------------------------- #pragma hdrstop #include <tchar.h> //--------------------------------------------------------------------------- #pragma argsused #include <iostream.h> #include <conio.h> #include <math.h> http://www.cyberforum.ru/cpp-beginners/thread1100087.html
C++ Написать программу, которая считывает из текстового файла три предложения и выводит их в обратном порядке
Помогите пожалуйста нужно Написать программу,которая считывает из текстового файла три предложения и выводит их в обратном порядке.
Заполнение map объектами класса C++
Здравствуйте! Нашел пример заполнения map таким образом: map<string, int> M; M = 1; Но при заполнении map аналогичным образом объектами пользовательского типа данных программа аварийно завершает свою работу: Queue obj ("Sokolov", "Nikita"); map <unsigned short, Queue> m; m = obj;
C++ shared_ptr валится http://www.cyberforum.ru/cpp-beginners/thread1100053.html
#include <iostream> #include <string> using namespace std; #include "boost/shared_ptr.hpp" class One { public: One()
C++ Решение СЛАУ методом квадратного корня Здравствуйте!Помогите мне,пожалуйста. Суть задания написана в теме.Есть блок-схема для данного кода,но он для pasсal,поэтому добавляю к размеру массивов/матриц еденицу. Массив d-диагональная матрица.Массив a-исходный массив.Массив b-массив свободных членов.Массив y-просто массив нужный для подсчётов.Проблема в том,что как написать код я не знаю,ибо нужно высчитывать закономерности,чтобы самому... подробнее

Показать сообщение отдельно
Elizaveta19
0 / 0 / 0
Регистрация: 18.02.2014
Сообщений: 6
19.02.2014, 00:08     Смоделировать операцию умножения двух целых чисел длиной до 30 десятичных цифр каждое
Смоделировать операцию умножения двух целых чисел длиной до 30 десятичных цифр каждое. Результат выдать в форме (zn)0.m E N, где длина мантиссы m - до 30 значащих цифр, а величина порядка N - до 5 цифр.

Пыталась решить задачу, но не получается. Ниже привожу кусок кода, в котором перемножаются 2 числа, а результат заносится в новый объект. 1) считает не правильно 2) результат все равно не сохраняется. Помогите, пожалуйста

Числа хранятся в "конце", т.е. число 5 хранится как 00...005

Добавлено через 2 минуты


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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
const h=29;
 
class Number{
public:
    int N; // величина порядка
    int m[h]; //мантисса
    bool zn; //знак числа
 
    Number();
    Number(int [h], int, bool);
    Number(const Number&);
    ~Number();
    Number operator * (const Number);  //перегрузка бинарного оператора умножение
    Number operator = (const Number);//перегрузка бинарного оператора присвоения
    void Show();// Функция вывода числа на экран
 
};
 
Number Number :: operator * (const Number ob){
    Number a;
    int b[h];
    a.zn = (zn == ob.zn);
    a.N = N + ob.N;
    int k=0;
    for(int i=h-1, x=0; i>=0; i--){
        int temp = 0;
        k = h-x;
        for(int j = h-1; j>=0; j--, k--){
            b[k] += temp;
            temp = m[i] * ob.m[j];
            b[k] += temp%10;
            temp = temp/10;
        }
        for(int y = 0; y<h; y++){
            a.m[y] += b[y];
            cout<<b[y];
            b[y] = 0;
        }
        x++;
    }
    return a;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 23:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru