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

Конструкторы и деструктор класса BigInteger - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Одномерный массив из 10 элементов целого типа в диапазоне http://www.cyberforum.ru/cpp-beginners/thread1693046.html
Помогите с созданием программы, которая выполняет следующие действия: a) Одномерный массив из 10 элементов целого типа в диапазоне ; b) Сдвинуть элементы исходного массива на семь значений вправо, освобождая семь мест, и заполнить их нулями; с) Найти максимальный элемент преобразованного второго массива; d) Вывести исходный, полученный массивы и максимальный элемент.
C++ Функции добавления записи в список после указанного пациента и перед указанным пациента #include <iostream> #include <fstream> #include <cstring> #include <windows.h> using namespace std; struct element{ int id; char lastname; http://www.cyberforum.ru/cpp-beginners/thread1693043.html
C++ Почему так странно находятся углы в сферической системе координат
Добрый вечер! Вот краткая вырезка, которая меня и интересует. Всё по инфе из WIKI СФЕРИЧЕСКИЕ КООРДИНАТЫ. 1 Есть координаты точки и центра. 2 Находится длина вектора. 3 Находятся углы фи и тетта( как арктангенс наклона касательной ). 4 после "поворота на 0" находятся новые Х1 и У1(Xr1 & Yr1). Они не равны даже приблизительно исходным, в чём проблема? пс, знаю, что углы находятся ээ...
Умножение матриц при перегрузке (*) в классе C++
В чём собственно проблема: При перегрузке умножения, в результирующей матрице выбивает мусор( если быть точным, то максимальное значение ансайнд интеджер +\-) Я знаю, что ошибка в самой функции, но не могу её найти #include<conio.h> #include <iostream> using namespace std; class Matrix { protected:
C++ Дана матрица NxM, найти среднее арифметическое третьего ряда http://www.cyberforum.ru/cpp-beginners/thread1693034.html
Дана матрица NxM, найти среднее арифметическое третьего ряда
C++ Вставить после каждого непростого числа его наибольший делитель Дан массив из N целых чисел, где N<=16, каждое число в диапазоне от –32000 до 32000. Вставить в массиве после каждого непростого числа его наибольший делитель. подробнее

Показать сообщение отдельно
Demetro4ka
1 / 1 / 1
Регистрация: 12.10.2013
Сообщений: 229
23.03.2016, 21:06     Конструкторы и деструктор класса BigInteger
Задание выглядит так.
Определить класс BigInteger в файле BigInteger.h, который может быть использован для хранения больших положительных. класс содержит два элемента данных: указатель коротких целых и размер динамического короткого целого массива. Определите следующие функции-члены:
- конструктор по умолчанию
- экземпляр инициализации конструктора с длинным длинное целое.
- Конструктор инициализации, инициализирует экземпляр с массивом символов, в котором все элементы десятичных цифры.
- конструктор копирования делает глубокую копию из экземпляра.
- деструктор.
- добавить функцию, добавляет текущий экземпляр с другим экземпляром и возвращает результат сложения.
- Функция печати, распечатать текущее значение в выходной поток.
Реализовать функцию-член, определенный выше в файле BigInteger.cpp. Написать программу, драйвера включают в себя основную функцию в файле testMain.cpp объявить экземпляр, проверить все функции-члены, определенные выше. эти значения заданы (НЕ читать входные данные с клавиатуры или файла)

Попыталась что то написать, но чувствую ерунда. Помогите плиз
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
 
using namespace std;
 
int main()
{  long int big_a = 85759585857545856585;
    bigInteger();
    bigInteger(big_a);
    
    return 0;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#ifndef BIGINTEGER_H
#define BIGINTEGER_H
 
 
class bigInteger
{
    public:
        bigInteger();
        virtual ~bigInteger();
    protected:
    private:
    short int *pn = malloc(sizeof(int));
    short int size_arr;
};
 
#endif // BIGINTEGER_H
C++
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
43
44
45
46
#include "bigInteger.h"
 
bigInteger::bigInteger()
{
    //ctor
    cout<<"main constructor "<<endl;
}
 
void bigInteger::set_a(std::long int big_a)
{
    //ctor
    bigInteger::a = big_a; 
}
 
bigInteger::bigInteger(std::long int big_a)
{
    //ctor
    
    bigInteger::size_arr = sizeof(big_a);
    for (i=size_arr-1;i>1;i--){
    bigInteger::pn[i] = big_a/(10*i); 
    }
     bigInteger::pn[i-1] = big_a%(10*i);
    
}
 
 bigInteger::bigInteger(const bigInteger &obj)
    {      
        bigInteger::copy_obj = obj;
    }
    
    funcSumma(bigInteger copy_obj)
    {
       return bigInteger::a+bigInteger::copy_obj;
    }
    
    funcShow()
    {
       cout<<bigInteger::a+bigInteger::copy_obj<<endl;;
    }
 
bigInteger::~bigInteger()
{
    //dtor
    
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru