Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 15.12.2019
Сообщений: 8

Подсчитать сумму элементов в массиве, являющихся точным кубом другого элемента в этом массиве

27.12.2019, 19:39. Показов 3705. Ответов 24
Метки c++ (Все метки)

Студворк — интернет-сервис помощи студентам
Требуется определить массив целых чисел (например, размера 30),
заполнить его случайными числами (в диапазоне от A до B, где A и B задаются в директивах #define) или ввести его элементы с клавиатуры и
определить его характеристики в соответствии с вариантом.
Программа должна содержать следующие функции:
• инициализация элементов массива случайными числами или вводимыми с клавиатуры;
• вывод массива на экран
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.12.2019, 19:39
Ответы с готовыми решениями:

Подсчитать количество элементов в массиве, являющихся точным квадратом другого элемента в этом массиве
Подсчитать ко-во элементов в массиве,являющихся точным квадратом другого эл-та в этом массиве. заранее спасибо) ...

Подсчитать количество элементов в массиве, являющихся точным квадратом другого элемента в этом массиве (найти ошибку)
Задание :Подсчитать количество элементов в массиве, являющихся точным квадратом другого элемента в этом массиве Что Сделал я : #include...

Создать двумерный массив 5х3 элемента, найти в этом массиве сумму всех элементов
Создать двумерный массив 5х3 элемента, найти в этом массиве сумму всех элементов.

24
0 / 0 / 0
Регистрация: 15.12.2019
Сообщений: 8
05.01.2020, 11:02  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от AndryS1 Посмотреть сообщение
А что не так? Моя функция вам не подходит?
Я не очень понимаю (из-за не особо больших знаний), как совместить вашу функцию с массивом, который задаётся по моей функции. Ведь в вашей функции нет диапазона от A до B, и числа N элементов, которые присутствуют в данном массиве. Если объясните - буду очень благодарен.
0
653 / 466 / 183
Регистрация: 23.04.2019
Сообщений: 1,987
05.01.2020, 13:43
Цитата Сообщение от cold winter Посмотреть сообщение
Я не очень понимаю
Хм, возможно стоило подписать что такое n
Цитата Сообщение от cold winter Посмотреть сообщение
Ведь в вашей функции нет диапазона от A до B
Передачу массива можно сделать двумя способами
1. Указатели begin, end
2. Указатель на начало массива, и его размер
В данном случае я выбрал второй вариант
использовать мою функцию вам нужно вот так
C++
1
2
/*В функции где вы хотите получить результат*/
sum(a,n) // где а - указатель на начало массива, n - размер массива
В функции Print это выглядит вот так
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
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 10
#define A -5
#define B 10
 
void Init(int* a, int n)
{
    int i;
    for (i = 0; i < n; i++)
        a[i] = A + rand() % (B - A + 1);
}
 
void Print(int* a, int n)
{
    int i;
    for (i = 0; i < n; i++)
        printf("%d ", a[i]);
    putchar('\n');
    std::cout << sum(a, n) << std::endl; // это вывод
}
 
int64_t sum(int* arr, size_t n)
{
    int64_t sum = 0;
    for (size_t i = 0; i < n; i++)
    {
        for (size_t j = 0; j < n; j++)
        {
            if (i != j && arr[i] == arr[j] * arr[j] * arr[j])
            {
                sum += arr[i];
                break;
            }
        }
    }
    return sum;
}
 
int main()
{
    int *a = new int[N];
    Init(a, N);
    Print(a, N);
}
0
0 / 0 / 0
Регистрация: 15.12.2019
Сообщений: 8
05.01.2020, 15:05  [ТС]
Цитата Сообщение от AndryS1 Посмотреть сообщение
В функции Print это выглядит вот так
При компиляции выдаётся ошибка:
22 строка: 'sum' не объявлена в этой области
0
653 / 466 / 183
Регистрация: 23.04.2019
Сообщений: 1,987
05.01.2020, 15:10
Прошу прощения, допишите вначале прототипы функций,
после #define B -10 на след. строчке
C++
1
2
3
int64_t sum(int* arr, size_t n);
void Print(int* a, int n);
void Init(int* a, int n);
1
0 / 0 / 0
Регистрация: 15.12.2019
Сообщений: 8
05.01.2020, 15:24  [ТС]
Спасибо большое Вам! Очень помогли. Сейчас отмечу код полностью и выложу как ответ на данный вопрос.
Ещё раз спасибо, добра Вам

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
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 10
#define A -5
#define B 10
 
int64_t sum(int* arr, size_t n);
void Print(int* a, int n);
void Init(int* a, int n);
 
void Init(int* a, int n)
{
    int i;
    for (i = 0; i < n; i++)
        a[i] = A + rand() % (B - A + 1);
}
 
void Print(int* a, int n)
{
    int i;
    for (i = 0; i < n; i++)
        printf("%d ", a[i]);
    putchar('\n');
    std::cout << sum(a, n) << std::endl; // это вывод
}
 
int64_t sum(int* arr, size_t n)
{
    int64_t sum = 0;
    for (size_t i = 0; i < n; i++)
    {
        for (size_t j = 0; j < n; j++)
        {
            if (i != j && arr[i] == arr[j] * arr[j] * arr[j])
            {
                sum += arr[i];
                break;
            }
        }
    }
    return sum;
}
 
int main()
{
    int *a = new int[N];
    Init(a, N);
    Print(a, N);
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.01.2020, 15:24

В одномерном массиве, состоящем из вещественных элементов вычислить номер минимального элемента в массиве, сумму элементов массива
В одномерном массиве, состоящем из 10 вещественных элементов вычислить: 1. Номер минимального элемента в массиве 2. Сумму...

В одномерном массиве (использовать vector) подсчитать сумму элементов после последнего положительного элемента
Здравствуйте. Очень нужна помощь в решении одной задачи. Вот сама постановка задачи: В одномерном массиве подсчитать сумму элементов...

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

Вывести количество элементов массива, которые больше предыдущего элемента в этом массиве
Сначала задано число N - количество элементов в массиве. Далее через пробел записаны N чисел - элементы массива. Необходимо вывести...

Найти среднее значение элементов двумерного массива и подсчитать, сколько в этом массиве элементов, превышающих среднее
Составить программу на Паскале. найти среднее значение элементов двумерного массива и подсчитать, сколько в этом массиве элементов,...


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

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Новые блоги и статьи
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С. Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию? Фраза «Любая достаточно развитая технология неотличима от магии». . .
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль? Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология. «Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки. Добавлены следующие реквизиты типа Булево: - Буквы; - Цифры; - Символы. Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей. Самым главным критерием для. . .
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store. И так: 1. Скачиваем с. . .
Программное добавление префикса в нумерацию документов
Maks 27.10.2026
Реализация из решения ниже выполнена в самописной конфигурации на БСП (помощь начинающему коллеге). Задача: Программно добавить префикс в нумерацию документов. Решение: В модуле объекта. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru