Найти - Пользователи
Полная версия: По какому пути пойти
Начало » Python для новичков » По какому пути пойти
1 2 3
JOHN_16
py.user.next
если не сложно, в раздел Книгг кинь названия рекомендуемой литературы, по даннмоу вопросу разумеется.
py.user.next
JOHN_16
Обычно если книжку рекомендуешь, результаты от рекомендации нулевые. А почему? Потому что если человеку нужна рекомендация, значит он ещё на уровне начинающего, так как сам не нашёл. Если же человек опытный, то он сам может себе найти всё.
Я вот сейчас читаю Баха (UNIX процессы и ядро), Абеля (Assembler), а по программированию ждёт изучения Майерс (проектирование модулей), Ахо (трансляция языков) и ещё надо допройти Кушнеренко (объёмные тела, хеширование).
То есть там нигде нет “введите print('hello, world'), нажмите на кнопку, смотрите на экран”, кому эти книжки давать?
Вон задача, никто не решил. Какие там хеширования, грамматики или красно-чёрные деревья. Элементарная школьная задачка.
zorgingyaringen
py.user.next
Там ещё теория программирования есть, без которой тоже ничего путного не напишешь, хоть 100 языков знай.
Если я правильно понимаю вы говорите о мышлении программиста ? Мне по этому поводу добрый человек с опытом дал совет - для выработки соответствующего мышления, обязательно знакомство с трудами Кнута (Искусство программирования) в советском варианте перевода. Сказал что без этих знаний что изложены в трудах Кнута, дорога в программирование будет закрыта.

И вам благодарен за ваш списочек литературы.
Alex2342
py.user.next
А я решил
Работает с русским алфавитом, остальное выводит как есть.

#!/usr/bin/env python3
# Алфавит
alphabet = ['а', 'б', 'в', 'г', 'д', 'е', 'ё', 'ж', 'з', 'и',
           'к', 'л', 'м', 'н', 'о', 'п', 'р', 'с', 'т', 'у',
           'ф', 'х', 'ц', 'ч', 'ш', 'щ', 'ъ', 'ы', 'ь', 'э',
           'ю', 'я']
# Функция сдвига в право на один символ
def letter_right(str):
    str = list(str)
    newlist = []
    newstr = ''
    # Цикл по передонной строке
    for letter in str:
        upper = False
        # Если символ в верхнем регистре
        if letter.isupper():
            # Запоминаю что опичил его
            upper = True
            # Опускаю его
            letter = letter.lower()
        # Если буква есть в алфавите
        if letter in alphabet:
            # Получаю индекс последующего элемента в массиве
            index = alphabet.index(letter) + 1
            # Если элемент последний в алфавите
            if index > 31:
                # Возьмём первый
                index = 0
            # Получаю последующий элемент
            next_letter = alphabet[index]
            # Если мы опускали регистр
            if upper:
                # Поднимим
                next_letter = next_letter.upper()
            # Забиваю букву в массив
            newlist.append(next_letter)
        # Если буква в алфавите нет
        else:
            # Просто добавляем её массив
            newlist.append(letter)
    # Преобразую массив в строку
    for letter in newlist:
        newstr = newstr + letter
    # Возвращаю строку
    return newstr
# Вечный цикл
while True:
    # Прошу чт нибуть ввести
    str = input('Введите текст >>>')
    # Вывожу со сдвигом в право по алфавиту
    print(letter_right(str))
Alex2342
py.user.next
Дай ещё какую нибудь задачку посложнее, что бы подумать можно было.
py.user.next
Alex2342
А я решил :)
Нет. Ты даже близко не подобрался.
Alex2342
Работает с русским алфавитом, остальное выводит как есть.
И отмазочку залепил. Остальное должно тоже работать. Полурешения не принимаются.
И не пиши сюда решение, здесь другая тема. Пиши всё туда, там все претенденты собрались. Если бы ты их читал, то не сделал бы ошибок, которые у них уже были и там объясняются.

Alex2342
Дай ещё какую нибудь задачку посложнее, что бы подумать можно было.
Там один уже тоже просил следующую, даже близко не решив эту задачу.
Так что давай, вся свалка там.

zorgingyaringen
для выработки соответствующего мышления, обязательно знакомство с трудами Кнута (Искусство программирования) в советском варианте перевода
По Кнуту мышление не выработаешь. У него можно расширить набор алгоритмических средств (зачем его и читают). Но он занимается комбинаторикой, теорией чисел и всё, поэтому программы после него писать не будешь.
Alex2342
py.user.next
Нет. Ты даже близко не подобрался.
А что оно должно делать? Может я не понял сути задачи?

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

py.user.next
И отмазочку залепил. Остальное должно тоже работать.
Могу в класс запихать и добавить функцию добавления алфавитов, добавишь алфавиты всего мира и будет работать. Или может символы %№"%! цифры пробелы долно ещё сдвигать))))

Или может это вообще как то подругому должно быть? Намекни хотя бы. Или конкретизируй задачу.

PooH
py.user.next
ещё надо допройти Кушнеренко (объёмные тела, хеширование)
Что за манускрипт?
zorgingyaringen
py.user.next
Обычно если книжку рекомендуешь, результаты от рекомендации нулевые.

py.user.next
По Кнуту мышление не выработаешь. У него можно расширить набор алгоритмических средств (зачем его и читают). Но он занимается комбинаторикой, теорией чисел и всё, поэтому программы после него писать не будешь.
Может тогда статью каую нибудь посоветуете почитать на эту тему, которая вложит зерно в правильном направлении мышления.
Надо же с чего-то начинать правильно мыслить
py.user.next
Alex2342
А что оно должно делать? Может я не понял сути задачи?
Ну, она сдвигает все буквы, а должна сдвигать только первую. Не знаю, как ты читал задание, но с такой выборочной невнимательностью далеко не уедешь.
Там надо взять сообщение автора и передать его программе. (Вообще, с любым сообщением должно работать, но сообщения автора обычно хватает, чтобы поломать все коды страждущих.)

PooH
Что за манускрипт?
Ну, он делал школьные учебники по информатике. Академик РАН, а потом для МГУ учебник для мехмата.
Писал уже тут и тут , когда у Budulianin решения ломал.

zorgingyaringen
Может тогда статью каую нибудь посоветуете почитать на эту тему, которая вложит зерно в правильном направлении мышления.
Надо же с чего-то начинать правильно мыслить
Давай, к решению задачи присоединяйся. Alex2342 всё равно её не решит. А там так расчитано, чтобы нельзя было готовыми решениями решить это. Решая задачки, ты поймёшь, чего ты не знаешь. А когда поймёшь, тогда можно и материал подыскивать, который разрешает эти пробелы.
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