Для решения этой задачи будут необходимы весы с двумя чашами. Найти фальшивую монету можно за 3 взвешивания.
Раскладываем 27 монет на 3 стопки по 9 монет и начинаем взвешивание.
1. Взвешиваем любые 2 стопки по 9 монет. Если весы в равновесии - то фальшивая монета в оставшейся стопке, если какая-то чаша перевешивает, значит фальшивая монета в той стопке, которая легче.
2. Из стопки из 9 монет, в той которая находится фальшивая, берем любые 2 и взвешиваем. Если весы в равновесии - фальшивая та, которая осталась, если одна из чаш перевешивает, значит фальшивая в той, которая легче.
3. Из стопки из 3 монет, в той которая находится фальшивая, берем любые 2 и взвешиваем. Если весы в равновесии - фальшивая та монета, которая осталась, если одна из чаш перевешивает, то в той чаше которая легче.
Раскладываем 27 монет на 3 стопки по 9 монет и начинаем взвешивание.
1. Взвешиваем любые 2 стопки по 9 монет. Если весы в равновесии - то фальшивая монета в оставшейся стопке, если какая-то чаша перевешивает, значит фальшивая монета в той стопке, которая легче.
2. Из стопки из 9 монет, в той которая находится фальшивая, берем любые 2 и взвешиваем. Если весы в равновесии - фальшивая та, которая осталась, если одна из чаш перевешивает, значит фальшивая в той, которая легче.
3. Из стопки из 3 монет, в той которая находится фальшивая, берем любые 2 и взвешиваем. Если весы в равновесии - фальшивая та монета, которая осталась, если одна из чаш перевешивает, то в той чаше которая легче.
cin >> n;
if (n > 180)
cout << "высокий";
else if (n >= 165)
cout << "нормальный";
else if (n < 140)
cout << "низкий";
какая-та задача неполная, ведь если рост будет больше 140, но меньше 165, то что программа должна вывести? она ничего не выведет
поэтому предлагаю такое решение:
int n;
cin >> n;
if (n > 180)
cout << "высокий";
else if (n < 140)
cout << "низкий";
else
cout << "нормальный";
или так:
int n;
cin >> n;
cout << (n > 180 ? "высокий" : (n < 140 ? "низкий" : "нормальный"));