IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> Дана строка символов, состоящая из произвольного текста на английском языке, слова разделены пробелами. Поменять местами i-е и j-е слова., Дана строка символов, состоящая из произвольного текста на английском
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 2
Пол: Мужской

Репутация: -  0  +


Дана строка символов, состоящая из произвольного текста на английском языке, слова разделены пробелами. Поменять местами i-е и j-е слова. Задачу нужно сделать с ComboBox
Пытался делать задачу по примеру но ничего не вышло. Заранее спасибо

Сообщение отредактировано: Jarj -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Знаток
****

Группа: Пользователи
Сообщений: 481
Пол: Мужской
Реальное имя: Федосеев Павел

Репутация: -  9  +


В модуле StrUtils есть процедуры поиска i-того слова.
У меня нет Delphi, только FreePascal. Но FPC во многом совместим с Delphi.
На примере консольной программы покажу как заменять слова при помощи библиотеки StrUtils:
{$mode Delphi}

program tak_001;

uses
StrUtils;

procedure ExchangeWords(var s: string; i, j: integer);
var
WordI, WordJ: string;
PosI, PosJ: integer;
begin
WordI := ExtractWordPos(i, s, [' '], PosI);
WordJ := ExtractWordPos(j, s, [' '], PosJ);

if (WordI = '') or (WordJ = '') then
exit;

writeln(i, '-e: "', WordI, '"');
writeln(j, '-e: "', WordJ, '"');

Delete(s, PosI, length(WordI));
Insert(WordJ, s, PosI);

WordJ := ExtractWordPos(j, s, [' '], PosJ);
Delete(s, PosJ, length(WordJ));
Insert(WordI, s, PosJ);
end;

var
s: string;
i, j: integer;
begin
s := 'first second third fourth fifth sixth seventh eightth nineth tenth';
writeln(s);
ExchangeWords(s, 2, 3);
writeln(s);
end.

По поводу ComboBox ничего не могу посоветовать, т.к. не умею пользоваться визуальными компонентами (пока не было необходимости).

Сообщение отредактировано: Федосеев Павел -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Спасибо за код. Только таких я находил кучу без комбобокса
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Знаток
****

Группа: Пользователи
Сообщений: 481
Пол: Мужской
Реальное имя: Федосеев Павел

Репутация: -  9  +


А ты умеешь в коде програмы получить из ComboBox строку для преоьразования?

Тогда можно так:

procedure Нажата_Кнопка или Какое-то событие (...);
var
s: string;
begin
............
s:=ComboBox.Text; //получение строки
i:=....//получение параметров i и j
j:=....//
ExchangeWords(s, i, j);
............
Вывод строки s в какое-либо поле или обратно в Edit ComboBox'а.
end;

Что не устраивает?
ComboBox это лишь форма ввода строковых данных, не более того (согласно ссылке).
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Cialis Belgique Sans Ordonnance
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Lamisil 250 Mg Online
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Бывалый
***

Группа: Пользователи
Сообщений: 155
Пол: Мужской

Репутация: -  0  +


Why not settling on games that is fun and at the same time your earning. Well it'll make suspense because the game is well but dude just try it and it gave me hope while pandemic is real rn. 5 Top Recommendations for Newbies to Enjoy Online Casinos
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 0:58
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name