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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.12.2010, 01:01   #1
Liubashka
 
Регистрация: 24.11.2010
Сообщений: 8
Восклицание Строки в Delphi

Помогите пожалуйста!
Дано целое число n,символы S1,S2,...,Sn среди которых есть двоеточие. Получить все символы,расположенные между первым и вторым двоеточием.Еси второго двоеточ.нет,то получитm все символы,расположенные после единственного двоеточ.
Liubashka вне форума Ответить с цитированием
Старый 23.12.2010, 01:11   #2
Кронос
Пользователь
 
Регистрация: 29.04.2007
Сообщений: 66
По умолчанию

У тебя символы записаны одной строкой или как элементы массива?
Кронос вне форума Ответить с цитированием
Старый 23.12.2010, 08:22   #3
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

можно по самому простому
1. с помощью ф-ии Delete и Pos удаляем все символы до первого двоеточия
2. Проверяем если ещё двоеточие (ф-ия Pos), если да то копируем часть слова до второго двоеточия (ф-ия Copy Pos) если нет то оставшаяся строка это и есть ответ
SERG1980 вне форума Ответить с цитированием
Старый 23.12.2010, 10:45   #4
goto ∞
Форумчанин
 
Аватар для goto ∞
 
Регистрация: 21.12.2010
Сообщений: 155
По умолчанию

Вот то что выше сказали.Только, если обнаружен 2ое ':' не идет копирование, а удаление..
Код:
var s : string; p,i,n : integer;
begin
 s := Edit1.Text;
 n := length(s);
 p := pos(':',s);
 delete(s,1,p);
 p := pos(':',s);
 if  p <> 0 then
 delete(s,p,n-p);
 label1.Caption := s;
goto ∞ вне форума Ответить с цитированием
Старый 23.12.2010, 11:20   #5
Liubashka
 
Регистрация: 24.11.2010
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Кронос Посмотреть сообщение
У тебя символы записаны одной строкой или как элементы массива?
Символы записаны одной строкой,хотя можно и одномерный массив взять

Цитата:
Сообщение от goto ∞ Посмотреть сообщение
Вот то что выше сказали.Только, если обнаружен 2ое ':' не идет копирование, а удаление..
Код:
var s : string; p,i,n : integer;
begin
 s := Edit1.Text;
 n := length(s);
 p := pos(':',s);
 delete(s,1,p);
 p := pos(':',s);
 if  p <> 0 then
 delete(s,p,n-p);
 label1.Caption := s;
А что там теперь добавить чтобы она работала?

Последний раз редактировалось Stilet; 23.12.2010 в 13:33.
Liubashka вне форума Ответить с цитированием
Старый 23.12.2010, 13:40   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Если тебе нужно приложение с формами то придется почитать по делфи Самоучитель.
Если же консольная программа то:
Код:
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var s : string; p,i,n : integer;
begin
 s := '123:456:789:93456';
 n := length(s);
 p := pos(':',s);
 delete(s,1,p);
 p := pos(':',s);
 if  p <> 0 then
 delete(s,p,n-p);
 write(s);readln;
end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 23.12.2010, 14:11   #7
goto ∞
Форумчанин
 
Аватар для goto ∞
 
Регистрация: 21.12.2010
Сообщений: 155
По умолчанию

Цитата:
Сообщение от Liubashka Посмотреть сообщение
А что там теперь добавить чтобы она работала?
Добавь на форму "Button1", "Edit1", "Label1". Если ты об этом..
goto ∞ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Строки по Delphi StudentFIU Помощь студентам 1 25.05.2010 19:37
строки в delphi STIFLER32 Помощь студентам 6 27.03.2010 13:44
Строки Delphi Дешук Елена Помощь студентам 2 30.12.2009 16:39
delphi строки motaro Общие вопросы Delphi 5 21.08.2009 18:45
Строки в Delphi. Wise Помощь студентам 9 03.12.2007 17:58