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

Перегрузка операторов в классе "Последовательность целых чисел" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как создать оконное приложение с помощью MinGW http://www.cyberforum.ru/cpp-beginners/thread668440.html
Блин, вообще не могу понять как создать оконное приложение с помощью MinGW... это ведь возможно?
C++ Подскажите как написать Алгоритм решения индивидуальной задачи разделить на две функции: - функцию, которая организует вычисления по формуле, определенной в задаче соответствующего задания. Алгоритмы этих функций... http://www.cyberforum.ru/cpp-beginners/thread668419.html
C++ прошу проверить на правильность if ! ) так же прикрепил файл с блок -схемой и кодом
ln|x| при sinx+cos2x при z= x*x*x+1 при x+1/x*x+8 при ln x в остальных случаях #include "stdafx.h" #include <conio.h> #include <stdio.h>
C++ выражение, которое присваивает переменной Y остаток
Написать выражение, которое присваивает переменной Y остаток от деления 23 на 4.
C++ Заполнение вектора функцией copy из бинарного файла http://www.cyberforum.ru/cpp-beginners/thread668392.html
Здравствуйте! Есть бинарный файл с таким содержимым: 10 01 C0 00 00 58 01 01 00 01 00 06 03 00 00 00 00 00 00 00 38 01 00 00 00 00 00 00 00 39 01 00 01 00 00 00...
C++ Вычислить сумму n членов ряда Тейлора для косинуса По заданию дано число X, надо вычислить сумму n членов рада тейлора для косинуса и сравнить с результатом библиотечного косинуса. Получается, что x и n задаются пользователем. Я сделал наброски, но... подробнее

Показать сообщение отдельно
Graffik
0 / 0 / 0
Регистрация: 11.10.2012
Сообщений: 4

Перегрузка операторов в классе "Последовательность целых чисел" - C++

11.10.2012, 01:14. Просмотров 697. Ответов 5
Метки (Все метки)

Добрый день! Столкнулся с таким заданием:

"Создать класс «последовательность целых чисел». Элементы последовательности хранить в динамическом массиве. Реализовать методы: проверка, что последовательность возрастающая, выделение подпоследовательности без заданного элемента. Реализовать операции: добавление элемента к последовательности (+ число), удаление элемента из последовательности (- число), объединение последовательностей (+), присваивание (=)."

Реализовать методы вроде бы удалось, а вот как реализовать операции - не знаю... Не могли бы, пожалуйста, помочь? Буду очень признателен.

Вот текст моей программы (возможно далеко не идеальна, но вроде бы работает):

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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <clocale>
#include <time.h>
using namespace std;
class Posl
{
    int *mas, *mas1, *mas2, n;
public:
    Posl(int m) {mas=new int [m]; mas1=new int [m-1]; n=m;}
    ~Posl(){delete []mas; delete []mas1;}
    void Posl::mas_get (int m, int a, int b)
    {
        srand ((unsigned)time(NULL));
        if (a>b) {int r=a; a=b; b=r;}
        for (int i=0; i<m; i++) 
            mas[i]=rand()%(b-a+1)+a;
    }
    void Posl::mas_print (int m)
    {
        for (int i=0; i<m; i++)
            cout << setw(5) << mas[i];
        cout << endl;
        cout << endl;
    }
    void Posl::mas_up (int m)
    {
        int k=0,i=0;
        while ((k==0) && (i<m-1))
        {
            if (mas[i+1] > mas[i]) {i++;}
            else {k=1; i=m;}
        }
        if (k==0) cout << "Возрастающая" << endl;
        else cout << "Не является возрастающей" << endl;
        cout << endl;
    }
    void Posl::mas_without (int j, int m)
    {
        int k=0;
        for (int i=0; i<m; i++)
        {
            if ((i!=j) && (k==0)) mas1[i]=mas[i];
            else k=1;
            if (k!=0) mas1[i-1]=mas[i];
        }
        for (int i=0; i<m-1; i++)
            cout << setw(5) << mas1[i];
        cout << endl;
        cout << endl;
    }
};
int main()
{
    int m1,a1,b1,i1;
    setlocale(LC_ALL, "Russian");
    cout << "Число членов последовательности = ";
    cin >> m1;
    cout << endl;
    cout << "Нижняя граница = ";
    cin >> a1;
    cout << endl;
    cout << "Верхняя граница = ";
    cin >> b1;
    cout << endl;
    Posl x(m1);
    x.mas_get(m1, a1, b1);
    x.mas_print(m1);
    x.mas_up(m1);
    cout << "Заданный номер элемента = ";
    cin >> i1;
    cout << endl;
    x.mas_without(i1,m1);
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru