Найти - Пользователи
Полная версия: Помогитерешить задачу! Завтра экзамен!
Начало » Центр помощи » Помогитерешить задачу! Завтра экзамен!
1 2
ellinishe
Завтра экзамен, нужно внести изменения в лабораторную, чтоб засчитали. Помогите пожалуйста, не шарю в питоне совсем…
Вот собственно исходное задание и код:
Напишите функцию, принимающую в качестве аргумента цифру сдвига (как ROT-13) и сообщение, а возвращающую закодированное сообщение >>> encrypt(13, “the cake is a lie”)

def encrypt(n, s):
result = “”
for ch in s:
if ch == “ ”:
result += “ ”
else:
result += chr(ord(ch) + n)
return result

s = input(“Введите строку: ”)
n = int(input(“Введите цифру сдвига: ”))
print(encrypt(n, s))

Что нужно сделать по индивидуальному заданию:
Сделать так, чтобы символы кодировались ключом, который каждый раз меняется на +2
0 1 2 3 4
z e b r a
1) z —-> с ключом 5
2) е —-> c ключом 7
3) b —-> с ключом 9
r —-> с ключом 11
a —-> с ключом 13
terabayt
ну если я правильно понял задание, то как-то так
def encrypt(n, s):
  result = ""
  for ch in s:
    if ch == " ":
      result += " "
    else:
      result += chr(ord(ch) + n)
  return result
s = input("Введите строку: ")
n = int(input("Введите цифру сдвига: "))
print(encrypt(n, s))
#все что ниже это уже индивидуальное задание
def id_task(s, k):
    return ''.join([chr(ord(s[i]) + j) if s[i] != ' ' else ' ' for i, j in enumerate(range(k, (len(s)-1)*2+k+1, 2))])
print(id_task(s, n))
ellinishe
спасибо! попробую сдать
NotDeadAlready
from string import ascii_lowercase, ascii_uppercase
def encrypt_symbol(sym, key):
    abc = False
    if sym in ascii_lowercase:
        abc = ascii_lowercase
    elif sym in ascii_uppercase:
        abc = ascii_uppercase
    if abc:
        sym = abc[(abc.index(sym) + key) % 26]
    return sym
def encrypt_message(msg, key):
    enc_msg = ""
    for i in msg:
        enc_msg += encrypt_symbol(i, key)
        key += 2
    return enc_msg
print(encrypt_message("Zebra 666", 5))
Isem
NotDeadAlready
Синтаксис Питона сосредоточил в себе несуразности Лиспа и Фортрана. – Ларри Уолл, создатель Перла.

Что двигает тебя?
Isem
NotDeadAlready
def encrypt_message(msg, key):
enc_msg = “”
for i in msg:
enc_msg += encrypt_symbol(i, key)
key += 2
return enc_msg
print(encrypt_message(“Zebra 666”, 5))
щас блевану
Isem
NotDeadAlready
def encrypt_symbol(sym, key):
abc = False
if sym in ascii_lowercase:
abc = ascii_lowercase
elif sym in ascii_uppercase:
abc = ascii_uppercase
if abc:
sym = abc
return sym
возможно, ты хороший человек. Докажи тогда, что ты не дебил.
NotDeadAlready
Я никому ничего не обязан доказывать. Тем более эмоционально и интеллектуально незрелому человеку, мыслящему в категориях детсадовского “взятия на слабо”. Кем ты меня считаешь - твое личное дело.

Посмотри вот это видео и почитай статью, может быть просветлеет в мозгах. Хотя вряд ли, конечно…

http://news.rambler.ru/25560518/

http://www.youtube.com/watch?v=FcfDhRz8nUQ

Ну и вот еще - https://clck.ru/9PcuJ
4kpt_III
NotDeadAlready
Я никому ничего не обязан доказывать.
Действительно не надо. Все и так всё поняли. Не тратьте свое и наше время зря. Да и говнокод плодить здесь тоже лишнее. Тут и так новички в темах жутняк пишут. А если еще таким же жутняком и начинают “эксперты” отвечать, то вообще становится тоскливо…

P.S. Это не иностранный форум по Си. Вы перепутали
NotDeadAlready
Все и так всё поняли.

Ваши слова льются чудотворным бальзамом на мое израненное сердце. Хоть одному из 88% что-то стало понятно. Эдак их станет 87%, а там, глядишь, до уровня какой-нибудь Португалии дойдем. Лет через 200.

Если помните, я тут уже интересовался, как навсегда самовыпилиться отсюда. Мне так никто и не ответил.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB