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

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

Войти
Регистрация
Восстановить пароль
 
Брукссс
0 / 0 / 0
Регистрация: 17.05.2017
Сообщений: 4
#1

Массивы. Перегрузка функции - C++

17.05.2017, 23:44. Просмотров 175. Ответов 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
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
#include "stdafx.h" 
#include <iostream> 
#include <math.h> 
#include <stdio.h> 
 
using namespace std; 
 
int fun (int*, int); 
double fun (double*, double); 
int fun3 (char*, char); 
 
int main () 
{ 
setlocale(LC_ALL,"Russian"); 
 
int num; 
cout << "Введите номер массива от 1 до 3 (1 - Массив типа int, 2 - Массив типа double, 3 - Массив типа char): "; 
cin >> num; 
 
int n; 
cout << "Введите количество элементов массива:"; 
cin >> n; 
 
switch(num) 
{ 
case 1: 
{ 
    int *a1= new int [n];
    cout << "Введите элементы массива:" << endl; 
    for (int i=0;i<n;i++) 
 
{ 
   cout << "a [" << i + 1 << "]" << ": "; 
   cin >> a1[i]; 
} 
cout << fun(a1,n); 
cout << endl; 
system("pause"); 
return 0; 
} 
case 2: 
{ 
    double *a2= new double [n];
    cout << "Введите элементы массива:" << endl; 
    for (int i=0;i<n;i++) 
 
{ 
   cout << "a [" << i + 1 << "]" << ": "; 
   cin >> a2[i]; 
} 
cout << fun(a2,n); 
cout << endl; 
system("pause"); 
return 0;
}
case 3: 
{ 
    char *a3= new char [n];
    cout << "Введите элементы массива:" << endl; 
    for (int i=0;i<n;i++) 
 
{ 
   cout << "a [" << i + 1 << "]" << ": "; 
   cin >> a3[i]; 
} 
cout << fun3(a3,n); 
cout << endl; 
system("pause"); 
return 0; 
}
 
} 
system("pause"); 
return 0; 
} 
 
int fun (int *a1, int n) 
{ 
{for (int i=0;i<n;i++)
        if (a1[i] == 0)
{for (int j = i; j < n-1; j++)
        cout << a1[j+1]<<endl;}
        return (0);
}
 
} 
 
double fun (double *a2, double n) 
{ 
{for (int i=0;i<n;i++)
        if (a2[i] == 0)
{for (int j = i; j < n-1; j++)
        cout << a2[j+1]<<endl;}
        return (0);
}
} 
int fun3 (char *a3, char n) 
{ 
for (int i=0;i<n;i++)
        if (a3[i] == 0)
{for (int j = i; j < n-1; j++)
{
{    cout << a3[j+1]<<endl;}
        return (0);
}
}
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2017, 23:44
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Массивы. Перегрузка функции (C++):

Перегрузка в виде метода VS Перегрузка в виде функции друг - C++
Привет! Собственно сабж: В каких случаях используется перегрузка в виде метода, а когда в виде функции друг? Добавлено через 4...

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

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

Указатели и массивы. Индексация с помощью указателей. Передача массивов в функции. Динамические массивы (обработка матриц) - C++
Для каждого элемента , bij, i= 1,...,n , j=1,...,n определяется свой многоугольник местонахождением соответствующего элемента aij (см....

Перегрузка операторной функции и функции ! - C++
3.16Разработать класс ThreeAngle для работы с плоскими треугольниками. В качестве членов-данных задаются длины трех сторон треугольника....

Перегрузка функции - C++
Доброго времени суток Допустим, есть перегруженная функция void func(long f, long g, int q){cout&lt;&lt;&quot;1&quot;;} void func(long f, int g,...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2017, 23:44
Привет! Вот еще темы с ответами:

Перегрузка функции - C++
Люди-программеры, помогите ,пожалуйста, с решением задачи:wall: Создайте функцию promt() для выдачи подсказки пользователю и ожидания...

Перегрузка функции - C++
Сделать перегрузку для функции : для всех|x|&lt;1 arctg x=x-x^3/3+x^5/5..... аргументом функции является переменная х,а граница ряда...

Перегрузка функции - C++
Написать перегрузку функции: 1. а) Для массива целых чисел находит середнее арифметическое б) Для строки находит количество букв,...

Перегрузка функции - C++
Добрый день. Не могу решить до конца задачу. Суть в том что бы передать значения в функцию, сделать с ними что то и вернуть значение....


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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