Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Задача по информатике — исполнитель Стрелка

Никита Кошеленко Ученик (194), закрыт 1 год назад
Напишите, пожалуйста, полное решение. Это задача из демо-варианта экзамена, нужно решать на листочке, без написания кода на компьютере.

Исполнитель Стрелка живёт на циферблате, имеющем 60 делений, пронумерованных от 0 до 59. Начальное положение — точка 0. Система команд исполнителя:
  • по часовой 3 — Стрелка перемещается по часовой стрелке на 3 деления;
  • против часовой 4 — Стрелка перемещается против часовой стрелки на 4 деления.
Программа для Стрелки — это последовательность команд. Определите количество различных числовых значений, в которых может остановиться Стрелка после выполнения программы, которая содержит ровно 5 команд.

Пробовал решать по-разному, не уверен, что правильно, но вроде бы получился ответ 6.
Лучший ответ
Коржо Высший разум (130611) 1 год назад
Пусть выполнено n команд 1-го вида и 5-n команд второго вида, причем n - число от 0 до 5. Тогда исполнитель после 5 таких команд независимо от их порядка будет на числе 3n - 4(5-n) = 7n - 20. Таким образом, множество возможных значений исполнителя есть {7n-20, n = 0,1,2,3,4,5}, а в нем 6 элементов.
Никита КошеленкоУченик (194) 1 год назад
Спасибо! Я тоже так размышлял, взяв x и y, а затем выразив одно через другое. Пришел к такому же ответу, теперь уверен, что правильно.
ЗызяМыслитель (6402) 1 год назад
Toczno!
Остальные ответы
Аля Нерина Ученик (104) 1 год назад
Console.Write( "Введите Час (0-11): " );
int H = int.Parse( Console.ReadLine() );
Console.Write( "Введите Минуты (0-59): " );
int M = int.Parse( Console.ReadLine() );

Console.WriteLine( CalcAngle( H, M ) );


double CalcAngle( int h, int m )
{
return ( h * 30 + m * 0.5 ) - ( m * 6 );
}


Console.Read ();
Аля НеринаУченик (104) 1 год назад
фигня полная
Похожие вопросы