Repeat
WhilePos(',,',Text) > 0 do
If Text[1] = ',' then
If Pos(Text[i],DelSym) > 0 then
For i := 1 to Length(Text) do
Repeat
Word:=Copy(Text,1,Pos(',',Text)-1);
Delete(Text,1,Length(Word)+1);
ListBox1.Items.Add(Word);
until Length(Text) = 0;
procedure TForm1.Button1Click(Sender: TObject);
const DelSym = ' .,!?';
var Text,Word: string; i: integer;
begi n
Text:=Memo1.Lines.Text;
Text[i]:=',';
Delete(Text,1,1);
Delete(Text,Pos(',,',Text),1);
Word:=Copy(Text,1,Pos(',',Text)-1);
Delete(Text,1,Length(Word)+1);
ListBox1.Items.Add(Word);
until Length(Text) = 0;
end;
Label1.Caption:='Количество слов в тексте: '+
IntToStr(ListBox1.Items.Count);
var LongestWord: string;
{…}
LongestWord:=ListBox1.Items[0];
for i := 1 to ListBox1.Items.Count-1 do
if Length(ListBox1.Items[i]) > Length(LongestWord) then
LongestWord:=ListBox1.Items[i];
Label2.Caption:='Самое длинное слово: '+LongestWord+
+' ('+IntToStr(Length(LongestWord))+' букв)';
procedure TForm1.Button1Click(Sender: TObject);
const DelSym = ' .,!?';
var Text, Word, LongestWord: string; i: integer;
begin
Text:=Memo1.Lines.Text;
for i := 1 to Length(Text) do
if Pos(Text[i],DelSym) > 0 then
Text[i]:=',';
if Text[1] = ',' then
Delete(Text,1,1);
while Pos(',,',Text) > 0 do
Delete(Text,Pos(',,',Text),1);
Text:=AnsiReplaceText(Text,Chr(13),’’);
Text:=AnsiReplaceText(Text,Chr(10),’’);
repeat
Word:=Copy(Text,1,Pos(',',Text)-1);
Delete(Text,1,Length(Word)+1);
ListBox1.Items.Add(Word);
until Length(Text) = 0;
Label1.Caption:='Количество слов в тексте: '+
+IntToStr(ListBox1.Items.Count);
LongestWord:=ListBox1.Items[0];
for i := 1 to ListBox1.Items.Count-1 do
if Length(ListBox1.Items[i]) > Length(LongestWord) then
LongestWord:=ListBox1.Items[i];
Label2.Caption:='Самое длинное слово: '+LongestWord+
+' ('+IntToStr(Length(LongestWord))+' букв)';
end;
procedure TForm1.FormCreate(Sender: TObject);
var
i: Integer;
begin
StringGrid1.RowCount:=257;
StringGrid1.Cells[0,0]:='Код';
StringGrid1.Cells[1,0]:='Символ';
for i := 0 to 255 do
begin
StringGrid1.Cells[0,i+1]:=IntToStr(i);
StringGrid1.Cells[1,i+1]:=Chr(i);
end;
end;
null-terminated
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
ShowMessage('Код нажатой клавиши: '+IntToStr(Ord(Key)));
end;
while Pos(Chr(13),Text) > 0 do
Delete(Text,Pos(Chr(13),Text),1);
while Pos(Chr(10),Text) > 0 do
Delete(Text,Pos(Chr(10),Text),1);
StrUtils.pas
PosEx(подстрока, строка, отступ)
AnsiReplaceStr, AnsiReplaceText (строка, текст_1, текст_2)
Text:=AnsiReplaceText(AnsiReplaceText(Text,Chr(13),' '),Chr(10),' ');
DupeString(строка, число повторений)
ReverseString(строка)
UpperCase(строка)
LowerCase(строка)
Они обладают расширенными средствами управления взаимодействием текста с параметрами страницы и с графическими объектами.
Шрифты имеют более высокое качество. Пробелы между словами делаются одинаковой ширины.
При печати реализуется режим WYSIWyG – What you see is what get – что вы видите (на экране дисплея), то и получите (при печати на принтере). Принтер должен быть лазерным или струйным. Вид печати – типографский набор .