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

Задача по одномерному массиву... - C++

Восстановить пароль Регистрация
 
P4ellka
0 / 0 / 0
Регистрация: 14.12.2009
Сообщений: 9
14.09.2011, 15:22     Задача по одномерному массиву... #1
Помогите, пожалуйста, решить задачку по работе с одномерными массивами на С. Только индек-
сацию вида A[i] или *(A+i) использовать нельзя. Можно только продвижение указателей через
операторы сложения или инкременты, и оператор *.
Задача состоит в том, что нужно вычислить сумму отрицательных элементов массива и произведение элементов массива, расположенных между минимальным и максимальным элементами. Массив из n вещественных элементов.
В С вообще не разбираюсь =( .. А программист дал задание, заставил решать...
Если кому нетрудно, помогите пожалуйста...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.09.2011, 15:22     Задача по одномерному массиву...
Посмотрите здесь:

задача по двумерному массиву. C++
C++ В одномерному массиве найти максимальный по модулю елемент среди отрицательних(срочно)
C++ Вопрос по массиву.
C++ Помогите пожалуйста по Одномерному массиву длинных целых чисел!!!
задача на тему массиву.помогите программу написать C++
C++ написать функцию по одномерному массиву, которая среди элементов находят сумму кратных введённому числу k
C++ Задача по одномерному массиву
C++ Сопоставьте одномерному массиву a[n] другой одномерный массив f[n], элементы которого вычисляются по формуле

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
grrrrr
 Аватар для grrrrr
45 / 45 / 7
Регистрация: 21.04.2009
Сообщений: 265
14.09.2011, 16:31     Задача по одномерному массиву... #2
так пойдет? правда не компил
C++
1
2
3
4
5
6
7
8
9
int arr[10] = {-1, 6, 0, 3, 9, 6, 7, -9, 2, -5};
int n=0;
int s=0;
 
while(n<10)
{
   if(*arr<0) s += *arr;
   n++;
}
Сыроежка
Заблокирован
14.09.2011, 19:53     Задача по одномерному массиву... #3
Цитата Сообщение от grrrrr Посмотреть сообщение
так пойдет? правда не компил
C++
1
2
3
4
5
6
7
8
9
int arr[10] = {-1, 6, 0, 3, 9, 6, 7, -9, 2, -5};
int n=0;
int s=0;
 
while(n<10)
{
   if(*arr<0) s += *arr;
   n++;
}
Нет, так не пойдет, так как вы не инкриментируете указатель в цикле. Поэтому лучше написать

C++
1
2
3
4
for ( int *p = arr ; n < 10 ; n++, p++ )
{
   if ( *p < 0 ) s += *p;
}
Yandex
Объявления
14.09.2011, 19:53     Задача по одномерному массиву...
Ответ Создать тему
Опции темы

Текущее время: 04:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru