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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.10.2015, 11:12   #1
Влад99
 
Регистрация: 25.11.2008
Сообщений: 6
По умолчанию взаимодействие массивов (Делфи)

Есть 2 одномерных массива (очки и команды) Изменения в одном должны должны привести к изменениям другого. Например, после получения дополнительных очков команда должна изменить положение в турнирной таблице.Подскажите алгоритм. В варианте отслеживания изменений в массиве команд (64-Зенит,59-ЦСКА и т.д.) в ответ на изменения в массиве очков(67,59...) есть затруднения в использовании Leftstr(sort0,2). Не удается переместить в левую часть массива команд изменения в массиве очков(:
64-->67.
Влад99 вне форума Ответить с цитированием
Старый 01.10.2015, 11:52   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Пока ниче не понятно. Покаж код.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.10.2015, 15:02   #3
Dvoishnik
Форумчанин
 
Регистрация: 12.02.2011
Сообщений: 808
По умолчанию

Код:
var
comanda:array [1..20] of string;
ochki:array [1..20] of integer;
s:string;
x, i, j : Integer;

begin
    for i := 1 to 20-1 do
        for j := 1 to 20-i do
            if ochki[j] > ochki[j+1] then begin
            begin
             x := ochki[j];
             s:=comanda[j];
             comanda[j]:=comanda[j+!];
             comanda[j+1]:=s;
             ochki[j] :=ochki[j + 1];
             ochki[j + 1] := x;
            end;
...............
end.
просто сортируете массив ocmanda в одном цикле с массивом ochki
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Dvoishnik вне форума Ответить с цитированием
Старый 04.10.2015, 12:41   #4
Влад99
 
Регистрация: 25.11.2008
Сообщений: 6
По умолчанию

В этой строке должно быть 20-i ? for i := 1 to 20-1 do
Влад99 вне форума Ответить с цитированием
Старый 05.10.2015, 12:29   #5
Dvoishnik
Форумчанин
 
Регистрация: 12.02.2011
Сообщений: 808
По умолчанию

Цитата:
Сообщение от Влад99 Посмотреть сообщение
В этой строке должно быть 20-i ? for i := 1 to 20-1 do
нет все верно в той строке.
должно быть
Код:
for j := 1 to 20-i do
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Dvoishnik вне форума Ответить с цитированием
Старый 05.10.2015, 12:44   #6
Влад99
 
Регистрация: 25.11.2008
Сообщений: 6
По умолчанию

Код:
var
  Form1: TForm1;
  st,st1:string;
  const
  NT=5;
al:array[1..5]of string[15]=('64-Зенит','59-ЦСКА','59-Краснодар','49-Динамо','47-Рубин');
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var s:string;
s1:integer;
i:integer;
 sort0:string;
  sort1:string;
  sort2:integer;

begin
 s:=Edit1.Text;//Пользователь вставляет НОМЕР КОМАНДЫ, забившей гол
 s1:=strtoint(s);
 sort0:=al[s1];
 sort1:=Leftstr(sort0,2);//выделяются 2 символа слева у команды
 sort2:=strtoint(sort1)+3;//добавляются очки
 sort1:=inttostr(sort2);
//ДАЛЕЕ НУЖНО БЫ ЗАМЕНИТЬ 47-Рубин на 50-Рубин и провести сортировку
//В результате которой Рубин и Динамо поменяются местами (у Динамо-49 очков)
//Пробовал отдельно анализировать и сортировать массивы очков и команд-не получается
//Ниже- исходный список ДО изменений
procedure TForm1.FormCreate(Sender: TObject);
 var i:integer;
begin
 Edit1.Text:='';
 Label1.Caption:='';
 Label2.Caption:='';
for i:=1 to 5 do begin
 st:=st+al[i]+' '+#13#10;   st1:=st1+inttostr(i)+' '+#13#10;
 Label1.Caption:=st;
 Label2.Caption:=st1;
 end; end;
end.
#
А зачем одно и то же трижды с интервалом в несколько минут? Удалил.
Модератор

Последний раз редактировалось Аватар; 05.10.2015 в 17:27.
Влад99 вне форума Ответить с цитированием
Старый 06.10.2015, 11:55   #7
Влад99
 
Регистрация: 25.11.2008
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Пока ниче не понятно. Покаж код.
Код:
var
  Form1: TForm1;
  st,st1:string;
  const
  NT=5;
al:array[1..5]of string[15]=('64-Зенит','59-ЦСКА','59-Краснодар','49-Динамо','47-Рубин');
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var s:string;
s1:integer;
i:integer;
 sort0:string;
  sort1:string;
  sort2:integer;

begin
 s:=Edit1.Text;//Пользователь вставляет НОМЕР КОМАНДЫ, забившей гол
 s1:=strtoint(s);
 sort0:=al[s1];
 sort1:=Leftstr(sort0,2);//выделяются 2 символа слева у команды
 sort2:=strtoint(sort1)+3;//добавляются очки
 sort1:=inttostr(sort2);
//ДАЛЕЕ НУЖНО БЫ ЗАМЕНИТЬ 47-Рубин на 50-Рубин и провести сортировку
//В результате которой Рубин и Динамо поменяются местами (у Динамо-49 очков)
//Пробовал отдельно анализировать и сортировать массивы очков и команд-не получается
//Ниже- исходный список ДО изменений
procedure TForm1.FormCreate(Sender: TObject);
 var i:integer;
begin
 Edit1.Text:='';
 Label1.Caption:='';
 Label2.Caption:='';
for i:=1 to 5 do begin
 st:=st+al[i]+' '+#13#10;   st1:=st1+inttostr(i)+' '+#13#10;
 Label1.Caption:=st;
 Label2.Caption:=st1;
 end; end;
end.
Влад99 вне форума Ответить с цитированием
Старый 10.10.2015, 09:57   #8
Влад99
 
Регистрация: 25.11.2008
Сообщений: 6
По умолчанию

спасибо за помощь

Последний раз редактировалось Влад99; 10.10.2015 в 20:16.
Влад99 вне форума Ответить с цитированием
Старый 10.10.2015, 20:15   #9
Влад99
 
Регистрация: 25.11.2008
Сообщений: 6
По умолчанию

Спасибо все получилось
Влад99 вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка массивов В ДЕЛФИ SASHAKR Помощь студентам 2 22.10.2012 23:04
Обработка одномерных массивов. Делфи (Паскаль) Hacks Помощь студентам 1 25.12.2011 18:33
взаимодействие в делфи nyasha2013 Помощь студентам 5 14.05.2011 10:58
[Делфи]Как вывести из мемо все что есть (без циклов и массивов) zotox Помощь студентам 3 03.05.2009 20:25
[Делфи] Как сделать чтобы символ много раз повторялся (без массивов) zotox Помощь студентам 4 01.05.2009 22:10