1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Delphi 7: строки, обратный порядок слов в строке

Тема в разделе "Вопросы новичков и не только", создана пользователем -, 25 мар 2010.

Статус темы:
Закрыта.
  1. Гость

    Репутация:
    0
    Это всё я тут флудю :oops:
    В данный момент пытаюсь вывести слова в строке в обратном порядке. Т.е.: папа мама брат->брат мама папа
    Вот что у меня пока что получается:
    Код:
    unit Laba4_2Unit1;
    
    interface
    
    uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, StdCtrls;
    
    type
    TForm1 = class(TForm)
    Edit1: TEdit;
    Label1: TLabel;
    Edit2: TEdit;
    Label2: TLabel;
    Button1: TButton;
    procedure Edit1Change(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    private
    { Private declarations }
    public
    { Public declarations }
    end;
    
    var
    Form1: TForm1;
    str: string;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.Edit1Change(Sender: TObject);
    begin
    str:=Edit1.Text;
    end;
    
    procedure TForm1.Button1Click(Sender: TObject);
    Var
    A  : Array[1..100] of String;
    i,n : Longint;
    z : String;
    begin
    str:=str+' ';
    z:='';
    n:=0;
    For i:=1 to Length(str) Do
    If str[i]<>' ' Then
    z:=z+str[i]
    Else
    Begin
    n:=n+1;
    A[n]:=z;
    z:='';
    End;
    For i:=n Downto 1 Do
    Edit2.Text:=A[n]+' ';
    end;
    end.
    Но моя недопрограмма выводит только последнее слово и всё. Как исправить? :)
     
  2. Dock1100

    Dock1100 :-]

    Репутация:
    0
    Регистрация:
    9 ноя 2009
    Сообщения:
    665
    Симпатии:
    1
    Вот, но только не выводит первое слово
    Код:
    procedure TForm5.Button1Click(Sender: TObject);
    var str,str2:string;
    wordstr:array of string;
    i,k,l1:integer;
    begin
    str:=edit1.text;
    k:=0;
    for i:=1 to Length(str) do
    if (str[i]=' ') then k:=K+1;
    
    setlength(WORDSTR,k);
    l1:=0;
    for I := 0 to Length(str) do
    begin
    if str[i]<>' ' then wordstr[l1]:=wordstr[l1]+str[i];
    if str[i]=' ' then l1:=l1+1;
    end;
    str2:='';
    for i:=k downto 1 do
    str2:=str2+wordstr[i]+' ';
    str2:=str2+wordstr[0];
    edit2.Text:=str2;
    end;
    P.S. Как помне этой теме место тут
     
  3. Гость

    Репутация:
    0
    Спасибо огромное! :)
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей