![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Товарисчи, помогите решить задачу, для образца:
Дано натуральное число n (0<= n <=100), определяющее возраст человека в годах. Программа должна вывести сообщение, согласованное с n, например (с правильным окончание слова "год"), 1 год, 23 года, 45 лет и т.д. |
|
#2
|
||||
|
||||
|
Обрабатываете ситуацию если число заканчивается на:
1 тогда год 2,3,4 тогда года 5,6,7,8,9,0 тогда лет и исключение из правила если число в диапазоне: 11..14 тогда лет Ну а код будет таким: Код:
function AgeToStr(N: Byte): String;
Var D: String;
begin
if N in [11..14] then Result := 'лет'
else begin
D := IntToStr(N);
D := Copy(D,Length(D),1);
case D[1]
of '1': Result := 'год';
'2','3','4': Result := 'года';
else Result := 'лет';
end;
end;
end;Последний раз редактировалось Страдалецъ, 01.06.2009 в 12:40. |