Бесплатный урок с нашим репетитором!

Узнать подробнее

Новая Школа - онлайн-школа подготовки к ЕГЭ
При поддержке
Посмотреть все вопросы нейросети
Бесплатный пробный урок с репетитором

Узнай больше про репетиторов Новой Школы и запишись на бесплатный пробный урок. Мы проверим твой уровень знаний и составим план обучения по любому предмету и классу

Вопрос от София Петрушка 10 мая 2025 17:49

Создайте функцию пользователя ЦЕЗАРЬ (Слово, Ключ), выполняющую по заданному значению ключа шифрование (дешифрование) заданного слова шифром Цезаря. Напиши код VBA

Ответ нейросети

10 мая 2025 17:49

Конечно! Вот пример кода VBA для функции Цезарь, которая шифрует или дешифрует слово по заданному ключу. В этом коде используются параметры: слово и ключ. Если ключ положительный — выполняется шифрование (сдвиг вперед), если отрицательный — дешифрование (сдвиг назад).

Function ЦЕЗАРЬ(Слово As String, Ключ As Integer) As String
    Dim Результат As String
    Dim i As Integer
    Dim Символ As String
    Dim Код As Integer
    Результат = ""
    
    For i = 1 To Len(Слово)
        Символ = Mid(Слово, i, 1)
        Код = Asc(Символ)
        
        ' Обработка заглавных букв
        If Код >= 65 And Код <= 90 Then
            ' Шаг шифрования/дешифрования
            Код = ((Код - 65 + Ключ) Mod 26)
            If Код < 0 Then Код = Код + 26
            Код = Код + 65
        ' Обработка строчных букв
        ElseIf Код >= 97 And Код <= 122 Then
            Код = ((Код - 97 + Ключ) Mod 26)
            If Код < 0 Then Код = Код + 26
            Код = Код + 97
        End If
        
        Результат = Результат & Chr(Код)
    Next i
    
    ЦЕЗАРЬ = Результат
End Function

Объяснение:

  • Функция ЦЕЗАРЬ принимает два аргумента: слово и ключ.
  • Для каждого символа строки определяется его ASCII-код.
  • Если символ — заглавная буква (от A до Z), сдвиг происходит в диапазоне 65–90.
  • Если — строчная буква (от a до z), сдвиг происходит в диапазоне 97–122.
  • Для правильной работы используется оператор Mod 26, чтобы цикл был по алфавиту.
  • В случае отрицательного Ключа функция корректно обрабатывает сдвиг назад.
  • Остальные символы (пробелы, знаки препинания и т.д.) остаются без изменений, так как условие работает только для букв.

Если нужен пример использования или дополнения — скажите!

Задай свой вопрос

Напиши любую задачу или вопрос, а нейросеть её решит

Похожие вопросы 15

Бесплатно Мобильное приложение ГДЗ
Мобильное приложение ГДЗ

Задавай вопросы искуcственному интеллекту текстом или фотографиями в приложении на iPhone или Android

qr-codegoogle-playapp-store

Саша — ассистент в телеграмме

Создайте функцию пользователя ЦЕЗАРЬ (Слово, Ключ), выполняющую по заданному значению ключа шифрование (дешифрование) заданного слова шифром Цезаря. Напиши код VBA
Конечно! Вот пример кода VBA для функции Цезарь, которая шифрует или дешифрует слово по заданному ключу. В этом коде используются параметры: слово и ключ. Если ключ положительный — выполняется шифрование (сдвиг вперед), если отрицательный — дешифрование (сдвиг назад). ```vba Function ЦЕЗАРЬ(Слово As String, Ключ As Integer) As String Dim Результат As String Dim i As Integer Dim Символ As String Dim Код As Integer Результат = "" For i = 1 To Len(Слово) Символ = Mid(Слово, i, 1) Код = Asc(Символ) ' Обработка заглавных букв If Код >= 65 And Код <= 90 Then ' Шаг шифрования/дешифрования Код = ((Код - 65 + Ключ) Mod 26) If Код < 0 Then Код = Код + 26 Код = Код + 65 ' Обработка строчных букв ElseIf Код >= 97 And Код <= 122 Then Код = ((Код - 97 + Ключ) Mod 26) If Код < 0 Then Код = Код + 26 Код = Код + 97 End If Результат = Результат & Chr(Код) Next i ЦЕЗАРЬ = Результат End Function ``` **Объяснение:** - Функция `ЦЕЗАРЬ` принимает два аргумента: слово и ключ. - Для каждого символа строки определяется его ASCII-код. - Если символ — заглавная буква (от A до Z), сдвиг происходит в диапазоне 65–90. - Если — строчная буква (от a до z), сдвиг происходит в диапазоне 97–122. - Для правильной работы используется оператор `Mod 26`, чтобы цикл был по алфавиту. - В случае отрицательного Ключа функция корректно обрабатывает сдвиг назад. - Остальные символы (пробелы, знаки препинания и т.д.) остаются без изменений, так как условие работает только для букв. Если нужен пример использования или дополнения — скажите!