Показать сообщение отдельно
  #8 (permalink)  
Старый 09.09.2022, 11:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,135

Olga27,
далее сами )))
<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <script>
        const bukvy = ['А', 'Б', 'В', 'Г', 'Д', 'Е', 'Ж', 'З',
            'И', 'Й',
            'К', 'Л', 'М', 'Н', 'О', 'П', 'Р',
            'С', 'Т', 'У', 'Ф', 'Х', 'Ц', 'Ч', 'Ш', 'Щ', 'Ъ', 'Ы', 'Ь', 'Э', 'Ю', 'Я'
        ];
        const sogl = ['Б', 'В', 'Г', 'Д', 'Ж', 'З',
            'Й', 'К', 'Л', 'М', 'Н', 'П', 'Р', 'С', 'Т', 'Ф', 'Х', 'Ц',
            'Ч', 'Ш', 'Щ', 'Ъ', 'Ь'
        ];
        const glasn = ['А', 'О', 'Э', 'Е', 'И', 'Ы',
            'У', 'Ю', 'Я'
        ];
        let word = "ФАНТАСТ";
        const createArr = (arr, word) => arr.slice(0).filter(a => !word.includes(a)).sort(_ => .5 - Math.random());
        function showInfo(word) {
            let s = createArr(sogl, word);
            let g = createArr(glasn, word);
            let length = 16 - word.length;
            let endWord = Array.from({ length }, (_, i) => (i % 2 == 0 ? g[i / 2] : s[++i / 2])||"!");
            return word.split("").concat(endWord);
        }
        function Main() {
            var t = showInfo(word);
            document.getElementById("debug").value = t.join("\n")
        }
        window.addEventListener("load", Main);
    </script>
</head>
<body>
    <textarea id="debug" rows="20" cols="45"></textarea>
</body>
</html>
Ответить с цитированием