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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Leeto
7 / 7 / 0
Регистрация: 23.12.2011
Сообщений: 372
Записей в блоге: 1
#1

функция увеличивающая и уменьшающая индекс элемента в массиве - C++

22.06.2012, 14:26. Просмотров 412. Ответов 4
Метки нет (Все метки)

Помоги пожалуйста реализовать две функции

2.1. Push()

Aarray of Point name arr1
(2,2) with index 0
(4,4) with index 1
(6,6) with index 2
(8,8) with index 3

if I call push then for element with index 2
arr1.push(2)
then

(2,2) with index 0
(4,4) with index 1
(8,8) with index 2 // index down
(6,6) with index 3 // index up


2.2. Pop() тоже самое только в другом напровлении
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2012, 14:26     функция увеличивающая и уменьшающая индекс элемента в массиве
Посмотрите здесь:
Нахождение максимального элемента в массиве и его индекс (элемента) C++
Индекс максимального элемента в массиве C++
Функция, которая возвращает индекс первого элемента C++
Индекс второго отрицательного элемента в массиве C++
C++ Определить индекс наибольшего элемента в одномерном массиве
C++ Найти индекс элемента, равного 3, в одномерном массиве
C++ В массиве найти индекс первого нулевого элемента
C++ В массиве из 15 чисел найти индекс первого нулевого элемента
C++ В массиве из 15 чисел найти индекс первого нулевого элемента
В массиве из 15 чисел найти индекс первого нулевого элемента C++
C++ Определить индекс и значение максимального элемента в массиве через ссылку
C++ В линейном массиве заменить все элементы на число m (m – индекс максимального элемента)

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
programm1r
46 / 45 / 1
Регистрация: 19.06.2012
Сообщений: 134
22.06.2012, 16:07     функция увеличивающая и уменьшающая индекс элемента в массиве #2
Немного непонятна задача. Функция push() должна помещать элемент в массив arr1...
Цитата Сообщение от Leeto Посмотреть сообщение
if I call push then for element with index 2
arr1.push(2)
then
(2,2) with index 0
(4,4) with index 1
(8,8) with index 2 // index down
(6,6) with index 3 // index up
Если я вызываю функцию push() для элемента с индексом 2, тогда...
Что в массиве точки хранятся? Какова зависимость между (2,2) и индексом 0? Или вам просто надо помещать и извлекать данные из массива с помощью данных функций? Поясните...
Leeto
7 / 7 / 0
Регистрация: 23.12.2011
Сообщений: 372
Записей в блоге: 1
23.06.2012, 17:04  [ТС]     функция увеличивающая и уменьшающая индекс элемента в массиве #3
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
// Point.h
#ifndef POINT_H
#define POINT_H
 
#include "array.h"
#include <sstream>
#include <iostream>
 
using namespace std;
class Point 
{
protected:
    double m_x;                                
    double m_y;                                
public:
    // Constructors
    Point(): m_x(0), m_y(0) {};                            
    Point(double new_x, double new_y) : m_x(new_x), m_y(new_y) {};
    friend ostream& operator << (ostream& os, const Point& point)
{
    return os << point.ToString();
}
   string ToString() const
{
 
      std::ostringstream os; 
    os << m_x << " , " << m_y; // creating a string like: “Point(1.5, 3.9)”
    std::string double_string = os.str();
 
    return "Point(" + double_string + ")";
 
}
    Point operator *(double factor) const;   
    Point operator * (Point& ar) const;
    Point& operator *=(double factor);
    double GetX();
    double GetY();
 
 
};
 
#endif //Point_h
 
 
 
#ifndef STACK_H
#define STACK_H
 
#include"Array.h"
 
 
template<class Type>
class Stack
{
private:
 
    int m_current;
    Array<Type>* m_array;
 
public:
 
    //constructor
 
    Stack();                        //default construcotr
    Stack(int size);                //overloaded constructor
    Stack(const Stack<Type>& copy);    //copy constructor
 
    //destructor
   
    ~Stack();
 
    //assignment operator
 
    Stack<Type>& operator=(const Stack<Type>& s);
 
    
    //member function
 
    void Push(const Type& index_up);   //store the element at the current position in the embedded array. Increment the current position afterwards.
    Type Pop(const Type& index_down); //decrements the current position and then returns the element at that position. Make sure the current index is not changed when the Array class throws an exception
    int Current() const;
 
 
};
 
#ifndef STACK_CPP // спросить на форуме как правильней просто ифндеф или с дефайн 
#include"Stack.cpp"
#endif
 
#endif
 
#ifndef ARRAY_H
#define ARRAY_H
 
template <class Type> 
class Array
 
{
protected:
  int m_size;
  Type* m_data; //m_data should be a pointer, since you want to allocate data to it
 
public:
  Array();
  Array(int new_size);
  virtual ~Array(); //Are there reason making destructor virtual?
  Array<Type>& operator=(const Array& ar); //Const correctness here.
//  Array<Type>& operator=( double ar);
 
  //modifires 
  Type& operator [] (int index);
  const Type& operator [] (int index) const;
  void SetElement(const Type& type_object, int index);
  const Type& GetElement(int index) const;
  void Swap(Array& ar);
  int Size() const;
};
 
#ifndef ARRAY_CPP 
#include "array.cpp"
#endif //Array_CPP
 
#endif //Array_H
Связь между Stack and Array композиционная изначально Point objects храниться в Array
Миниатюры
функция увеличивающая и уменьшающая индекс элемента в массиве  
programm1r
46 / 45 / 1
Регистрация: 19.06.2012
Сообщений: 134
23.06.2012, 17:04     функция увеличивающая и уменьшающая индекс элемента в массиве #4
Рад что помогло
Leeto
7 / 7 / 0
Регистрация: 23.12.2011
Сообщений: 372
Записей в блоге: 1
23.06.2012, 18:04  [ТС]     функция увеличивающая и уменьшающая индекс элемента в массиве #5
Цитата Сообщение от programm1r Посмотреть сообщение
Рад что помогло
чего нет ? то что я выложил это ответ на твой вопрос какая связь и пояснить... ничего не помогло... как реализовать push() and pop() функции ???
Yandex
Объявления
23.06.2012, 18:04     функция увеличивающая и уменьшающая индекс элемента в массиве
Ответ Создать тему
Опции темы

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