СРОЧНО!!! ГОТОВЛЮСЬ К ОГЭ ПО ИНФОРМАТИКЕ И ИКТ Автомат получает ** выход двузначное...

0 голосов
38 просмотров

СРОЧНО!!! ГОТОВЛЮСЬ К ОГЭ ПО ИНФОРМАТИКЕ И ИКТ Автомат получает на выход двузначное десятичное число. По полученному числу строится новое десятичное число по следующим правилам. 1. Вычисляются два числа - сумма квадратов старшего и младшего разрядов, а также квадрат суммы старшего и младшего разрядов. 2. Полученные два числа записываются друг за другом в порядке неубывания (без разделителей). Пример. Исходное число: 52. Вычисление числа: 29,49. Результат: 2949. Определите, сколько из приведённых ниже чисел могут получится в результате работы автомата. 10 11 25 95 2036 3264 6581 В ответе запишите только количество чисел. Объясните по подробнее пожалуйста))) С меня 20 баллов


Информатика (20 баллов) | 38 просмотров
0

Эммм... Ну как бы предмет называется Информатика и ИКТ. Если не знаете лучше советую промолчать, а не строить из себя умного

0

Не, я подумал, что это ты про исправительно-трудовую колонию.

0

Что тут знать? Пишешь две строчки кода, которые проверяют числа, и смотришь. Естественно, что после того, как ты отметил флажок на моём сообщении, я тебе помогать не буду.

0

Помоги, пожалуйста. Долго парюсь над этим заданием. Буду очень благодарен. А флажок я погорячился, извини

0

Да, лицемерная школота ещё и стыда не знает. Ладно, вон код.

Дан 1 ответ
0 голосов

javascript: function Пр(ч) { var стр = ч.toString(); for (let сч = 1; сч < стр.length; сч++) { let ч1 = parseInt(стр.substring(0, сч)), ч2 = parseInt(стр.substring(сч)); if (ч1 > ч2) continue; let к1 = Math.sqrt(ч1), к2 = Math.sqrt(ч2); if (к1 == Math.floor(к1)) { for (let сч1 = 1; сч1 < 10 && сч1 < ч2 - 1; сч1++) for (let сч2 = 1; сч2 * сч2 + сч1 * сч1 <= ч2; сч2++) if (сч2 * сч2 + сч1 * сч1 == ч2 && Math.pow(сч1 + сч2, 2) == ч1) return ч + ": " + сч1 + ", " + сч2; } if (к2 == Math.floor(к2)) { for (let сч1 = 1; сч1 < 10 && сч1 < ч1 - 1; сч1++) for (let сч2 = 1; сч2 * сч2 + сч1 * сч1 <= ч1; сч2++) if (сч2 * сч2 + сч1 * сч1 == ч1 && Math.pow(сч1 + сч2, 2) == ч2) return ч + ": " + сч1 + сч2; } }; return ч + ": -"; } [2949, 10, 11, 25, 95, 2036, 3264, 6581].forEach(function (зн) { alert(Пр(зн)); });</p>

(654k баллов)