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

Перегрузка функций - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ "Угадай число" (напишите программу, хочу проверить со своей). http://www.cyberforum.ru/cpp-beginners/thread327632.html
"Угадай число". Пользователю предлагается отгадать число за 10 попыток. Программа даёт подсказки вида больше, меньше.
C++ Заменить в каждой строке элементы с наибольшим значением нулём Дан текстовый файл, состоящий из одной или нескольких строк. Каждая строка файла содержит числа,разделенные пробелами. Заменить в каждой строке элементы с наибольшим значением нулём. Создать файл,... http://www.cyberforum.ru/cpp-beginners/thread327586.html
C++ Задается положительное действительное чисто R
Решите очень нужно , Задается положительное действительное чисто R. Найти положительные действительные R1,R2,...,Rn, Ri<4,i=1,...,n, такие, что R=R1*R2*...*Rn=R1+R2+...+Rn
Удалить из бинарного файла, в котором записаны целые числа все четные элементы. C++
Решите очень нужно. Удалить из бинарного файла, в котором записаны целые числа все четные элементы.
C++ Шаблон класса комплексных чисел http://www.cyberforum.ru/cpp-beginners/thread327529.html
Ребят, выручайте. завтра экзамен и нужно сделать задачу, а у меня никак не получается. Создать шаблон класса комплексных чисел различной точности.
C++ CBitmapButton Решил для написания ГУЙ выбрать MFC, но мне не нравятся стандартные кнопки. Прочитал про CBitmapButton, создал картинки, и есть вопрос как при помощи AppWizard создать CBitmapButton? подробнее

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

Перегрузка функций - C++

29.06.2011, 14:33. Просмотров 416. Ответов 1
Метки (Все метки)

Моя последняя лаба=( Светлые умы, помогите...
Выполнить задания пятой и шестой лабораторной работы, оформив каждый пункт задания в виде шаблона функции. Все необходимые данные должны передаваться им в качестве параметров.

Пятая:
1) номер максимального элемента массива;
2) произведение элементов массива, расположенных между первым и вторым нулевыми элементами.
Преобразовать массив таким образом, чтобы в первой его половине располагались элементы, стоявшие в нечетных позициях, а во второй половине — элементы, стоявшие в четных позициях
Код:
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
#include "stdafx.h"
#include <iostream>
#include <math.h>
#include <conio.h>
using namespace std; // Загрузка библиотек.
 
 
void main(void) // Начало тела программы.
{
    int i, n; // Описание переменных.
    cout<<"Enter N "; cin>>n; // Задаем длинну массива.
    int *a = new int[n]; // Описание массива.
    int *b = new int[n];
    int imax, max, fz, sz, ii; // Описание переменных.
    cout<<"Enter massive "<<endl; // Запрос на ввод массива с клавиатуры.
    for ( i=1; i<=n; i++) // Начинаем цикл ввода.
        {
            cout<<"a("<<i<<") = ";
            cin>>a[i]; // Заносим в память очередной элемент массива.
            b[i] = a [i];
        }
    max = a[1];
    fz = 0;
    sz = 0;
    for ( i=1; i<=n; i++)
    {
        if (a[i]>max)
        {
            max = a[i];
            imax = i;
        }
    }
        double p=1;
        for (i=1; i<=n; i++)
        {
                if (a[i]==0)
                {
                        int j=i+1;
                        while (a[j]!=0 && j<n)
                        {
                                p*=a[j];
                                j++;
                                
                        }
                }
        }
 
    ii = 0;
    for (i = 1; i<=n; i=i+2)
    {
        ii = ii + 1;
        a[ii] = b[i];
        a[n/2 + ii] = b[i+1];
    }
    cout<<"p="<<p<<endl;
    cout<<"nom = "<<imax<<endl;
    for ( i=1; i<=n; i++) cout<<"a("<<i<<") = "<<a[i]<<endl;
    _getch();
    delete [] a; // Удаление массива из памяти.
    }
Шестая:
Уплотнить заданную матрицу, удаляя из нее строки и столбцы, заполненные нулями. Найти номер первой из строк, содержащих хотя бы один положительный элемент.
Код:

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
#include "stdafx.h"  // подключение "stdafx.h"
#include "iostream" // подключение библиотеки ввода/вывода данных
#include "conio.h" // подключение библиотеки консоли
#include "math.h" // подключение библиотеки метематических элементов
using namespace std;
int _tmain(int argc, _TCHAR* argv[]) // объявление функции с именем tmain
{
    
    int **mas,n, m, i,j, y, temp,p,u;
    cout<<"Vvedite kol-vo strok v massive: "<< endl;
    cin>>n;
    cout<<"Vvedite kol-vo stolbcov v massive: "<< endl;
    cin>>m;
    mas=new int*[n];
    for(i=0; i<n; i++)
      mas[i]=new int[m];
    cout<<"Vvedite elementbI massiva: "<< endl;
    for(i=0; i<n; i++)
      for(j=0; j<m; j++)
      {
          cout<<"["<<i<<"]["<<j<<"]= ";
          cin>>mas[i][j];
      }
 
        cout<<"Ishodnui massiv"<<endl;
    for(i=0; i<n; i++)
        {
      for(j=0; j<m; j++)
          cout<<mas[i][j]<<"  ";
          cout<<endl;
        }
        for(i=0; i<n; i++)
        {
                temp=0;
                for(j=0; j<m; j++)
                        if(mas[i][j]!=0)
                                temp=1;
                if(temp==0)
                {
                        for(y=i; y<n-1; y++)
                                for(j=0; j<m; j++)
                                        mas[y][j]=mas[y+1][j];
                        n--;
                }
        }
        for(i=0; i<m; i++)
        {
                temp=0;
                for(j=0; j<n; j++)
                        if(mas[j][i]!=0)
                                temp=1;
                if(temp==0)
                {
                        for(y=i; y<m-1; y++)
                                for(j=0; j<n; j++)
                                        mas[j][y]=mas[j][y+1];
                        m--;
                }
        }
        cout<<endl;
        cout<<"poluchenbIi massiv"<<endl;
        for(i=0; i<n; i++)
        {
      for(j=0; j<m; j++)
          cout<<mas[i][j]<<"  ";
                cout<<endl;
        }
            for(i=0; i<n; i++)
             for(j=0; j<m; j++)
            {
                if (mas[i][j]>0)
                {
                    p=i;
                    cout<<"PervbIi polozhitelnui element v stroke = "<<p;
                }
                break;
            }
         cout<<endl;
        _gettch();
        return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru