Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.03.2018, 14:58   #1
nura satre
Пользователь
 
Регистрация: 10.03.2018
Сообщений: 26
По умолчанию передача массивов в функции

Дано линейный массив действительных чисел. Найти элементы массива,которые не больше 3 и подсчитать их количество.
Код программы:
Код:
#include <iostream>
#include <time.h>
using namespace std;
void print_mas(int *a, int n)
{
for(int i=0;i<n;i++)
cout<<a[i]<<' ';
cout<<endl;
}
void fill_mas(int* a, int n)
{
srand((unsigned)time(NULL));
for(int i=0;i<n;i++)
a[i]=rand()%100-50;
}
int sum_kratnih(int* a, int n)
{
int s=0;
for(int i=0;i<n;i++)
if(a[i]<3)s+=a[i];
return s;
}
int main()
{
int p;
cin>>p;
int mas[p];
fill_mas(mas, p);
print_mas(mas, p);
cout<<sum_kratnih(mas, p)<<endl;
}
Выбивает ошибку вот на этом месте
Код:
srand((unsigned)time(NULL));
for(int i=0;i<n;i++)
a[i]=rand()%100-50;
'srand'was not declared in this scope
то же и с rand

Последний раз редактировалось nura satre; 10.03.2018 в 15:31.
nura satre вне форума Ответить с цитированием
Старый 10.03.2018, 15:09   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Секретную ошибку?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 10.03.2018, 15:32   #3
nura satre
Пользователь
 
Регистрация: 10.03.2018
Сообщений: 26
По умолчанию

'srand'was not declared in this scope
то же и с rand
nura satre вне форума Ответить с цитированием
Старый 10.03.2018, 15:32   #4
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 10.03.2018, 15:36   #5
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от nura satre Посмотреть сообщение
'srand'was not declared in this scope
то же и с rand
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 10.03.2018, 15:45   #6
nura satre
Пользователь
 
Регистрация: 10.03.2018
Сообщений: 26
По умолчанию

посмотрите, пожалуйста код. я по невнимательности посчитала сумму, а надо количество элементов, которые меньше 3
как правильно записать?
nura satre вне форума Ответить с цитированием
Старый 10.03.2018, 15:54   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от nura satre Посмотреть сообщение
посмотрите, пожалуйста код. я по невнимательности посчитала сумму, а надо количество элементов, которые меньше 3
как правильно записать?
Код:
unsigned total = 0;
for (idx = 0; idx != count; idx++) if (a[idx] < 3) total++;
return total;
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 10.03.2018, 16:10   #8
nura satre
Пользователь
 
Регистрация: 10.03.2018
Сообщений: 26
По умолчанию

спасибо за помощь.
nura satre вне форума Ответить с цитированием
Старый 10.03.2018, 16:12   #9
nura satre
Пользователь
 
Регистрация: 10.03.2018
Сообщений: 26
По умолчанию

как найти среднее арифметическое всех положительных и максимального элемента массива?
есть половина кода только
nura satre вне форума Ответить с цитированием
Старый 10.03.2018, 17:12   #10
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,609
По умолчанию

Код:
float ar(int* a, int n)
{
int s=0;
int j=0;
int mx=a[0];
float sr;
for(int i=0;i<n;i++)
{
if(a[i]>0){s+=a[i]; j++;}
if(a[i]> mx) mx = a[i];
}

j++;
s+=mx;
sr = (float)s/(float)j;

return sr;
}
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ Передача массивов в функцию vlad-letchik Помощь студентам 0 10.05.2012 00:29
ПЕРЕДАЧА МАССИВОВ В ФУНКЦИИ Паркер Помощь студентам 2 29.11.2011 21:57
Передача массивов в функции. Си Alar Общие вопросы C/C++ 12 08.02.2011 13:25
Delphi передача динамических массивов world12_tk Помощь студентам 7 23.12.2009 21:06
передача двумерных массивов в функцию Wast Общие вопросы C/C++ 2 04.05.2009 23:04