Тема: завдання*WALL*
Клас Hugelnteger (великі цілі числа). Клас містить масив з 40 елементів для збереження великих цілих чисел. Необхідно передбачити операцію додавання та віднімання чисел, а також операції вводу та виводу.
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → C++ → завдання*WALL*
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися
Клас Hugelnteger (великі цілі числа). Клас містить масив з 40 елементів для збереження великих цілих чисел. Необхідно передбачити операцію додавання та віднімання чисел, а також операції вводу та виводу.
Попередження! Цю помилку має бути виправлено перед відправленням повідомлення:
було відкрито всередині себе, що не дозволено. не можу чере цю помилку надіслати те що в ене получилось. проблема в тому що він в мене не компілюється
#include<iostream>
using namespace std;
const int n = 40;
class HugeInteger {
long int array[n];
public:
HugeInteger() : array{ 0 } {};
HugeInteger(long int _arr[n]) {
for (int a = 0; a < n; a++) {
_arr[a] = array[a];
}
}
friend HugeInteger operator +(const HugeInteger& obj1, const HugeInteger& obj2) {
for (int a = 0; a < n; a++) {
return HugeInteger(obj1.array[a] + obj2.array[a]);
}
}
friend HugeInteger operator -(const HugeInteger& obj1, const HugeInteger& obj2) {
for (int a = 0; a < n; a++) {
return HugeInteger(obj1.array[a] - obj2.array[a]);
}
}
friend ostream& operator<< (ostream& out, const HugeInteger& obj)
{
for (int a = 0; a < n; a++) {
out << obj.array << endl;
}
return out;
}
friend istream& operator>> (istream& in, HugeInteger& obj)
{
for (int a = 0; a < n; a++) {
in >> obj.array[a];
}
return in;
}
};
int main() {
long int massive[n];
HugeInteger obj1(massive), obj2(massive);
cout << "Enter first object`s massive: "; cin >> obj1;
cout << "Enter second object`s massive: "; cin >> obj2;
cout << "First massive: " << obj1 << endl;
cout << "Second massive: " << obj1 << endl;
cout << "Sum: " << obj1 + obj2 << endl;
cout << "Diff: " << obj1 + obj2 << endl;
}
Це автоматичний переклад повідомлення про помилку? Не треба так. Дослівно - яку повідомлення пише компілятор? У якому рядку?
У мене компілятор показує першу помилку в
friend HugeInteger operator +(const HugeInteger& obj1, const HugeInteger& obj2)
Вам треба в циклі все скласти, а потім повернути значення. А ви намагаєтеся повертати значення всередині циклу, тобто фактично після першої ітерації. Виправте це.
Це автоматичний переклад повідомлення про помилку? Не треба так. Дослівно - яку повідомлення пише компілятор? У якому рядку?
'<'<function-style-cast>': cannot convert from 'long' to 'Hugeinteger' в 15 та 20 рядку
У мене компілятор показує першу помилку в
friend HugeInteger operator +(const HugeInteger& obj1, const HugeInteger& obj2)
Вам треба в циклі все скласти, а потім повернути значення. А ви намагаєтеся повертати значення всередині циклу, тобто фактично після першої ітерації. Виправте це.
Можна будь-ласка приклад?
Вибачте, але вам явно зарано займатися класами. Ви не розумієте, як керівні конструкції працюють. Спробуйте щось простіше зробити.
Вибачте, але вам явно зарано займатися класами. Ви не розумієте, як керівні конструкції працюють. Спробуйте щось простіше зробити.
Ну це так,але лабу треба здавати
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися