![]() |
|
|
|
|
#1
|
|||
|
|||
|
Программа которая при вводе слова, считает количество согласных латинских букв и в ответе выдаёт это слово плюс этоже слово в перевернутом видео столько раз, сколько согласных букв в этом слове.
Всё готово, только немогу перевернуть. Подкскажите пожалуйста как. Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Math;
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Edit2: TEdit;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function GetConsonantCount (S: string): Integer;
const
Consonants: set of Char = ['b','c','d','f','g','h','k','l','m','n','p','r','s','t','v','z','x'];
var
I: Integer;
begin
Result := 0;
S := LowerCase(S);
for I := 1 to Length(S) do
begin
if S[i] in Consonants then
Inc(Result)
end
end;
function Count (const S: string): string;
var
I: Integer;
ConsonantCount: Integer;
begin
ConsonantCount := GetConsonantCount(S);
for I := 0 to ConsonantCount do
Insert (S,Result,I*(Length(S)+1));
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit2.Text := Count(Edit1.Text)
end;
end. |
|
#2
|
|||
|
|||
|
Код:
function ReverseStr(const S: String): String;
var
L, i: Integer;
begin
L := Length(S);
Result := '';
for i := 1 to L do
Result := Result + S[L - i + 1];
end; |
|
#3
|
|||
|
|||
|
Спасибо, а как мне правильно интегрировать его в текст программы? Я пробую, не получается.
![]() |
|
#4
|
|||
|
|||
|
Если я правильно понял, что введенное слово находится в Edit1, тогда примерно так:
Код:
procedure TForm1.Button1Click(Sender: TObject); var N: Integer; S: String; begin Edit2.Text := Count(Edit1.Text) Memo1.Clear; Memo1.Lines.Add(Edit1.Text); // Само введенное слово N := GetConsonantCount(Edit1.Text); // количество согласных S := ReverseStr(Edit1.Text); // переворачиваем слово While (N > 0) do begin // столько раз сколько согласных Memo1.Lines.Add(S); // добавляем слово в TMemo на форме N := N - 1; end; end; |
|
#5
|
|||
|
|||
|
Сам незнаю, в институте измываются над нами
Нет, для вывода используется Edit2.Text . Не получается что то. ошибки выдаёт |
|
#6
|
|||
|
|||
|
Цитата:
Как вы планировали работу программы организовать? Т.е. - вот есть Edit1, вводим туда текст, жмем кнопку - и? Куда нужно результаты выводить и в каком виде? |