С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
1 / 1 / 1
Регистрация: 09.12.2014
Сообщений: 105

Функция нахождения в целочисленных массивах элементов кратных трем

18.02.2015, 18:43. Показов 2967. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Условие-найти из целочисленных массивов А[15] B[20] C[25] элементы кратные 3
Выскакивает вот такая проблема: invalid types float[int] for array subscript в 10,28 и 46 строках.В чем ошибка?
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
#include <iostream>
#include <stdio.h>
#include <math.h>
 
int pr(float A)
{
    int i;
    for(i=0;i<15;i++)
    {
        if(A[i]%3==0)
        {
        return 0;
        }
        else
        {
        return 1;
        }
 
    }
 
    return 0;
}
int pr1(float B)
{
    int m;
    for(m=0;m<20;m++)
    {
        if(B[m]%3==0)
        {
        return 0;
        }
        else
        {
        return 1;
        }
 
    }
 
    return 0;
}
int pr2(float C)
{
    int n;
    for(n=0;n<25;n++)
    {
        if(C[n]%3==0)
        {
        return 0;
        }
        else
        {
        return 1;
        }
 
    }
 
    return 0;
}
 
void main()
{
    float A[15];
    float B[20];
    float C[25];
    int i,m,n;
    for(i=0;i<15;i++)
    for(m=0;m<20;m++)
    for(n=0;n<25;n++)
    {
        {
            A[i]=rand()%21; //0...20
            B[m]=50+rand()%51; //50...100
            C[n]=100+rand()%31;//100...130
        }
        cout<<"massiv iz 15 elementov /n";
        for(i=0;i<15;i++)
        {
            cout<<A[i]<<" ";
        }
        cout<<"massiv iz 20 elementov /n";
        for(m=0;m<20;m++)
        {
            cout<<B[20]<<" ";
        }
        cout<<"massiv iz 25 elementov /n";
        for(n=0;n<25;n++)
        {
            cout<<C[n]<<" ";
        }
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.02.2015, 18:43
Ответы с готовыми решениями:

Программа для нахождения суммы элементов целочисленных массивов, кратных трем
Составьте программу для нахождения суммы элементов цело- численных массивов A(15),B(20),C(25), кратных трем.

Вывести на экран элементы целочисленных матриц, кратных трем
написать программу для решения следующей задачи: вывести на экран элементы целочисленных матриц N(6,8) и M(4,7) кратных трем

Составить программу нахождения суммы всех чисел кратных трем от 10 до N
Составить программу нахождения суммы всех чисел кратных трем от 10 до N.

16
18 / 18 / 24
Регистрация: 21.06.2014
Сообщений: 147
18.02.2015, 18:52
Ошибка в том что вы не правильно передаете массив в функции

Добавлено через 1 минуту
вы даже не вызываете их, если что
0
1 / 1 / 1
Регистрация: 09.12.2014
Сообщений: 105
18.02.2015, 18:53  [ТС]
Ну так,как передать правильно?
0
Модератор
Эксперт по электронике
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,854
18.02.2015, 18:53
Цитата Сообщение от Avtarkia Посмотреть сообщение
int pr(float A)
C++
1
int pr(float *A)
Это для начала
а теперь еще одно % для float не существует, ну нет у дробного числа понятия остатка
0
1 / 1 / 1
Регистрация: 09.12.2014
Сообщений: 105
18.02.2015, 18:54  [ТС]
Помогите написать правильно пожалуйста
0
18 / 18 / 24
Регистрация: 21.06.2014
Сообщений: 147
18.02.2015, 18:55
тут все переделывать надо, походу

Добавлено через 39 секунд
просто скинь задание, попробую сделать)) только полностью
0
Модератор
Эксперт С++
 Аватар для zss
13770 / 10963 / 6491
Регистрация: 18.12.2011
Сообщений: 29,240
18.02.2015, 18:57
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
#include <iostream>
#include <stdio.h>
#include <math.h>
using namespace std;
int pr(int* A)
{
    for(int i=0;i<15;i++)
    {
        if(A[i]%3==0)// код выполнится только для A[0]. 
            return 0;
        else
            return 1; 
    }
 
    return 0;// недостижимый код
}
int pr1(int* B)
{
    for(int m=0;m<20;m++)
    {
        if(B[m]%3==0)// код выполнится только для B[0]. 
        {
            return 0;
        }
        else
        {
            return 1;
        }
    }
    return 0;// недостижимый код
}
int pr2(int* C)
{
    int n;
    for(n=0;n<25;n++)
    {
        if(C[n]%3==0)//код выполнится только для C[0]. 
            return 0;
        else
            return 1;
    }
    return 0; // недостижимый код
}
 
