Этому есть несколько причин. 1. Если имеется требование объявлять ВСЕ переменные в программе, то это хранит программиста от искаженного указания имен переменных, например, xl вместо x1 или suma вместо summa. 2. Объявление переменных позволяет явно указать их типы, а использование типизированных переменных позволяет с меньшими усилиями добиться правильной записи алгоритма. Например, при типизации переменных последовательность команд c=5 a=3*c c=a/3 недопустима. В самом деле, присваивание необъявленной переменной "с" значения целочисленной константы 5 подразумевает, что она тоже становится целочисленной. Далее, по той же причине необъявленная переменная "а" также получает целый тип. И третий оператор выполняет деление. А такая операция деления дает вещественный результат и присваивание его целочисленной переменной "с" недопустимо, потом что приведет к потере дробной части. И мы получаем сообщение об ошибке, т.е. можем вовремя ошибку увидеть и исправить её. 3. Некоторые системы программирования независимо от того, объявлена переменная или нет, очищают её нулём (или делают пустой, если переменная символьная). А некоторые этого не делают. Появление в программе необъявленной переменной с таким неопределенным значением может вызывать неожиданное поведение этой программы. Многие системы, в которых объявление переменных обязательно, выдают сообщение, что переменной не было присвоено начальное значение, что также избегать ошибок. 4. При объявлении переменных в одном месте, им всем отводится одна область памяти, что уменьшает затраты вычислительной системы на адресацию памяти и делает программу компактнее, а также ускоряет её работу. Особенно это важно при нехватке оперативной памяти, когда программа вынужденно использует виртуальную память, которая располагается на внешнем носителе.
<script> function DeShifr() { let Text = document.getElementById("shifr").value; let L = Text.length; let NeChet = Text.substr(0,L/2+L%2); let Chet = Text.substr(L/2+L%2,L/2); let DeShifr = ""; for (let i = 0, c = 0, n = 0; i < L; i++) { DeShifr += (i%2?Chet[c++]:NeChet[n++]); } document.getElementById("DeShifr").innerHTML = DeShifr; } </script> </head> <body> <form> <label for="shifr">Введите зашифрованный тест сообщения:</label> <textarea id="shifr"></textarea> <button type="button" onCLick="DeShifr()">Расшифровать</button> <div id="DeShifr"></div> </form> </body> </html>
1300
Объяснение:
Пирог или яблоко есть на 3400, то есть 3400 страниц содержат хотя-бы 1 из этих слов
Слово Пирог содержат 2100 страниц
А сразу 2 этих слова содержат 1300 страниц(Это нам не надо)
3400-2100 = 1300
Все страницы, которые содержат слово Яблоко содержат слово Пирог