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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.09.2014, 01:19   #1
ProfNoob
 
Регистрация: 19.09.2014
Сообщений: 7
Вопрос Одномерный массив Pascal

Необходима помощь в решении данной задачи... Понимаю как найти локальный минимум, но не могу разобраться как найти промежуток между лок. минимумами и записать их сумму в новый массив

задача

Создать массив целых чисел B[1..N]. Сформировать новый массив, содержащий суммы элементов, расположенных между соседними локальными минимумами (локальным минимумом называется значение, соседние числа у которого больше его).
ProfNoob вне форума Ответить с цитированием
Старый 19.09.2014, 01:49   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
как найти промежуток между лок. минимумами
Если B[x1], B[x2] - твои минимумы при х1 < x2, то промежуточные элементы - это кусок массива B[x1 + 1 .. x2 - 1].
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 19.09.2014, 15:48   #3
ProfNoob
 
Регистрация: 19.09.2014
Сообщений: 7
По умолчанию

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

Цитата:
Не получается это реализовать...
Почему?
Покажи, что сделано!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 19.09.2014, 16:21   #5
ProfNoob
 
Регистрация: 19.09.2014
Сообщений: 7
По умолчанию

Код:
const N = 20; {например}
A,B:array[1..N] of integer;
i:integer;
begin 
cls;
randomize;
for i:=1 to N do B[i]=random(20);
for i:=2 to N-1 do begin{нахождение локальных минимумов, тут вся загвоздка...}
if (B[i]<B[i+1]) and (B[i]<B[i-1]) then {как потом найти этот промежуток между локальными минимумами?}
end;
end.

Последний раз редактировалось Stilet; 19.09.2014 в 21:27.
ProfNoob вне форума Ответить с цитированием
Старый 19.09.2014, 16:45   #6
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
как потом найти этот промежуток между локальными минимумами?
Дык надо запоминать индекс i после then. В другом массиве.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 19.09.2014, 16:47   #7
ProfNoob
 
Регистрация: 19.09.2014
Сообщений: 7
По умолчанию

сумму нужно в другой массив записать. Может я чего-то не понимаю, покажи на примере
ProfNoob вне форума Ответить с цитированием
Старый 20.09.2014, 20:46   #8
ProfNoob
 
Регистрация: 19.09.2014
Сообщений: 7
По умолчанию

Пожалустай, Напиши правильное продолжение, а то я не понимаю...
ProfNoob вне форума Ответить с цитированием
Старый 20.09.2014, 21:07   #9
ProfNoob
 
Регистрация: 19.09.2014
Сообщений: 7
По умолчанию Одномерный массив(Pascal)

Необходима помощь в решении данной задачи... Понимаю как найти локальный минимум, но не могу разобраться как найти промежуток между лок. минимумами и записать их сумму в новый массив

задача

Создать массив целых чисел B[1..N]. Сформировать новый массив, содержащий суммы элементов, расположенных между соседними локальными минимумами (локальным минимумом называется значение, соседние числа у которого больше его

все, что могу...
Код:
const N = 20; {например}
A,B:array[1..N] of integer;
i:integer;
begin 
cls;
randomize;
for i:=1 to N do B[i]=random(20);
for i:=2 to N-1 do begin{нахождение локальных минимумов, тут вся загвоздка...}
if (B[i]<B[i+1]) and (B[i]<B[i-1]) then {как потом найти этот промежуток между локальными минимумами?}
end;
end.

Последний раз редактировалось Stilet; 20.09.2014 в 21:30.
ProfNoob вне форума Ответить с цитированием
Старый 20.09.2014, 21:18   #10
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Пожалустай, Напиши правильное продолжение, а то я не понимаю...
У меня выходной. Я могу отдохнуть?
На форуме полно народу.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Одномерный массив. Pascal Liinad Помощь студентам 4 27.03.2013 17:07
одномерный массив(pascal) buslik Помощь студентам 2 08.12.2011 17:57
Одномерный массив Pascal Начинающий програм Помощь студентам 0 26.11.2011 04:14
Одномерный массив (pascal) voodavari Помощь студентам 2 20.05.2010 07:16
Pascal. Одномерный массив. Sendddd Помощь студентам 2 26.10.2009 21:11