int main()
{
    int A[15],B[20],C[25];
    int i,m,n;
    for(i=0;i<15;i++)
        A[i]=rand()%21; //0...20
    for(m=0;m<20;m++)
        B[m]=50+rand()%51; //50...100
    for(n=0;n<25;n++)
        C[n]=50+rand()%51; //50...100
    cout<<"massiv iz 15 elementov\n";
    for(i=0;i<15;i++)
    {
        cout<<A[i]<<" ";
    }
    cout<<"\nmassiv iz 20 elementov\n";
    for(m=0;m<20;m++)
    {
        cout<<B[i]<<" ";
    }
    cout<<"\nmassiv iz 25 elementov\n";
    for(n=0;n<25;n++)
    {
        cout<<C[n]<<" ";
    }
    cout<<endl;
    system("pause");
    return 0;
}
Функции pr,pr1,pr2 какие-то стрёмные у Вас.
К тому же они нигде не вызываются.
0
1 / 1 / 1
Регистрация: 09.12.2014
Сообщений: 105
18.02.2015, 19:00  [ТС]
Поменяю float на int

Добавлено через 1 минуту
Программирование с использованием процедур.
Составьте программу для нахождения элементов целочисленных массивов А(15), В(20), С(25) кратных трем

Добавлено через 28 секунд
Поможете?

Добавлено через 2 минуты
ПРосто я новичек,и писать программы с процедурами(подпрограммами) не умею
0
Модератор
Эксперт С++
 Аватар для zss
13770 / 10963 / 6491
Регистрация: 18.12.2011
Сообщений: 29,240
18.02.2015, 19:04
Лучший ответ Сообщение было отмечено Avtarkia как решение

Решение

Вот более-менее правильный код
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
#include <iostream>
using namespace std;
void pr(int* A,int n)
{
    for(int i=0;i<n;i++)
    {
        if(A[i]%3==0)
            cout<<A[i]<<" ";
    }
    cout<<endl;
}
void SetValue(int* A,int n)
{
    for(int i=0;i<n;i++)
        A[i]=rand()%21; //0...20
}
void PrintValue(int* A,int n)
{
    for(int i=0;i<n;i++)
        cout<<A[i]<<' ';
    cout<<endl;
}
int main()
{
    int A[15],B[20],C[25];
    SetValue(A,15);
    SetValue(B,20);
    SetValue(C,25);
    cout<<"massiv iz 15 elementov\n";
    PrintValue(A,15);
    cout<<"\nmassiv iz 20 elementov\n";
    PrintValue(B,20);
    cout<<"\nmassiv iz 25 elementov\n";
    PrintValue(C,25);
    cout<<endl;
    cout<<"massiv iz 15 elementov %3\n";
    pr(A,15);
    cout<<"\nmassiv iz 20 elementov %3\n";
    pr(B,20);
    cout<<"\nmassiv iz 25 elementov %3\n";
    pr(C,25);
    system("pause");
    return 0;
}
0
26 / 26 / 18
Регистрация: 16.01.2014
Сообщений: 161
18.02.2015, 19:06
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main(void) {
int A[15], B[20], C[25];
int i;
for(int i = 0; i < 15; i++)
A[i] = rand()%21;
for(int i = 0; i < 20; i++)
B[i] = rand()%51;
for(int i = 0; i < 25; i++)
C[i] = rand()%31;
 
for(i = 0; i < 15; i++)
if(!A[i]%3) cout << A[i];
for(i = 0; i < 20; i++)
if(!B[i]%3) cout << B[i];
for(i = 0; i < 25; i++)
if(!C[i]%3) cout << C[i];
return 0;
0
1 / 1 / 1
Регистрация: 09.12.2014
Сообщений: 105
18.02.2015, 19:17  [ТС]
Для меня трудновато PrintValue, SetValue. Нельзя ли поменять их на cout и cin??

Добавлено через 2 минуты
К тому же вот тут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void pr(int* A,int n)
{
    for(int i=0;i<n;i++)
    {
        if(A[i]%3==0)
            cout<<A[i]<<" ";
    }
    cout<<endl;
}
void SetValue(int* A,int n)
{
    for(int i=0;i<n;i++)
        A[i]=rand()%21; //0...20
}
void PrintValue(int* A,int n)
{
    for(int i=0;i<n;i++)
        cout<<A[i]<<' ';
    cout<<endl;
}
откуда взялась n?Она ведь нигде не задаеться.До какого значения будет i?
0
Модератор
Эксперт С++
 Аватар для zss
13770 / 10963 / 6491
Регистрация: 18.12.2011
Сообщений: 29,240
18.02.2015, 19:18
У Вас задача - создание собственных функций.
Вот Вы и будете иметь их аж три!
0
18 / 18 / 24
Регистрация: 21.06.2014
Сообщений: 147
18.02.2015, 19:19
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
#include <iostream>
#include <iomanip>
#include <cstdlib>
 
using namespace std;
 
void cozd(int [], int);
void naxoz(int [], int);
 
int main()
{
    int A[15] = {0}, B[20], C[25];
    cout<<"Massiv:\n";
    cozd(A, 15);
    naxoz(A, 15);
    cout<<"Massiv:\n";
    cozd(B, 20);
    naxoz(B, 20);
    cout<<"Massiv:\n";
    cozd(C, 25);
    naxoz(C, 25);
 
 
}
 
void cozd(int mass[], int a)
{
    for(int i(0); i < a; i++)
    {
        mass[i] = rand() % 100;
    }
}
 
void naxoz(int mass[], int a)
{
    for(int i(0); i < a; i++)
        cout<<mass[i]<<"  ";
 
    cout<<endl;
cout<<"Kratnoe 3: \n";
     for(int i(0); i < a; i++)
    if(mass[i] % 3 == 0 && mass[i] != 0)
        cout<<mass[i]<<"  ";
        cout<<endl<<endl;
}
0
Модератор
Эксперт С++
 Аватар для zss
13770 / 10963 / 6491
Регистрация: 18.12.2011
Сообщений: 29,240
18.02.2015, 19:20
n - формальный параметр функции, при вызове он заменяется фактическим значением.
SetValue(A,15); <-n=15
SetValue(B,20);<-n=20
SetValue(C,25);<-n=25
0
18 / 18 / 24
Регистрация: 21.06.2014
Сообщений: 147
18.02.2015, 19:20
рабочая. Можно немного подкоректировать вывод более красиво
0
1 / 1 / 1
Регистрация: 09.12.2014
Сообщений: 105
18.02.2015, 19:24  [ТС]
Получаеться для B и C нужно делать также как вы сделали A?

Добавлено через 2 минуты
Как вы сделали,что вычислял сразу для В и С?Объясните пжл
0
Модератор
Эксперт С++
 Аватар для zss
13770 / 10963 / 6491
Регистрация: 18.12.2011
Сообщений: 29,240
18.02.2015, 19:27
То же самое. A,B,C из main являются фактическими параметрами
для формального параметра A(это имя A случайно совпало с именем A из main)
при вызове этих функций.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.02.2015, 19:27
Помогаю со студенческими работами здесь

Дан одномерный массив состоящий из N целочисленных элементов. Вычислить сумму положительных элементов массива кратных 3
если не сложно помогите 1)дана функция y=0.5+sin(5x), причем х изменяется от 0 до 2pi с шагом x=pi/6!(программа не выводит результата...

Задать случайным образом одномерный массив из 18 целочисленных элементов, принадлежащих отрезку [-14;14]. Найти сумму элементов массива, кратных пяти.
Помогите пожалуйста написать прогу в паскале: задать случайным образом одномерный массив из 18 целочисленных элементов, принадлежащих...

В заданном массиве из N элементов найти наименьший среди элементов кратных трем
В заданном массиве из N элементов найти наименьший среди элементов кратных трем, расположенных до первого отрицательного.

Найти сумму элементов массива, кратных трем, и произведение элементов с нечетными индексами
Дан массив Ненулевых целых чисел. Найти СУММУ элементов массива, кратных ТРЕМ, и произведение с нечетными индексами. P.S.: очень срочно...

Найти количество элементов кратных трем
Найти для каждой строки количество элементов, кратных трем, и самый большой из полученных результатов. 1) Использовать функции. 2) В...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru