Многовариантный выбор

Borland Pascal 6.Для целого числа k от 1 до 99 вывести фразу «мне k лет», учитывая при этом, что при некоторых значениях k слово «лет» надо заменить словом «год» или «года». 7.Составить программу, которая для любого натурального числа печатает количество цифр в записи этого числа.8.Написать программу, которая после введённого с клавиатуры числа (в диапазоне от 1 до 99), обозначающего денежную единицу, дописывает слово «копейка» в правильной форме.
3 ответа

Если от 10 до 20, то всегда "лет", иначе: если по модулю 10 равно 1 -"год", если равно от 2 до 4 - "года", иначе - "лет". Аналогично с копейками, только другие формы. По поводу числа - мне удобней всего пользоваться
trunc(ln(x)/ln(10))+1
А если число длинное, то через length(st).


К сожалению такого не проходили.9 класс.


program primer6; uses wincrt; var k: integer; begin writeln('vvedite kol-vo let'); readln(k); case k of 1,21,31,41,51,61,71,81,91: write(' god '); 2..4,22..24,32..34,42..44,52..54,62 ..64,72..74,82..84,92..94: write(' goda '); 5..20,25..30,35..40,45..50,55..60,6 5..70,75..80,85..90,95..99:write('l et'); end; end. ВРОДЕ ТАК?