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

Проблемы с кодом, не могу перенести массив в функцию с другой

12.02.2020, 21:47. Показов 1244. Ответов 4

Студворк — интернет-сервис помощи студентам
функцию F1 с передачей в нее массива, которая произведет над массивом определенную операцию. Функция не должна возвращать значений.
Вот код
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
#include <iostream>
 
using namespace std;
 
 
int f1()
{
    cout<<print;
    int maxcount(1), nn(-1);
    //перебираем все элементы массива
    for (int i = 0; i < n; i++)
    {
        int count(0);
        //перебираем все элементы от i до конца
        for (int j = i; j < n; j++)
            //если элемент i совпадает с одним из последующих (j), то увеличиваем число
            if (mass[i] == mass[j])
                count++;
 
        //если число больше ранее сохраненного - перезаписываем
        if (maxcount < count)
        {
            maxcount = count;
            nn = i;
        }
    }
    
    //выводим
    if (nn > -1)
        //значение
        cout << endl << mass[nn] << endl;
    else
        //или то, что повторяющихся элементов нет
        cout << endl << "Таких чисел нет" << endl;
 
 
    system("pause");
    return 0;
}
void print()
{
    int n;
    cin>>n;
     int* mass=new int[n];
    for (int i = 0; i < n; i++)
    {
        mass[i] = rand()%100;
        cout << mass[i] << " ";
    }
}
Уже много чего пробовал, но не выходит передать массив в f1
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.02.2020, 21:47
Ответы с готовыми решениями:

Из массива перенести четные элементы в другой массив.А нечетные перенести в другой массив
#include &lt;iostream&gt; #include &lt;locale.h&gt; using nmespace std; main () { int x; int z; int mas; int mas1; int mas2; ...

Дан массив из 10 элементов.Перенести в один другой массив четные числа.Затем перенести в еще один другой масси
Дан массив из 10 элементов.Перенести в один другой массив четные числа.Затем перенести в еще один другой массив нечетные числа.Помогите с...

Перенести в один другой массив четные числа.Затем перенести в еще один другой массив нечетные числа.
Дан массив из 10 элементов.Перенести в один другой массив четные числа.Затем перенести в еще один другой массив нечетные числа.Помогите с...

4
337 / 237 / 103
Регистрация: 26.03.2019
Сообщений: 407
12.02.2020, 22:00
Лучший ответ Сообщение было отмечено Rfhcfh как решение

Решение

Функция f1:
C++
1
2
3
4
void f1(int *mass, int n)
{
...
}
Какая-то функция, откуда вызывается f1:
C++
1
2
3
4
5
6
7
int n;
cin >> n;
int *mass = new int[n];
//заполнение массива
...
f1(mass, n); //вызов функции f1
...
0
0 / 0 / 0
Регистрация: 10.02.2020
Сообщений: 14
12.02.2020, 22:11  [ТС]
Спасибо огромное) Все работает вод код
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
#include <iostream>
 
using namespace std;
 
 void f1(int *mass, int n)
{
    cin>>n;
    for (int i = 0; i < n; i++)
    {
        mass[i] = rand()%100;
        cout << mass[i] << " ";
    }
}
 
int main()
{
    int n;
    int *mass = new int[n];
    f1(mass, n);
    int maxcount(1), nn(-1);
    //перебираем все элементы массива
    for (int i = 0; i < n; i++)
    {
        int count(0);
        //перебираем все элементы от i до конца
        for (int j = i; j < n; j++)
            //если элемент i совпадает с одним из последующих (j), то увеличиваем число
            if (mass[i] == mass[j])
                count++;
 
        //если число больше ранее сохраненного - перезаписываем
        if (maxcount < count)
        {
            maxcount = count;
            nn = i;
        }
    }
    
    //выводим
    if (nn > -1)
        //значение
        cout << endl << mass[nn] << endl;
    else
        //или то, что повторяющихся элементов нет
        cout << endl << "Таких чисел нет" << endl;
 
    return 0;
}
0
337 / 237 / 103
Регистрация: 26.03.2019
Сообщений: 407
12.02.2020, 22:31
Rfhcfh, если вы вводите n в функции, то нужно передавать через указатель или по ссылке, иначе в main n не изменится. И n должно быть известно до выделения памяти. Т.е. нужно либо вводить n в main, либо передавать по ссылке и n, и сам массив(чтобы можно было использовать new сразу в функции). Но второй вариант некрасивый, если выделять память в функции, то лучше чтобы она возвращала указатель на выделенную память.
Первый вариант будет выглядеть как-то так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void f1(int *mass, int n)
{
    for (int i = 0; i < n; i++)
    {
        mass[i] = rand()%100;
        cout << mass[i] << " ";
    }
}
int main()
{
    int n;
    cin >> n;
    int *mass = new int[n];
    f1(mass, n);
    ...
    delete [] mass; //не забываем освобождать память
}
1
0 / 0 / 0
Регистрация: 21.04.2020
Сообщений: 1
21.04.2020, 11:46
123v4523b4634n645n6
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.04.2020, 11:46
Помогаю со студенческими работами здесь

Не могу перенести Type в другой Unit
Хочу перенести код из одного Unit в другой, но при переносе ругается на первый Array в OpenArray = Array of Char и на границу в Symbols:...

Перенести простые числа в другой массив
Есть масив из 1000 елементов, нужно разделить его так что бы простые числа были в одном масиве а все остальные числа в другом

Перенести массив из одного метода в другой
Всем привет, только начал учить язык, такая проблема: Есть форма и две кнопки. При нажатии первой кнопки генерируется массив, который...

Ненулевые элементы массива перенести в другой массив, расположить их в обратном порядке
Создать и вывести массив Zi с элементами z=5ab–4; a += (Math.Cos(Math.Abs(2 * i)) / 1.12 - Math.Cos(3 * i - 2) + 6.15); b *=...

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


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru