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

Шаблоны функций - C++

Восстановить пароль Регистрация
 
MrKybik
 Аватар для MrKybik
-20 / 0 / 0
Регистрация: 27.11.2012
Сообщений: 84
13.04.2014, 17:30     Шаблоны функций #1
Надо в этом задании добавить "шаблоны ф-ций", помогите пжл
Шаблоны функций
 Комментарий модератора 
Задачи надо переписывать в текст сообщения!!!
Одно сообщение - одна задача!


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
//Задание 1.1
 
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <iomanip>
 
using namespace std;
 int main() {
     setlocale(LC_ALL,"Rus");
     srand(time(NULL));
     
     int n,i,sc=0,sp=0,j=0,p=1;
 
     cout << "Введите размер = ";
     cin >> n;
 
     float *a=new float[n];
 
     cout << "Исходный массив:" << endl;
 
     for (i=0; i<n; i++) {
         a[i]=rand()%22/5;
         cout << setprecision(3) << a[i] << " ";
     }
 
     // Z1
     for (int i=1; i<n; i+=2) 
         p*=a[i];
     cout << endl << endl;
     cout << "Произведение равно = " << p << endl;
 
 
     //Z2
     for (i=0;i<n;i++) {
         if (j)
         {
             sc+=a[i];
             if (a[i]==0) sp=sc;
         }
         else if (a[i]==0) j=-1;
     }
     cout << "Сумма между нулевыми элементами равна = " << sp << endl;
 
     //Z3*
     {
         for (i=0; i<n; i++)
            for(int j=i+1;j<n;j++)
                 if (a[i]<a[j])
                 {
                     int buf=a[i];
                     a[i]=a[j];
                     a[j]=buf;
                 }
 
                 cout << endl << endl;
                  for (i=0; i<n; i++)
                      cout << a[i] << " ";
     }
     return 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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
//Задание 2.2
 
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <cmath>
#include <iomanip>
 
using namespace std;
int main() {
    setlocale(LC_ALL,"Rus");
    int sum,i,j,n,pr=1,y,si;
    bool x;
 
    cout << "Введите n = ";
    cin >> n;
 
    int **a=new int*[n];
     for (i=0;i<n;i++)
         a[i]=new int[n];
     for (i=0;i<n;i++)
         for (j=0;j<n;j++)
             a[i][j]=rand()%22/3;
     for (i=0;i<n;i++) {
         for (j=0;j<n;j++)
             
         cout << setw(4) << a[i][j];
         cout << endl;
     }
 
     //Z1
     for (i=0;i<n;i++) {
         pr=1;
         x=true;
     for (j=0;j<n;j++)
         if (a[i][j] <0) x=false;
          if (x==true) {
              for (j=0;j<n;j++)
                  pr*=a[i][j];
              cout << "Произведение строки № " << i << " равно = " << pr << endl;
          }
     }
 
     //Z2
     { int sum =0;
         for (i=0;i<n;i++)
         {
             for (j=i; j<n; j++)
             {
                 sum+=abs(a[i][j]);
             }
         }
         cout << "Сумма модулей равна = " << sum << endl;
     }
 
     //3
     {
         for (y=0;y<n;y++) {
             si=0;
 
             for (i=0;i<n;i++)
                 for (j=0;j<n;j++)
                     if ((i+y)==j) si+=a[i][j];
             cout << "Сумма равна = " << si << endl;
         }
         return 0;
     }
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.04.2014, 17:30     Шаблоны функций
Посмотрите здесь:

C++ Шаблоны функций
C++ Шаблоны функций
C++ Шаблоны функций
Шаблоны функций C++
C++ Шаблоны функций
C++ Шаблоны функций
C++ Шаблоны функций c++
Шаблоны функций C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kiborgdelto
70 / 72 / 27
Регистрация: 23.03.2011
Сообщений: 141
13.04.2014, 18:13     Шаблоны функций #2
задача 1.1 для z1
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>
#include <cstdlib>
#include <ctime>
#include <iomanip>
using namespace std;
 
template< class T > T z1(T *a, int n)
{
T p=1;
for (int i=1; i<n; i+=2) 
    p*=a[i];
return p;
}
 
 int main() {
     setlocale(LC_ALL,"Rus");
     srand(time(NULL));
     
     int n,i,sc=0,sp=0,j=0,p=1;
 
     cout << "Введите размер = ";
     cin >> n;
     int tipe;
     cout << "Выберите тип данных\n1. int\n2. float\n3. double\n";
     cin >> tipe;
 
    int *a=new int[n];
    float *a1=new float[n]; 
    double *a2=new double[n];
     
     for (i=0; i<n; i++)
     {
            a[i]=rand()%22;
            a1[i]=rand()%22/5.;
            a2[i]=rand()%122/27.;
     }
    
    cout << "Исходный массив:" << endl;     
    if(tipe==1) 
        for (i=0; i<n; i++)
            cout << setprecision(3) << a[i] << " ";
    else if(tipe==2) 
        for (i=0; i<n; i++)
            cout << setprecision(3) << a1[i] << " ";
    else
        for (i=0; i<n; i++)
            cout << setprecision(3) << a2[i] << " ";
     
    cout << "\nПроизведение равно = ";
    if(tipe==1) cout<<z1(a,n)<<endl;
    else if(tipe==2) cout<<z1(a1,n)<<endl;
    else cout<<z1(a2,n)<<endl;
    system("pause");
    return 0;
}
код можно сильно сократить если тип данных будешь менять в коде и затем только компелировать

остальное переделать несложно, если программа написана самостоятельно
Yandex
Объявления
13.04.2014, 18:13     Шаблоны функций
Ответ Создать тему
Опции темы

Текущее время: 22:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru