Встановіть відповідність між властивостями багаторядкового поля Memo
в середовищі програмування Lazarus.
1. Lines
2. Lines.Count
3. ScrollBar
4. ReadOnly
а) Наявність чи відсутність на
цьому компоненті смуг
прокручування
б) Можливість або неможливість
редагування вмісту компоненту
в) Кількість заповнених даними
рядків компонента
г) Набір значень (текстів),
розташованих у рядках
компонента
т.к. n заранее не дано(и это все лишь фрагмент кода) то m при разных n будет получаться разный. n лежит в промежутке [-2;8]
потому, что тут m:=(l+r)div 2; при n<-2 получается индекс <0
и при n>8 в цикле индекс >7
а массив у нас всего 8 элементов
Поэтому в цикле я вывел все значения m при всех возможных значениях n
Надеюсь понятно объяснил.
при n=-2 m=0
при n=-1 m=0
при n=0 m=0
при n=1 m=1
при n=2 m=2
при n=3 m=3
при n=4 m=4
при n=5 m=5
при n=6 m=6
при n=7 m=6
при n=8 m=6
Pascal
var
a:array [0..7] of integer = (34, 16, 16, 2, 2, 0, -4, -4);
l, n, m, key, r:integer;
flag:boolean;
begin
for n:=-2 to 8 do begin
key:=-4;
L:=1;
r:=n;
flag:=false;
Repeat
m:=(l+r)div 2;
if a[m]>key then
l:=m+1
else
if a[m]=key then
flag:=true
else
r:=m-1;
until flag or (l>r);
writeln('при n=',n,' m=', m);
end;
end.
var
a,b:string;
i:integer;
begin
readln(a);
readln(b);
For i:=1 to Length(a) do
begin
if (a[i]='3') then
Begin
Delete(a,i,1);
InSert('e',a,i);
End;
if (a[i]='0') then
Begin
Delete(a,i,1);
InSert('o',a,i);
End;
if (a[i]='1') then
Begin
Delete(a,i,1);
InSert('i',a,i);
End;
if (a[i]='7') then
Begin
Delete(a,i,1);
InSert('t',a,i);
End;
if (a[i]='4') then
Begin
Delete(a,i,1);
InSert('a',a,i);
End;
if (a[i]='5') then
Begin
Delete(a,i,1);
InSert('s',a,i);
End;
end;
if b in a then
writeln('YES')
else
writeln('NO')
end.