Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 7
1

Сделать один метод для 3 разных типов массивов

16.11.2011, 15:13. Показов 1146. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Не получается сделать один метод для 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
// WorkShablon.cpp: определяет точку входа для консольного приложения.
//
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <conio.h>
using namespace std;
 
 
 
//TEMPLATE.VEC - шаблон векторов.
template <class T> // Т - параметр шаблона.
class Vector
{
  T *data;  // Начало одномерного массива.
 // T **typ;
  int size,n; // Количество элементов в массиве
 public:
  Vector(int); // Конструктор класса vector.
  ~Vector() { delete[] data; } // Деструктор.
  // пропишем методы
 
  // Расширение действия (перегрузка) операции "[]":
  T& operator[] (int i) { return data[i]; }
  void Run();
  
};
 
// Внешнее определение конструктора класса:
template <class T>
Vector <T>::Vector(int n)
{ 
  data = new T[n]; 
  size = n;
};
 
template< class T >
   void Vector<T>::Run()
  {
   int n=size;
      Vector <int> X(n);
     
    cout<<"vvedite elementi"<<endl;
                for(int i=0; i<n;i++)
                 {cin>>X[i];} 
                     int temp;
        temp = X[0];
         for(int i=0; i<n; i++)
              {
                X[i] = temp*X[i];
                }
          for (int i = 0; i < n; i++)
     cout <<"  " << X[i] <<" ";;
  };
 
void main ()
{ 
    int n,k;
    cout<<"Vvedite n"<<endl;
    cin>>n;
 
  Vector <int> X(n);
  // Создаем объект  класса   "символьный вектор":
  Vector <char> C (n) ;
  Vector <double> D (n);
   
 cout<<"S kakim tipom hotite rabotat?"<<endl;
 cout<<"1. int"<<endl;
 cout<<"2. char"<<endl;
 cout<<"3. double"<<endl;
 cin>>k;
  // Определяем компоненты векторов:
 
  switch (k) 
{ 
  case 1: X.Run();
                
      break; 
      
  case 3: 
         cout<<"vvedite elementi"<<endl;
        for(int i=0; i<n;i++)
        {cin>>D[i];} 
             double temp2;
         temp2 = D[0];
         for(int i=0; i<n; i++)
             {
                    D[i] = D[i];
             }
          for (int i = 0; i < n; i++)
         cout <<"  "  << D[i];; break;
 
  case 2: 
        cout<<"vvedite elementi"<<endl;
        for(int i=0; i<n;i++)
        {cin>>C[i];} 
                      for (int i = 0; i < n; i++)
                        cout <<"  "  << C[i]; ; break;
     default: "Viberite pravilno!"; 
} 
 
  getch();
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.11.2011, 15:13
Ответы с готовыми решениями:

Как сделать один шаблон для разных типов
Предположим я реализую некоторый шаблонный класс, в котором, ну ради примера к объектам шаблонного...

Передача разных конкретных типов перечисления в один метод в качестве параметра
Поскольку прямая лобовая передача типа перечисления в метод в качестве параметра невозможна (?), то...

Метод выполнить в 11 разных потоках, соответственно для разных входных массивов
Здравствуйте, начал потихоньку разбираться в многопоточном программирование и не могу до конца...

Как сделать так чтобы метод мог принимать списки объектов разных типов?
Хочу написать метод который будет принимать два параметра, 1) Список 2) Индекс и будет удалять...

3
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
16.11.2011, 15:28 2
какой метод?
0
0 / 0 / 0
Регистрация: 16.11.2011
Сообщений: 7
16.11.2011, 15:35  [ТС] 3
Метод класса. Что бы он работал с разными типами массивов. В данном случае метод Run



Общая постановка. Даны: число N и последовательность a1, a2, … aN. Создать шаблон класса, порождающий динамические одномерные массивы с элементами различных типов (вещественные, целочисленные, символьные). Тип данных и результат являются параметрами по отношению к классу, программа должна иметь методы инициализации, конструктор, деструктор, метод просмотра значений созданного массива согласно заданному алгоритму.
2. (a1*a1), (a1*a2), …, (a1*aN);
0
Студент
148 / 148 / 64
Регистрация: 18.01.2011
Сообщений: 469
16.11.2011, 15:46 4
C++
1
T temp;
и
C++
1
Vector <T> X(n);
1
16.11.2011, 15:46
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.11.2011, 15:46
Помогаю со студенческими работами здесь

Обобщенный метод для двух разных типов
есть два класса - разные , которые ничем не отличаются, как мне сделать общий метод, который будет...

Создать метод типа вектор, для разных типов вектора
Нужно создать абстрактный класс, в котором будет метод Add(), типа вектор, но этот метод должен...

Сортировка массивов разных типов
пытаюсь создать игру на LibGDX. Столкнулся со следующей проблемой: графика изометрическая, а...

Объяснить нюансы работы массивов разных типов в С++
Уважаемые программисты, недавно начал изучать C++ и наткнулся на очень интересный вопрос. Надеюсь...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru