задачка на целочисленную арифметику
Не получается решить задачу:
Игрок A объявляет двузначное число от 01 до 99. Игрок B меняет местами его цифры и прибавляет полученное число к сумме его цифр. Полученный результат он объявляет игроку A. Игрок A проделывает с этим числом ту же процедуру, и так они продолжают поступать поочередно, объявляя числа. От суммы чисел берется остаток от деления на 100, поэтому объявляются лишь двузначные числа. Какие числа может объявить игрок A на начальном шаге, чтобы игрок B в некоторый момент объявил число 00. Подскажите у кого какие идеи есть!!! |
тебе уравнение составить чтоли?
|
Можно и уравнение.... я просто не понимаю что в конечном итоге должно получится((
|
Maxmaxmахimus
С тем, что я не знаю как это на JavaScript будет... увы не объяснили должным образом.... ну может цвет волос сказался, судя во Вашей логике |
Видимо и у меня отсутствует та
Цитата:
1) либо вы ошиблись форумом, либо вы хотели написать JavaScript 2) исправьте, иначе ща набегут тролли 3) попрбуйте расписать все это в математическом плане, взяв первую цифру за х, 2ую за у: ху - берем ух - меняем ух + х+ у = х(у+1) + у - cумма цифр и числа дальше я не знаю как делать, поэтому ждите помощи, или сами, после когда составите целостное уравнение, пишите так: var x = случайное число, в нужном диапазоне var y = случайное число, в нужном диапазоне if(ваше уравнение) короче пускай генерирует числа, пока уравнение не станет верным. |
9xakep
И на этом спасибо)) |
конечное число может быть 68 (86+6+8=100); моя формула была х+у+10у+х=100;
|
Denizz,
Я тоже только учу... но уже сдавать надо( |
тут сначала надо задать генерирование чисел x y с пом. for , потом наверное do resultat=11*x+y whyle !(10*y+2x)/100==0 короче и в итоге вывести resultat, пойду поколдую, может получится...
|
Natasha,
это была его подпись, как вариант можешь запустить и ждать...если алгоритм верный, то он с генерирует число, которое тебе подходит, если неверный, то ждать будете зря :D c=0; var inter = setInterval(function () { var x = Math.random() * 10 if(x==0) x+=1 var y = Math.random() * 10 if(y==0) y+=1 var x1 = x var y1 = y if(c<6800) { if(c!=6800) { var c = c + y*x + x + y x = (c - c % 10)/10 y = c % 10 } else { clearInterval(inter) alert(x1+';'+y1) } } },1) |
Часовой пояс GMT +3, время: 03:13. |