Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 13.09.2010, 19:12
smile) smile) вне форума
Прохожий
 
Регистрация: 13.09.2010
Сообщения: 5
Репутация: 10
По умолчанию дополнить программу...

Решение.
Количество нажатий на кнопку - это значение переменной 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  
Старый 13.09.2010, 20:31
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Будет работать до 10.
Доработка - брать mod от числа по 10 для выяснения последней цифры:
Код:
var
  K1 : Integer;
begin
  ...
  K1 := K mod 10;
  ...
  if (K1=2) or (K1=3) or (K1=4) then 
  ...
Ответить с цитированием
  #3  
Старый 13.09.2010, 21:10
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

Точно 10? А мне кажется 21.
Условие можно так изменить:
Код:
if (K in [2..4]) or ((K > 21) and (K mod 10 in [2..4]))
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #4  
Старый 13.09.2010, 21:21
smile) smile) вне форума
Прохожий
 
Регистрация: 13.09.2010
Сообщения: 5
Репутация: 10
По умолчанию

спасибо вам огромное!!!
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 23:12.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025