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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.03.2009, 13:16   #1
Witaliy
Форумчанин Подтвердите свой е-майл
 
Регистрация: 27.04.2008
Сообщений: 179
По умолчанию Поледовательность

Здравствуйте
Данная последовательность N чисел. Нужно узнать, есть ли такие елементы, которые равняются суме двух или больше других элементов той же последовательности.
Очень большое спасибо.
www.programmer.uaforums.net - Український форум програмістів.

www.satellite.ipsys.net - Український форум супутникового телебачення.
Witaliy вне форума Ответить с цитированием
Старый 07.03.2009, 13:50   #2
KingOfNothing
Пользователь
 
Регистрация: 06.02.2009
Сообщений: 89
По умолчанию

Может как-то так?
Код:
For i:=1 to N do
begin
 s:=array[i];
 For j:=1 to N do
begin
  if i<>j then
   begin
   s:=s+array[j];
   for k:=1 to N do
      if array[k]=s then writeln(array[k]);
   end;
end;
Если вдруг захотите сказать мне спасибо - воспользуйтесь кнопкой "Добавить отзыв"
KingOfNothing вне форума Ответить с цитированием
Старый 07.03.2009, 13:58   #3
Witaliy
Форумчанин Подтвердите свой е-майл
 
Регистрация: 27.04.2008
Сообщений: 179
По умолчанию

Но єто для суммы нескольких елементов(2) а мне нужно для немного большего количества. Я думаю такое мождна сделать рекурсиею, но не знаю как...
www.programmer.uaforums.net - Український форум програмістів.

www.satellite.ipsys.net - Український форум супутникового телебачення.
Witaliy вне форума Ответить с цитированием
Старый 07.03.2009, 14:03   #4
KingOfNothing
Пользователь
 
Регистрация: 06.02.2009
Сообщений: 89
По умолчанию

Не совсем понял...
Вроде сумма K чисел (где k>=2) должна быть равна любому элементу?
Если вдруг захотите сказать мне спасибо - воспользуйтесь кнопкой "Добавить отзыв"
KingOfNothing вне форума Ответить с цитированием
Старый 07.03.2009, 14:27   #5
Witaliy
Форумчанин Подтвердите свой е-майл
 
Регистрация: 27.04.2008
Сообщений: 179
По умолчанию

Смотрите, есть такая последовательнось: 1 2 4 5 7 12
12 = 1+2+4+5
А в вас ничего не выводит.
www.programmer.uaforums.net - Український форум програмістів.

www.satellite.ipsys.net - Український форум супутникового телебачення.
Witaliy вне форума Ответить с цитированием
Старый 07.03.2009, 14:34   #6
Witaliy
Форумчанин Подтвердите свой е-майл
 
Регистрация: 27.04.2008
Сообщений: 179
По умолчанию

Илт для такой
1 3 16 19 25 70 100 243 245 306
не считает 19=16+3
www.programmer.uaforums.net - Український форум програмістів.

www.satellite.ipsys.net - Український форум супутникового телебачення.
Witaliy вне форума Ответить с цитированием
Старый 07.03.2009, 14:51   #7
KingOfNothing
Пользователь
 
Регистрация: 06.02.2009
Сообщений: 89
По умолчанию

Я переделал алгоритм, но все равно не уверен, что он правильный, нужно проверить
Код:
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils;
const n=10;

var i,j,k:integer;
arr:array[1..10] of integer = (1, 3, 16, 19, 25, 70, 100, 243, 245, 306);
s,d:integer;
sum:string;

begin
for i:=2 to n do     // number of sum elements
begin
for j:=1 to n do     // from the first number
begin
  s:=arr[j];
  sum:=IntToStr(arr[j]);
  for k:=j+1 to j+i-1 do   //sum
    begin
        if j+i<=n then
        begin
          s:=s+arr[k];
          sum:=IntToSTR(arr[k])+'+'+sum;
        end;
    end;
  for d:=1 to N do
      if (arr[d]=s) and (pos('+',sum)>0) then
        begin
           writeln('Element ',arr[d], ' ', sum);
        end;
end;
end;
readln;
end.
Если вдруг захотите сказать мне спасибо - воспользуйтесь кнопкой "Добавить отзыв"

Последний раз редактировалось KingOfNothing; 07.03.2009 в 15:25. Причина: Новый код
KingOfNothing вне форума Ответить с цитированием
Старый 07.03.2009, 15:50   #8
Witaliy
Форумчанин Подтвердите свой е-майл
 
Регистрация: 27.04.2008
Сообщений: 179
По умолчанию

Всё ок, спасибо, ловите большой отзыв!
www.programmer.uaforums.net - Український форум програмістів.

www.satellite.ipsys.net - Український форум супутникового телебачення.
Witaliy вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск