Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Isya Shmonder
0 / 0 / 0
Регистрация: 19.11.2010
Сообщений: 21
1

Определить класс ограниченного массива

28.03.2012, 13:52. Просмотров 874. Ответов 1
Метки нет (Все метки)

Такое задание по ООП.
Определить класс ограниченного массива вещественных чисел, индексы элементов которого могут принимать отрицательные значения. Пример объявления массива и обращения к его элементам.
Mdouble x (-30, 50);
x[-30] = 1.2; x [0] =0. ; x [50] = -1
Заранее благодарен.
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.03.2012, 13:52
Ответы с готовыми решениями:

Создать класс Triad (тройка чисел); определить метод сравнения триад. Определить производный класс Date
Создать класс Triad (тройка чисел); определить метод сравнения триад. Определить производный класс...

Определить площадь прямоугольника, ограниченного координатами точки и осями координат
Точка на плоскости: координаты точки на плоскости (по горизонтали и верти- кали) x1 и y1 ...

Определить класс химический элемент, содержащий информацию о названии элемента его химических свойствах. Определить класс медикаменты, содержащий разн
Определить класс химический элемент, содержащий информацию о названии элемента его химических...

Создать класс Triad (тройка чисел) - определить методы; определить производный класс Date - переопределить методы
Создать класс Triad (тройка чисел); определить методы увеличения полей на 1. Определить производный...

Класс "Текст" (массив строк) для ограниченного числа строк
Здравствуйте, мне задали лабораторную и я вообще не представляю как это делается, помогите...

1
Kuzia domovenok
2782 / 2411 / 618
Регистрация: 25.03.2012
Сообщений: 8,611
Записей в блоге: 1
Завершенные тесты: 1
28.03.2012, 15:26 2
Лучший ответ Сообщение было отмечено Isya Shmonder как решение

Решение

Цитата Сообщение от Isya Shmonder Посмотреть сообщение
Такое задание по ООП.
Определить класс ограниченного массива вещественных чисел, индексы элементов которого могут принимать отрицательные значения. Пример объявления массива и обращения к его элементам.
Mdouble x (-30, 50);
x[-30] = 1.2; x [0] =0. ; x [50] = -1
Заранее благодарен.
А если первый параметр в конструкторе задать положительным, отсчёт индексов должен будет вестись от нуля, или от этого параметра?
C++
1
2
Mdouble x (30,50);//Разрешено ли так?
x[0]=1.2;//А так разрешено, если задано id начала массива=30

Короче, вот ответ:
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
56
57
58
59
60
61
#include <iostream> 
#include <fstream>
using namespace std;
class signed_array{
protected:
    int start, end;
    float* data;
public:
    signed_array(int s=0, int e=0){
        if (s<=e) {
            start=s;
            end=e;
            data=new float[e-s];
        }
        else {
            start=end=0;
            cerr<<"array["<<s<<"]["<<e<<"] is invalid"<<endl;
            data=new float[0];
        }
        if (!data) cerr<<"out of memory"<<endl;
    }
    int get_start(){return start;}
    int get_end(){return end;}
    signed_array(signed_array& src){
        int i;
        start=src.start;
        end=src.end;
        data=new float[end-start];
        if (!data) {cerr<<"out of memory"<<endl;}
        for (i=0; i<end-start; i++) data[i]=src.data[i];
    }
    signed_array& operator = (signed_array& src){
        if (data) delete[] data;
        int i;
        start=src.start;
        end=src.end;
        data=new float[end-start];
        if (!data) cerr<<"out of memory"<<endl;
        for (i=0; i<end-start; i++) data[i]=src.data[i];
    }
    ~signed_array(){
        if (data) delete[] data;
    }
    float& operator [] ( int index ) const{
        if ((index>=start)&&(index<=end)) return (data[index-start]);
        return (data[0]);
    };
 
};
int main(){
    char c;
    signed_array test(-5, 5);
    test[-4]=2.0;
    test[-2]=0.5;
    test[-3]=test[-4]+test[-2];
    cout<<"test[-4]="<<test[-2]<<endl;
    cout<<"test[-3]="<<test[-4]<<endl;
    cout<<"test[-2]="<<test[-3]<<endl;
    cin>>c;
    return 0;
}
1
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.03.2012, 15:26

Определить, лежит ли точка внутри или вне круга, ограниченного указанной окружностью, или на окружности
Даны координаты точки (x,y), радиус r и координаты центра окружности (x,y). Определить, лежит ли...

Определить лежит ли точка внутри или вне круга,ограниченного указанной окружностью, или на окружности
помогите пожалуйста)) Даны координаты точки (x,y), радиус r и координаты центра окружности (x,y....

Реализовать класс Pair (пара чисел); определить производный класс Complex (комплексное число)
Здравствуйте. Задали задание: Создать класс Pair (пара чисел); определить метод перемножения...


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

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

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