Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 17.02.2010, 10:41
YA_MARIYA YA_MARIYA вне форума
Прохожий
 
Регистрация: 17.02.2010
Сообщения: 5
Репутация: 10
Вопрос Помогите, пожалуйста, разобраться с циклами

Здравствуйте!
Код:
var n,l,h:integer;
begin
.....
For h:=1 to n do begin
For l:=1 to n do begin
Memo1.SelText:=(' B_['+inttostr(h)+']'+('(A_[ '+inttostr(l)+']'+'+B_[ '+inttostr(l))+'])' );
end;
end;
Admin: Пользуемся тегами!

n берется с формы.
Если, напиример, n=3,тогда
Пишет: B_[1](A_[1]+B_[1])+B_[1](A_[2]+B_[2])+B_[1](A_[3]+B_[3])+ B_[2](A_[1]+B_[1]) и т. д.
Подскажите, пожалуйста, что нужно сделать, чтоб писал так:
B_[1](B_[2]+A[2])(B_[3]+A[3])+ B_[2](B_[1]+A[1])(B_[3]+A[3])+ B_[3](B_[1]+A[1])(B_[2]+A[2])

Последний раз редактировалось Admin, 17.02.2010 в 11:29.
Ответить с цитированием
  #2  
Старый 17.02.2010, 11:18
Аватар для NIch
NIch NIch вне форума
Продвинутый
 
Регистрация: 02.06.2008
Адрес: Бендеры ПМР
Сообщения: 754
Репутация: 2446
По умолчанию

Так неверно???
Цитата:
B_[1](A_[1]+B_[1])+
B_[1](A_[2]+B_[2])+
B_[1](A_[3]+B_[3])+
B_[2](A_[1]+B_[1])
Как должен быть организован цикл непонятно...
Цитата:
B_[1](B_[2]+A[2])(B_[3]+A[3])+ // 1 22 33
B_[2](B_[1]+A[1])(B_[3]+A[3])+ // 2 11 33
B_[3](B_[1]+A[1])(B_[2]+A[2]) // 3 11 22
Дополни еще парой слагаемых для примера, например n = 5
__________________
В начале был Бит, потом Байт и только потом появилось Слово...

Последний раз редактировалось NIch, 17.02.2010 в 11:25.
Ответить с цитированием
  #3  
Старый 17.02.2010, 11:54
YA_MARIYA YA_MARIYA вне форума
Прохожий
 
Регистрация: 17.02.2010
Сообщения: 5
Репутация: 10
По умолчанию

B_[1](A_[2]+B_[2])(A_[3]+B_[3])(A_[4]+B_[4])(A_[5]+B_[5])+
B_[2](A_[1]+B_[1])(A_[3]+B_[3])(A_[4]+B_[4])(A_[5]+B_[5])+
B_[3](A_[1]+B_[1])(A_[2]+B_[2])(A_[4]+B_[4])(A_[5]+B_[5])+
B_[4](A_[1]+B_[1])(A_[2]+B_[2])(A_[3]+B_[3])(A_[5]+B_[5])+
B_[5](A_[1]+B_[1])(A_[2]+B_[2])(A_[3]+B_[3])(A_[4]+B_[4])

Индекс у B перед скобкой не должени совпадать с индексами у A и B в скобках.
Ответить с цитированием
  #4  
Старый 17.02.2010, 18:35
Аватар для NIch
NIch NIch вне форума
Продвинутый
 
Регистрация: 02.06.2008
Адрес: Бендеры ПМР
Сообщения: 754
Репутация: 2446
По умолчанию

Пожалуйста...Может немного не то, но в нужном направлении...
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
 n, k : word;
 S, S1, S2 : string;
 i, j : word;
begin
 n := StrToInt(Edit1.Text);//Количество
 S := '';//Массив начальных индексов
 S1 := '';//Массив индексов
 for i := 0 to n-1 do//Заполяем строку
  S := S+IntToStr(i+1);//Получаем 12345
 for i := 1 to n do
 begin
  //Выводим массив индексов
  S1 := S;
  Insert (S1[i], S1, 1);
  Delete (S1, i+1, 1);
  Memo1.Lines.Add(S1);
  //Вводим индексы в строку
  S2 := ' B_['+S1[1]+']  ';
  k := 0;
  for j := 1 to n-1 do
  begin
   S2 := S2 + ' (A_['+S1[j+1]+'] + B_['+S1[j+1]+']) ';
  end;
  Memo2.Lines.Add(S2);
 end;
end;
Весь мозг себе вынес пока решил...но задача интересная)))
PS Кинуть на форму 2 мемо, едит и кнопку...
__________________
В начале был Бит, потом Байт и только потом появилось Слово...
Ответить с цитированием
  #5  
Старый 17.02.2010, 19:29
YA_MARIYA YA_MARIYA вне форума
Прохожий
 
Регистрация: 17.02.2010
Сообщения: 5
Репутация: 10
Радость

Огромнейшее СПАСИБО!!!!! ТО, что нужно!!!!! Respect!!!!!
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 12:19.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter