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

Ошибка "аргумент типа bool несовместим с параметром int*"

10.02.2022, 15:50. Показов 1180. Ответов 5

Студворк — интернет-сервис помощи студентам
У меня есть код, где ты выбираешь тип массива, потом то что ты хочешь с ним сделать(это вырезка из кода, поэтому там сначала идет if и есть свичкейс).Мы делаем статический массив, и хотим чтобы программа вывела те индексы массива, значение которых совершенные. Я это сделал, но у меня выбивает ошибки аргумент типа bool несовместим с параметром int*. И perfectnum индефикатор не найден. Помогите плиз решить проблему

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
main(){
//ляляяля много вяского
if (massiv == 1) {
const int Len = 1000; 
int i, elements;
cout « "Введите длину массива" « endl;
cout « "---------------------------" « endl;
int array_s[Len]; //создаем массив с большим размером
cin » elements;
cout « "---------------------------" « endl;
cout « "Введите числа" « endl;
cout « "---------------------------" « endl;
if (elements > 0 && elements < Len) {   
for (i = 0; i < elements; i++) {            
cin » array_s[i];
}}
int x;
cin » x;
switch (x) {
case 1:
for (i = 0; i < elements; i++) {
int *num = &array_s[i];
if (perfectnum(true)) {               //НЕ РАБОТАЕТ ТУТ
cout « "Значение массива с идексом" « i « "совершенный";
}
else {
continue
}}
break;
}} 
//main() закрылся
 
bool perfectnum(int *num) { 
int sum = 0; 
for (int j = 1; j < *num; j++) {
if (*num % j == 0) {
sum += j;
}
if (sum == *num) return true; 
return false;
}}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.02.2022, 15:50
Ответы с готовыми решениями:

Ошибка "Аргумент типа int несовместим с параметром типа int". Буду признателен за подсказку!
Прошу не судить строго, только начинаю программировать, нужна помощь. int Zapol_Funkcii(int arr,const int ROWS,const int COLS) { ...

Аргумент типа "int **" несовместим с параметром типа " *int(*)[1200] "
аргумент типа &quot;int **&quot; несовместим с параметром типа &quot; *int(*) &quot; в 48 строке #include &lt;iostream&gt; #include &lt;chrono&gt; ...

E0167 аргумент типа "int" несовместим с параметром типа "int (*)[3]"
Дана матрицы А(3,3). В матрице поменять местами элементы, стоящие на главной и побочной диагонали. Оформить в виде отдельной функции ...

5
2393 / 1913 / 763
Регистрация: 27.07.2012
Сообщений: 5,558
10.02.2022, 15:57
Ну собственно, всё сказано самим компилятором. У вас perfectnum принимает указатель, а вы в него передаёте true зачем-то.

Добавлено через 1 минуту
Подозреваю, что должно было быть:
C++
1
2
int *num = &array_s[i];
if (perfectnum(num)) {               // <-- ТУТ
0
Модератор
Эксперт CЭксперт С++
 Аватар для Volga_
5208 / 2925 / 1509
Регистрация: 14.12.2018
Сообщений: 5,266
Записей в блоге: 1
10.02.2022, 16:01
Цитата Сообщение от AzaZloqi Посмотреть сообщение
«
Цитата Сообщение от AzaZloqi Посмотреть сообщение
»
Это что ?
Вот правильно: << и >>
0
0 / 0 / 0
Регистрация: 31.10.2021
Сообщений: 12
10.02.2022, 16:47  [ТС]
полагаю что это особенность сайта такая

Добавлено через 3 минуты
а как тогда прописать что "если эта функция возвращает тру, то выводим номер индекса"?
да и вставив туда num, один фиг функцию не видит
0
2393 / 1913 / 763
Регистрация: 27.07.2012
Сообщений: 5,558
10.02.2022, 16:52
Цитата Сообщение от AzaZloqi Посмотреть сообщение
да и вставив туда num, один фиг функцию не видит
Функция должна быть объявлена до места её вызова. Либо перенесите всю её до main(), либо добавьте до места вызова bool perfectnum(int *);.
Цитата Сообщение от AzaZloqi Посмотреть сообщение
а как тогда прописать что "если эта функция возвращает тру, то выводим номер индекса"?
Это у вас уже и так прописано в if (perfectnum(num)).
0
0 / 0 / 0
Регистрация: 31.10.2021
Сообщений: 12
10.02.2022, 17:34  [ТС]
Так, поехали дальше)
Оно начало работать, но... при вводе любых чисел прога выводит единицу, улетает в самое начало main() и продолжает туда что-то писать(прога выводит то что в меню выбора массивов нет такого значения)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.02.2022, 17:34
Помогаю со студенческими работами здесь

Ошибка в коде: аргумент типа "const char *" несовместим с параметром
Выдает ошибку: аргумент типа &quot;const char *&quot; несовместим с параметром типа &quot;char *&quot; Вот код, расскажите пожалуйста, как исправить? ...

Аргумент типа "int **" несовместим с параметром типа "int (*)[26]"
Здравствуйте. Я не могу передать динамический двумерный массив в функцию. Как это можно сделать? И как можно нормально объявить массив ?...

Аргумент типа char * несовместим с параметром типа lpcwstr
Как решить ошибку компиляции, на втором компьютере студия ошибок не вызывает, что странно. #include &lt;iostream&gt; #include...

Ошибка: аргумент типа "const char *" несовместим с параметром типа "LPCWSTR"
Здравствуйте я хочу запустить музыку в консоли с++, но мне выдает ошибку: аргумент типа &quot;const char *&quot; несовместим с параметром...

Аргумент типа несовместим с параметром типа
Писала программу в которой надо было найти минимальный корень второй производной. Она отлично работала, но меня попросили сделать эту...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru