По разделам

 

Решение задачи Case 16


Дано целое число в диапазоне 20–69, определяющее возраст (в годах).
Вывести строку-описание указанного возраста, обеспечив правильное согласование числа со словом «год», например: 20 — «двадцать лет», 32 —
«тридцать два года», 41 — «сорок один год».

Код (C/C++)

#include <stdio.h>
 
int main(void)
{
   int y;
   printf("Возраст:") ;
   scanf ("%i", &y);
 
   switch (y/10) {
   case 2:
        printf("двадцать ");
        break;
   case 3:
        printf("тридцать ");
        break;
   case 4:
        printf("сорок ");
        break;
   case 5:
        printf("пятдесят ");
        break;
   case 6:
        printf("шестьдесят ");
        break;
   }
 
   switch (y%10) {
   case 1:
        printf("один ");
        break;
   case 2:
        printf("два ");
        break;
   case 3:
        printf("три ");
        break;
   case 4:
        printf("четыре ");
        break;
   case 5:
        printf("пять ");
        break;
   case 6:
        printf("шесть ");
        break;
   case 7:
        printf("семь ");
        break;
   case 8:
        printf("восемь ");
        break;
   case 9:
        printf("девять ");
        break;
   }
 
   switch (y%10) {
   case 0:
   case 5:
   case 6:
   case 7:
   case 8:
   case 9:
        printf("лет.\n ");
        break;
   case 1:
        printf("год.\n ");
        break;
   case 2:
   case 3:
   case 4:
        printf("года.\n ");
        break;
   }
 
   return 0;
}

Код (Python)

import random

desyatki = {
    20 : 'двадцать',
    30 : 'тридцать',
    40 : 'сорок',
    50 : 'пятьдесят',
    60 : 'шестьдесят'
}

edinici  = {
    1 : 'один год',
    2 : 'два года',
    3 : 'три года',
    4 : 'четыре года',
    5 : 'пять лет',
    6 : 'шесть лет',
    7 : 'семь лет',
    8 : 'восемь лет',
    9 : 'девять лет'
}

try:
    N = random.randrange(20,70)
    #N = 60
    print("N = ",N)
    r = N%10
    print("r = ",r)
    if r == 0:
        print("{0} лет".format(desyatki[N]))
    else:
        q = int(N/10)*10
        print("q = ",q)
        print("{0} {1}".format(desyatki[q], edinici[r]))

except KeyError as e:
    print('Ошибка')
									

Код (Pascal)

program Case16;
var
  Y:Integer;
begin
  Write('Введите возраст: ');
  Readln(Y);
 
  case Y div 10 of
   2:write('двадцать ');
   3:write('тридцать ');
   4:write('сорок ');
   5:write('пятьдесят ');
   6:write('шестьдесят ');
  end;
 
  case Y mod 10 of
   1:write('один ');
   2:write('два ');
   3:write('три ');
   4:write('четыре ');
   5:write('пять ');
   6:write('шесть ');
   7:write('семь ');
   8:write('восемь ');
   9:write('девять ');
  end;
 
  case Y mod 10 of
   0,5,6,7,8,9:write('лет.');
   1:write('год.');
   2,3,4:write('года.');
  end;
end.
									




Case. Абрамян
Case 1 Просмотров: 7016
Case 2 Просмотров: 3545
Case 3 Просмотров: 4626
Case 4 Просмотров: 3286
Case 5 Просмотров: 3413
Case 6 Просмотров: 3649
Case 7 Просмотров: 4123
Case 8 Просмотров: 3923
Case 9 Просмотров: 2765
Case 10 Просмотров: 4783
Case 11 Просмотров: 3455
Case 12 Просмотров: 3250
Case 13 Просмотров: 2434
Case 14 Просмотров: 1972
Case 15 Просмотров: 2257
Case 16 Просмотров: 2132
Case 17 Просмотров: 1896
Case 18 Просмотров: 2918
Case 19 Просмотров: 3477
Case 20 Просмотров: 2480

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться



Заявка на расчет