![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Решение.
Количество нажатий на кнопку - это значение переменной K. Если это число заканчивается цифрами 2, 3 или 4 (кроме двузначных чисел 12, 13 и 14), то фраза должна заканчиваться не словом «раз», а словом «раза». Предлагаемый ниже фрагмент программы годится для числа нажатий, не превышающего ...(определите, какого значения?). Дополните программу так, чтобы она годилась для произвольного числа нажатий. Код:
implementation
var
K:integer;
S:string;
{$R *.DFM}
procedure TfmMain.btStartClick(Sender: TObject);
begin
K:=K+1;
S:= 'Кнопка нажата '+IntToStr(K)+' раз';
if (K=2) or (K=3) or (K=4) then
S:=S+'а';
with lbMessage do
begin
Caption:=S;
Color:=clRed;
end;
end; |
|
#2
|
|||
|
|||
|
Будет работать до 10.
Доработка - брать mod от числа по 10 для выяснения последней цифры: Код:
var K1 : Integer; begin ... K1 := K mod 10; ... if (K1=2) or (K1=3) or (K1=4) then ... |
|
#3
|
||||
|
||||
|
Точно 10? А мне кажется 21.
Условие можно так изменить: Код:
if (K in [2..4]) or ((K > 21) and (K mod 10 in [2..4])) |
|
#4
|
|||
|
|||
|
спасибо вам огромное!!!
|