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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.09.2014, 21:25   #11
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Код:
if (B[i]<B[i+1]) and (B[i]<B[i-1]) 
  then {запомнить индекс i в массиве С}
{в следующем цикле использовать массив С в рассчёте
 сумм для записи в массив А.}
Бонус тебе, заслужил.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 20.09.2014, 23:20   #12
ProfNoob
 
Регистрация: 19.09.2014
Сообщений: 7
По умолчанию

Что-то непонятно мне, напиши, пожалуйста, этот кусок кода.
ProfNoob вне форума Ответить с цитированием
Старый 20.09.2014, 23:50   #13
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
напиши, пожалуйста, этот кусок кода.
Я лежу на диване, под одеялом и смотрю "что-где-почём". Мне, что, всё бросить и написать тебе лабу? У меня:
1. выходной
2. усталость
3. алкогольное опьянение
4. клавиатура в руке
5. сигарета в зубах
6. знатоки в телевизоре
7. кот на пузе.
Представил картину?

Ты на моём месте занялся бы в такой ситуации чужой работой?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 21.09.2014, 10:17   #14
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ProfNoob, то, что Вы написали, это не программа, это просто намёк на программу.
Там же банально синтаксические ошибки...

ну да ладно. Раз там был алгоритм определения лок.минимумом, то так и быть,
вот вам решение, разбирайтесь в нём:
Код:

const N = 20; {например}

var
  B, ArrSum :array[1..N] of integer;
  i, j, sum, indexArrSum, prevIndexMin : integer;
begin
  cls;
  randomize;
  for i:=1 to N do begin
    B[i] := random(20);
    Write(B[i]:2, ' ');
  end;
  WriteLn;
  
  indexArrSum := 0;
  prevIndexMin := -1;
  for i:=2 to N-1 do begin{нахождение локальных минимумов, тут вся загвоздка...}
     if (B[i]<B[i+1]) and (B[i]<B[i-1]) then begin
        Write('mIndex = ',i,' '); {для отладки просто выведем позицию минимума на экран}
        if prevIndexMin>0 then begin {если локальный индекс не первый,
                                      то уже можно считать сумму между элементами}
          sum := 0;
          for j:=prevIndexMin+1 to i-1 do sum := sum + B[j];
          inc(indexArrSum);
          ArrSum[indexArrSum] := sum;
        end;
        prevIndexMin := i;  {сохранили индекс элемента, как индекс предыдущего
                                лок.минимума}
     end;
  end;
  WriteLn;
  
  {вывод полученнного массива}
  if indexArrSum =0 then WriteLn('Локальных минимумом меньше двух. Никаких сумму между нет!')
  else begin
    Write('Массив сумм : ');
    for i:=1 to indexArrSum do Write(ArrSum[i]:3,' ');
    WriteLn
  end;
end.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 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