Создать форму для ввода с клавиатуры целого числа. Выполнить для него такие действия: определить, входит ли в него произвольная цифра (также задаваемая с клавиатуры); поменять порядок цифр числа на обратный; переставить первую и последнюю цифры числа; приписать по единице в начало и конец записи числа.
procedure TForm1.Button1Click(Sender: TObject);
var
number, num: string;
i: integer;
go: Boolean;
x: char;
begin
number:=Edit1.Text;
num :=Edit2.Text;
i :=1;
// проверяем правильность заполнения
while ( i<=Length(number) ) and ( go ) do begin if not ( (number[i]>='0') and (number[i]<='9') ) then go:=false; if ( not go ) then ShowMessage('поле "целое число" заполнено не правильно, программа будет работать не правильно'); inc(i); end; if ( Edit1.Text = '' ) then ShowMessage('поле "целое число" не заполнено'); if (not ( (num >= '0') and (num <= '9') ) ) or ( Length(num)<>1 )then
ShowMessage('поле "цифра" заполнено не правильно'); // конец проверки
// входит или нет
i:=1;
go:=true;
while ( i<=Length(number) ) and ( go ) do
begin
if number[i] = num then
begin
Label3.Caption:='цифра входит';
go:=false;
end;
inc(i);
end;
if go then
Label3.Caption:='цифра не входит';
// обратный порядок
for i:=0 to ( ((length(number)) div 2)-1 ) do
begin
x:=number[ i+1 ];
number[ i+1 ]:=number[ Length(number)-i ];
number[ length(number)-i ]:=x;
end;
Label4.Caption:='обратный порядок '+number;
// менять первую и последнюю
number:=Edit1.Text;
x:=number[ 1 ];
number[ 1 ]:=number[ Length(number) ];
number[ length(number) ]:=x;
Label5.Caption:='переставленое первая и последняя '+number;
// приписываем 1
number:=Edit1.Text;
number:=number+' ';
for i:=length(number) downto 1 do
number[ i+1 ]:=number[ i ];
number[ length(number) ]:='1';
number[ 1 ]:='1';
Label6.Caption:='после приписки единиц '+number;
end;
end.
Похожие записи
No user прокомментировали сообщение
Оставить комментарий