Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
TRRx
0 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 98
#1

Реализовать класс А с полями a и b и свойством с

21.10.2016, 20:46. Просмотров 274. Ответов 18
Метки нет (Все метки)

Создать класс А с полями a и b и свойством с. Свойство - значение выражения над полями a и b. Поля инициализировать при объявлении класса. Проследить, чтобы поля a и b напрямую были недоступны. Создать массив объектов класса. Размер массива – поле a, инициализация элементов массива – свойство с, умноженное на индекс элемента.

*****
Не совсем понимаю как реализовать, буду благодарен за идеи и помощь

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2016, 20:46
Ответы с готовыми решениями:

Реализовать класс с двумя скрытыми полями first и second
Ребят, помогите решить задачку: (заранее спасибо:)) Сама задачка: Реализовать...

Реализовать класс с двумя скрытыми полями first и second
В с++ только начал разбираться, прошу помощи в решении задач. Задание: ООП –...

15. Создать класс LongLong для работы с целыми числами. Число должно быть представлено двумя полями.Реализовать арифметические операции
Добрый вечер,вот задание: Создать класс LongLong для работы с целыми числами...

Реализовать класс комплексных чисел с полями "модуль" и "аргумент"
Создать класс, в котором поля соответствуют модулю и аргументу комплексного...

Класс с++. Создать класс ЭКЗАМЕН со следующими полями: название предмета, фамилия студента, оценка
Был бы очень рад если помогли б ) Создать класс ЭКЗАМЕН со следующими полями:...

18
nmcf
6259 / 5571 / 2531
Регистрация: 14.04.2014
Сообщений: 23,455
22.10.2016, 08:00 #2
В виде функции getC() сделай, например.
0
TRRx
0 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 98
23.10.2016, 13:48  [ТС] #3
а вот " Поля инициализировать при объявлении класса. " как это сделать?
0
Ryuk
179 / 177 / 56
Регистрация: 10.06.2011
Сообщений: 871
23.10.2016, 14:02 #4
TRRx, с помощью конструктора
0
TRRx
0 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 98
23.10.2016, 15:08  [ТС] #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class A
{
private:
    int a, b;
public:
    int c;
    A(int, int);
    int get_a() { return a; }
    int get_b() { return b; }
 
};
 
A::A(int F, int S)
{
    a = F;
    b = S;
}
Ну конструктор сделал, а как сделать "Создать массив объектов класса. Размер массива – поле a, инициализация элементов массива – свойство с, умноженное на индекс элемента."?
0
nmcf
6259 / 5571 / 2531
Регистрация: 14.04.2014
Сообщений: 23,455
23.10.2016, 15:17 #6
И где вычисление c?
Цитата Сообщение от TRRx Посмотреть сообщение
а как сделать
Ну функцию в класс добавь, которая будет возвращать массив.
0
TRRx
0 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 98
23.10.2016, 16:45  [ТС] #7
Упс, не дописал задание.
Создать класс А с полями a и b и свойством с. Свойство - значение выражения над полями a и b.
В моем случае: (постф)++ и -
А как записать функцию, которая вернёт массив?Вообще не представляю. Ни разу с таким не сталкивался

Добавлено через 1 час 24 минуты
-up
0
Ryuk
179 / 177 / 56
Регистрация: 10.06.2011
Сообщений: 871
23.10.2016, 16:48 #8
TRRx, неужели так сложно воспользоваться гуглом?
0
nmcf
6259 / 5571 / 2531
Регистрация: 14.04.2014
Сообщений: 23,455
23.10.2016, 17:16 #9
Так, что ли?
C++
1
2
3
4
5
6
A *getArr()
{
    A*r = new A[a];
    for (int i = 0; i < a; ++i) r[i] = A(c * i, c * i);
    return r;
}
0
chloroform
6 / 6 / 3
Регистрация: 09.12.2015
Сообщений: 31
23.10.2016, 17:16 #10
Кликните здесь для просмотра всего текста

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
class C {
    int A, x, b;
public:
    
    C(){ 
        A = x = b = 5;
    }   
    C(int xx, int bb) {
        x = xx;
        b = bb;
        A = x + b;
    }
    ~C() {}
    int get_a() { return A; }
    void set_a(int i) { A = i; }
    C* get_array_C() { 
        if (!A)
            A = 4;
        return new C[A];
    }
};
void main(){
C cc(5,5);
C* pC = cc.get_array_C();
int aa = pC[9].get_a();
}
0
TRRx
0 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 98
23.10.2016, 17:37  [ТС] #11
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
#include <stdio.h>
#include "stdafx.h"
 
class A
{
private:
    int a, b;
public:
    A();
    int c;
    A(int, int);
    int get_a() { return a; }
    int get_b() { return b; }
    A *getArr()
    {
        A*r = new A[a];
        for (int i = 0; i < a; ++i) r[i] = A(c * i, c * i);
        return r;
    }
};
A::A()
{
    a = 0;
    b = 0;
}
A::A(int F, int S)
{
    a = F;
    b = S;
}
Как то так, а что дальше?
0
nmcf
6259 / 5571 / 2531
Регистрация: 14.04.2014
Сообщений: 23,455
23.10.2016, 17:44 #12
c вычисляй.
0
TRRx
0 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 98
23.10.2016, 18:00  [ТС] #13
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
47
48
49
50
51
52
53
54
55
#include <stdio.h>
#include "stdafx.h"
 
class A
{
private:
    int a, b;
public:
    A();
    int c;
    A(int, int);
    int get_a() { return a; }
    int get_b() { return b; }
    A *getArr()
    {
        A*r = new A[a];
        for (int i = 0; i < a; ++i) r[i] = A(c * i, c * i);
        return r;
    }
};
A::A()
{
    a = 0;
    b = 0;
}
A::A(int F, int S)
{
    a = F;
    b = S;
}
 
int main()
{
    short a, b;
 
    int i, c;
    do
    {
        printf("1) c = a++; c = b++\n2) c = a - b\nUse: ");
        scanf_s("%i", &i);
        if (i == 1)
        {
            c = a++;
            printf("%i", c);
        }
        else if (i == 2)
        {
            c = a - b;
            printf("%i", c);
        }
        else
            printf("Invalid input\n");
        printf("---------------------------------\n");
    } while (i < 1 || i>2);
}
вот, но нужно как то записать инкремент и для а, и для b
0
nmcf
6259 / 5571 / 2531
Регистрация: 14.04.2014
Сообщений: 23,455
23.10.2016, 18:16 #14
Внутри класса.
0
TRRx
0 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 98
23.10.2016, 18:20  [ТС] #15
Через перегрузку ++?
0
nmcf
6259 / 5571 / 2531
Регистрация: 14.04.2014
Сообщений: 23,455
23.10.2016, 18:25 #16
Возможно. Мне не понятно твоё задание до конца. Что должна делать операция ++ с этим c?
0
TRRx
0 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 98
23.10.2016, 19:31  [ТС] #17
ну с - это действие над полями а и b
и я должен выбрать действие: либо ++, либо -
Ну а после этого нужно продемонстрировать перегрузку операций инкремента и декремента в постфиксной форме и найти объект с наименьшим значением а

Добавлено через 57 минут
-up
0
nmcf
6259 / 5571 / 2531
Регистрация: 14.04.2014
Сообщений: 23,455
23.10.2016, 19:54 #18
Так к чему применять ++? К a или к b?
0
TRRx
0 / 0 / 1
Регистрация: 29.11.2015
Сообщений: 98
23.10.2016, 20:15  [ТС] #19
вот я тоже не понимаю, в условии не написано
наверное на своё усмотрение
0
23.10.2016, 20:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2016, 20:15

Из класса "Дата" с полями день, месяц, год создать класс "Время" с дополнительными полями час, минута, секунда
в общем .надо класс дата полями день, месяц год.теперь мне надо создать класс...

Создать базовый класс Тройка_чисел (Triad) и производный класс Time с полями часы, минуты и секунды
Наследование. Виртуальныефункции.Полиморфизм. 1. Цельзадания: 1) Создание...

Создать класс и класс-потомок с полями
Создать класс и класс-потомок с полями, под некоторые из полей классов память...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru