задачка на целочисленную арифметику
Не получается решить задачу:
Игрок 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, время: 06:25. |