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

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

Войти
Регистрация
Восстановить пароль
 
=GHOST=
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 35
#1

переделайте программу на шаблоны, связанную с массивом... - C++

12.04.2010, 15:57. Просмотров 254. Ответов 0
Метки нет (Все метки)

Задание: для работы с двумерными массивами арифметических типов данных разработать шаблоны ввода, вывода массива и поменять местами столбцы по правилу: первый с последним, второй с препоследним и т.д. =)

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 <iostream>
using namespace std;
template <typename X> 
X**creatArray (int &n, int &m)
{cout<<”n=; cin>>n;
cout<<”m=; cin>>m;
X** a=new X*[n];
for(int i=0; i<n; ++i) a[i]=new X[m];
for(int i=0; i<n; ++i)
for(int j=0; j<n; ++j)
{cout<<”a[<<i<<][<<j<<]=;
cin>>a[i][j];}
return a;}
 
template <typename X>
void printArray (X **a, int n, int m)
{for (int i=0; i<n; ++i)
{cout<<endl;
for (int j=0; j<m; ++j)
cout<<a[i][j]<<”\t”;}   }
 
template<typename X>
void changeArray (X **a, int n, int m)
{X*z=new X[n];
for (int j=0; j<m/2; ++j)
for (int i=0; i<n; ++i)
{z[i]=a[i][j];
a[i][j]=a[i][m-j-1];
a[i][m-j-1]=z[i];}
delete []z;}
 
int main()
{int n, m;
int **c=creatArray<int>(n,m);
changeArray<int>(c,n,m);
printArray<int>(c,n,m);
cout<<endl;
double **d= creatArray<double>(n,m);
changeArray<double>(d,n,m);
printArray<double>(d,n,m);
cout<<endl;
for (int i=0; i<n; ++i) delete [] c[i];
delete []c;
for (int i=0; i<n; ++i) delete [] d[i];
delete []d;
return 0;}
 
это программа, которая прекрасно работает...но есть одна проблема.
int **c=creatArray<int>(n,m);
changeArray<int>(c,n,m);
printArray<int>(c,n,m);
 
double **d= creatArray<double>(n,m);
changeArray<double>(d,n,m);
printArray<double>(d,n,m);
в этих строках в угловых скобках написан тип данных....как это можно по-другому написать? записать? сделать, чтобы всё также работало???? =(((
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.04.2010, 15:57     переделайте программу на шаблоны, связанную с массивом...
Посмотрите здесь:

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

Двумерный массив (Вычислить вектор D, компоненты которого равны сумме элементов строк матрицы). Пожалуйста переделайте готовую программу - C++
Здравствуйте!) помогите пожалуйста с такой проблемой. Лабораторную послезавтра сдавать, а я тему пропустил, очень надо((( Задание следующее...

Добавить шаблоны в программу нахождения количество строк и максимального из чисел матрицы - C++
Всем привет, я уже как то спрашивала про шаблоны функции, спасибо Вам кто помог, но не могу я никак эту прогу сделать чтоб она работала с...

Написать программу учёта книг в библиотеке (данные хранить в списке; использовать шаблоны) - C++
Здравствуйте! Подскажите что я делаю не так! Моё задание:&quot;Написать программу учета книг в библиотеке. Сведения о книгах содержат: фамилию и...

Написать программу, работающую с массивом структур - C++
Ребят, помогите пожалуйста с заданиями по информатике... Ничего в этом не понимаю, а добавили дисциплину (информатику) только недавно, а...

Изменить программу для работы с массивом из string - C++
Дана программа подсчета четных и нечетных слов в тексте: #include &lt;iostream&gt; using namespace std; int main() { int...

Написать программу, работающую с массивом струтур human - C++
Есть задание –создать программу, которая будет использовать структуру human с элементами surname, name, age. Разработать создание и вывод...

Написать программу удаления информации о сотруднике с указанным возрастом с массивом структуры - C++
Написать программу удаления информации о сотруднике с указанным возрастом с массивом структуры

Как правильно переделать программу с двумерным массивом под работу с указателями? - C++
Как правильно переделать программу с двумерным массивом под работу с указателями? Вот код программы #include &quot;stdafx.h&quot; #include...

Переделайте её в С++ не получается - C++
var n, m: longint; a: array of longint; procedure Show (n: longint); var i: integer; begin for i:= 1 to n do ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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