Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 26, средняя оценка - 4.65
agen13
4 / 3 / 1
Регистрация: 02.10.2008
Сообщений: 5
#1

Найти числа из массива кратных 3 - C++

30.10.2008, 19:15. Просмотров 3919. Ответов 11
Метки нет (Все метки)

Я написал прогу "найти числа из массива кратных 3"

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h><math.h>
main()
{
int a[10],i,s;
printf("\n 3adaite 4isla: \n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++){
if(a[i]%3==0)
s++;
}
printf("\n kolvo chisel kratnblh 3 v dannom massive,%d chisel",s);
}
Но училке стало мало и она просит переделать в функцию
Вот попробовал чето накропать, но ответа недает =(
Помогите найти ошибки:'(

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h><math.h>
main()
{
int s,x,i,math(int),a[10];
printf("\n 3adaite 4isla: \n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
s=math(x);
printf("\n kolvo chisel kratnblh 3 v dannom massive,%d chisel",s);
int getch()
}
math(int)
{
int a[10],i,x;
for(i=0;i<10;i++)
if(a[i]%3==0)
x++;
return x;
}
Зарание СПС
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.10.2008, 19:15     Найти числа из массива кратных 3
Посмотрите здесь:
C++ Вывести на экран целые числа от 1 до 20 за исключением чисел, кратных 3, но не кратных 5
C++ Найти произведение элементов массива кратных 3-м
Найти произведение элементов массива кратных 3 C++
C++ Найти количество положительных элементов массива кратных 5
Найти сумму всех элементов массива, кратных 4 C++
Найти сумму всех элементов массива, кратных 4 C++
Найти количество и сумму элементов массива, кратных 7 C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Lord_Voodoo
Супер-модератор
8584 / 2184 / 61
Регистрация: 07.03.2007
Сообщений: 10,868
Завершенные тесты: 1
30.10.2008, 19:18     Найти числа из массива кратных 3 #2
пардон, а что у тебя функция возвращает? math(int)... да и неплохо было бы массив передавать в качестве параметра
XuTPbIu_MuHTAu
Эксперт С++
2224 / 739 / 10
Регистрация: 27.05.2008
Сообщений: 1,508
30.10.2008, 19:21     Найти числа из массива кратных 3 #3
1. перед мейном нужен прототип math();
2. перед названием math должен быть возвращаемый тип.
3. Ты не передаешь в math массив.Он обрабатывает мусор в памяти,а не введенный массив
Vourhey
Почетный модератор
6477 / 2252 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
30.10.2008, 19:23     Найти числа из массива кратных 3 #4
Не понятно.
1. как она компилируется вообще? вот это
Код
int getch()
}
в частности.
2.
Код
math(int)
где имя параметра? Слушай, если мы в функцию что-то передаем, то почему нигде не используем?
Lord_Voodoo
Супер-модератор
8584 / 2184 / 61
Регистрация: 07.03.2007
Сообщений: 10,868
Завершенные тесты: 1
30.10.2008, 19:31     Найти числа из массива кратных 3 #5
ладно, по крайней мере пробывал, попробуй теперь так:
Код
#include <stdio.h>
<math.h>
int math(int*a)
{
int x = 0;
for(int i=0;i<10;i++)
if(a[i]%3==0)
x++;
return x;
}
main()
{
int s;
int a[10] = new int(10);
printf("\n 3adaite 4isla: \n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
s=math((int*)a);
printf("\n kolvo chisel kratnblh 3 v dannom massive,%d chisel",s);
getch();
}
Добавлено через 4 минуты 26 секунд
Vourhey, math(int) - это еще ладно, а как тебе описание прототипа:
Код
int s,x,i,math(int),a[10];
Vourhey
Почетный модератор
6477 / 2252 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
30.10.2008, 19:34     Найти числа из массива кратных 3 #6
Цитата Сообщение от WooDooMan Посмотреть сообщение
Добавлено через 4 минуты 26 секунд
Vourhey, math(int) - это еще ладно, а как тебе описание прототипа:
Код
int s,x,i,math(int),a[10];
Точно . Не смотрел туда...
agen13
4 / 3 / 1
Регистрация: 02.10.2008
Сообщений: 5
30.10.2008, 20:45  [ТС]     Найти числа из массива кратных 3 #7
Спсибо =))))))))))))))

Добавлено через 20 минут 40 секунд
попробуй теперь так:
Чет не хочет =(

Добавлено через 49 минут 20 секунд
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <math.h>
int math(int*a)
{
int x = 0;
for(int i=0;i<10;i++)
if(a[i]%3==0)
x++;
return x;
}
main()
{
int s,i,a[10],math(int*a);
printf("\n 3adaite 4isla: \n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
s=math(a);
printf("\n kolvo chisel kratnblh 3 v dannom massive,%d chisel",s);
int getch();
return s;
}
Вот у меня заработало =)
Lord_Voodoo
Супер-модератор
8584 / 2184 / 61
Регистрация: 07.03.2007
Сообщений: 10,868
Завершенные тесты: 1
31.10.2008, 09:34     Найти числа из массива кратных 3 #8
ну я писал без проверки, поправил самые явные ошибки с моей точки зрения
вот рабочий код, на компилятор еще пока не тяну:
Код
#include <iostream>
#include <conio.h>
using namespace std;
int math(int*a)
{
int x = 0;
for(int i=0;i<10;i++)
if(a[i]%3==0)
x++;
return x;
}
main()
{
int s;
int* a = new int(10);
printf("\n 3adaite 4isla: \n");
for(int i=0;i<10;i++)
  cin>>a[i];
s=math(a);
printf("\n kolvo chisel kratnblh 3 v dannom massive,%d chisel",s);
getch();
}
int getch(); - это бесмысленный код, потому что это объявление функции, но не ее вызов, тем более, что компилятор это пропустил именно потому, что думал, что это объявление функции, т.к. getch находится в хидере conio...
math(int*a) - не понимаю, но верую... не знаю, почему это корректно, может кто другой объяснит...
Spo1ler
292 / 52 / 3
Регистрация: 22.05.2008
Сообщений: 788
31.10.2008, 09:51     Найти числа из массива кратных 3 #9
"найти числа из массива кратных 3". Повеселило, "числа кратных трем"? Аффтор спит на русском?
А с первоначального кода аффтора я вообще истерически смеялся минут пять. %) %)
Lord_Voodoo
Супер-модератор
8584 / 2184 / 61
Регистрация: 07.03.2007
Сообщений: 10,868
Завершенные тесты: 1
31.10.2008, 10:51     Найти числа из массива кратных 3 #10
Spo1ler, а знаешь, что его последний код работает, хотя я свято верил, что компилер такого издевательства над собой не позволит...
никак не пойму, как он пропускает такой код:
Код
int s,i,a[10],math(int*a);
Joker
18 / 18 / 0
Регистрация: 29.10.2008
Сообщений: 99
31.10.2008, 10:53     Найти числа из массива кратных 3 #11
извини я C и C++ не знаю.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.10.2008, 11:07     Найти числа из массива кратных 3
Еще ссылки по теме:
Заполнить массив А(10) случайными числами. Подсчитать и вывести на экран количество элементов массива, кратных 7 и не кратных 3 C++
Шаблон функции: найти сумму элементов массива, кратных 3 C++
C++ Дан массив A[n][n]. Найти сумму элементов массива кратных 3
C++ Отсортировать массив по убыванию и найти количество и произведение элементов массива кратных 5
Определить, имеются ли в заданной последовательности 4 подряд идущих числа, кратных 7; найти сумму таких чисел C++

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

Или воспользуйтесь поиском по форуму:
Lord_Voodoo
Супер-модератор
8584 / 2184 / 61
Регистрация: 07.03.2007
Сообщений: 10,868
Завершенные тесты: 1
31.10.2008, 11:07     Найти числа из массива кратных 3 #12
Joker, уважаемый пока устно - не знаете, не пишите, или вы кол-во постов решили быстро набрать... это неприемлимое поведение, как по мне...
Yandex
Объявления
31.10.2008, 11:07     Найти числа из массива кратных 3
Ответ Создать тему
Опции темы

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