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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.06.2008, 20:34   #1
XeRoX
 
Регистрация: 11.06.2008
Сообщений: 3
По умолчанию Дан текст из строчных латинских букв и других знаков. Вычеркнуть из текста все гласные буквы."

Помогите с задачей для dealphi: "Дан текст из строчных латинских букв и других знаков. Вычеркнуть из текста все гласные буквы."
Вот тот пример как я сделал:
procedure vichet( S:string; var s2,s1:string);
Var
i,Y:integer;
K:set of char;
Begin
s1:='';
s2:='';
K:=['a','A','e','E','y','Y','u','U','i' ,'I','o','O'];
For i:=1 to Length(S) do
if S[i] in K then
s2:=s2+s[i]
else s1:=s1+s[i];
End;
procedure TForm1.Button1Click(Sender: TObject);
var
S:string;
s1,s2:string;
begin
S:=Edit1.text;
vichet(s,s1,s2);
Edit2.text:=s1;
Edit3.text:=s2;
end;
end.

проблема:1) как мне переделать задачу, чтоб можно было только латинские буквы вписывать
Вложения
Тип файла: rar множества.rar (183.4 Кб, 9 просмотров)

Последний раз редактировалось XeRoX; 11.06.2008 в 21:50. Причина: Не правильно выразился.
XeRoX вне форума Ответить с цитированием
Старый 11.06.2008, 22:04   #2
L_M
Форумчанин Подтвердите свой е-майл
 
Регистрация: 25.02.2008
Сообщений: 289
По умолчанию

Вписывать куда лат. буквы? В Edit? Если так, то пожалуй сделать Edit1 неактивным и создать процедуру Form.OnKeyDown, создать глобальное множество лат букв и проверять введенную букву на присутствие в буквах, если есть, то дабавляем в Edit. Конкретнее напиши, что делать!
Упс...
L_M вне форума Ответить с цитированием
Старый 11.06.2008, 22:20   #3
XeRoX
 
Регистрация: 11.06.2008
Сообщений: 3
По умолчанию

"создать глобальное множество лат букв"
С этим проблемка может выйти(я не знаю как создать), а остольное я впринципе понял. спасибо и за это учту на будушее.
XeRoX вне форума Ответить с цитированием
Старый 11.06.2008, 23:27   #4
L_M
Форумчанин Подтвердите свой е-майл
 
Регистрация: 25.02.2008
Сообщений: 289
По умолчанию

ну глобально, т.е до всех процедур.
Вроде этого:
Код:
var
     q:set of char=['a','b'];
Упс...
L_M вне форума Ответить с цитированием
Старый 12.06.2008, 08:26   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
как мне переделать задачу, чтоб можно было только латинские буквы вписывать
Код:
For i:=1 to Length(S) do
if  (S[i] in ['a'..'z','A'..'Z']) then
s2:=s2+s[i]
else s1:=s1+s[i];
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 12.06.2008, 10:33   #6
[Smarik]
Веб-разработчик
Форумчанин
 
Аватар для [Smarik]
 
Регистрация: 16.01.2008
Сообщений: 451
По умолчанию

чтобы можно было вписывать только латинские буквы, можно сделать так:
с событие поля edit onclick прописат
Код:
case key of
'A'..'Z','a'..'z':;
else key:=chr(0);
end;
при таком отборе пользователь не сможет ввести ничего кроме того что вписано в операторе выбора.
Я ваш новый друг, смиритесь!
[Smarik] вне форума Ответить с цитированием
Старый 15.06.2008, 09:41   #7
XeRoX
 
Регистрация: 11.06.2008
Сообщений: 3
По умолчанию

Спасибо, выручили.
XeRoX вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
дан текстовый массив из 200 букв. Выстроить в алфавитном порядке все строчные буквы Тина Помощь студентам 6 02.07.2008 22:53
Удвоить каждый из первых пяти цифровых символов и удалить 5 последних латинских букв gred Помощь студентам 5 16.05.2008 23:20
Оператор амперсанд "&" или число внутри текста dotvz Microsoft Office Excel 2 02.04.2008 14:33
"Чудеса" с вводом текста! Mr.User Свободное общение 3 18.11.2007 15:56