python — Необходимо написать программу,которая будет принимать строку и будет возвращать строку, содержащую следующий номер версии
# Написать функцию next_version, которая будет принимать строку (текущая версия программного обеспечения) # и будет возвращать строку, содержащую следующий номер версии. # Правила: # все числа, кроме первого, должны быть меньше 10 # если после увеличения они становятся равными 10 - установите их в 0 и последовательно увеличите следующий номер # # Пример: # next_version("1.2.3") ==> "1.2.4" # next_version("0.9.9") ==> "1.0.0" import traceback def next_version(s): s = s[::-1] print(s) for i in range (0,len(s)): if s[i]==9: s[i]=0 if s[i+1]<9: s[i+1]=s[i+1]+1 else: s[i+2]=s[i+2]+1 elif (s[i]!='.'): s[i]=s[i]+1 break s = s[::-1] print(s) return s # Тесты try: assert next_version("1.2.3") == "1.2.4" assert next_version("0.9.9") == "1.0.0" assert next_version("1") == "2" assert next_version("1. 2.3.4.5.6.7.8") == "1.2.3.4.5.6.7.9" assert next_version("9.9") == "10.0" except AssertionError: print("TEST ERROR") traceback.print_exc() else: print("TEST PASSED")
- python
2
«Да тут всю систему менять надо!» Переписал целиком, потому что там всё надо чинить — и метод, и индексы. Да и код мне кажется так гораздо понятнее стал.
def next_version(s): s = list(map(int, s.split('.'))) s[len(s) - 1] += 1 for i in reversed(range(1, len(s))): if s[i] == 10: s[i] = 0 s[i - 1] += 1 else: break return '.'.join(map(str, s))
Вывод:
TEST PASSED
1
def next_version(s): if s == '9.9': s = '10.0' return s s = s.split('.') count = s.count('9') if count == 0: s[-1] = str(int(s[-1]) + 1) elif count == 1: index = s. index('9') s[index - 1] = str(int(s[index - 1]) + 1) s[index] = '0' elif count == 2: s[0] = str(int(s[0]) + 1) s[1] = s[2] = '0' else: print('Ошибка ввода') s = '.'.join(s) return s
1
Зарегистрируйтесь или войдите
Регистрация через Google
Регистрация через Facebook
Регистрация через почту
Отправить без регистрации
Почта
Необходима, но никому не показывается
Отправить без регистрации
Почта
Необходима, но никому не показывается
Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки
Самоучитель для начинающих программистов — Разработка на vc.
ru640 просмотров
Программирование — это навык, который может открыть множество дверей в мире современных технологий. Но как начать изучать программирование, если вы никогда этим не занимались раньше? В этой статье мы расскажем, как научиться программировать с нуля, представляя подробный план действий для начинающих, а также описывая основные концепции и терминологию.
Шаг 1: Выберите язык программирования
Первый шаг — выбрать язык программирования, который вы хотите изучать. Существует множество языков программирования, каждый из которых имеет свои преимущества и недостатки. Однако, если вы начинаете с нуля, рекомендуется выбрать язык, который легко изучить и имеет большое сообщество разработчиков, такой как Python или JavaScript.
Шаг 2: Изучите основы
Когда вы выбрали язык программирования, следующий шаг — изучить основы. Начните с изучения базовых концепций, таких как переменные, типы данных, операторы и условные операторы. Эти концепции являются основой любого языка программирования, поэтому очень важно понимать их.
Шаг 3: Напишите свою первую программу
Когда вы изучили основы, напишите свою первую программу. Это может быть простой скрипт, который выводит текст на экран или решает математическую задачу. Не бойтесь делать ошибки — это нормально в процессе изучения.
Шаг 4: Практикуйтесь
Шаг 5: Общайтесь с сообществом
Чтобы получить больше информации и научиться лучше, не забывайте общаться с сообществом программистов. Участвуйте в дискуссиях, задавайте вопросы и обменивайтесь опытом. Также существуют множество онлайн-курсов и ресурсов, которые могут помочь вам на пути к изучению программирования.
Основная терминология в программировании:
При изучении программирования вы столкнетесь с множеством терминов, которые являются ключевыми для понимания основных концепций. Вот некоторые из них:
- Код (code) — это набор инструкций, который компьютер может выполнить. Код может быть написан на разных языках программирования, таких как Python, Java, C++, JavaScript и других.
- Компилятор (compiler) — это программа, которая преобразует исходный код на одном языке программирования в машинный код, который может быть понят компьютером.
- Интерпретатор (interpreter) — это программа, которая читает исходный код на одном языке программирования и выполняет его построчно.
- Переменная (variable) — это область памяти, которая хранит значение, которое может изменяться в ходе выполнения программы. Переменные могут иметь разные типы данных, такие как целые числа (int), строки (string), дробные числа (float) и другие.
- Функция (function) — это блок кода, который может быть вызван из другого места программы. Функции могут принимать параметры и возвращать значения.
Алгоритм (algorithm) — это последовательность инструкций, которые описывают решение задачи.- Условие (condition) — это конструкция, которая выполняет разные действия в зависимости от того, выполняется ли заданное условие.
- Цикл (loop) — это конструкция, которая позволяет выполнять блок кода несколько раз.
- Массив (array) — это структура данных, которая содержит набор элементов определенного типа. Каждый элемент в массиве имеет свой индекс, который позволяет обращаться к нему.
- Объект (object) — это экземпляр класса, который содержит свойства и методы. Объекты используются в объектно-ориентированном программировании.
Это только небольшой список терминов, которые могут встретиться в программировании. По мере продвижения в изучении языка программирования вы будете сталкиваться с новыми терминами и концепциями. Однако, понимание основной терминологии поможет вам лучше понимать процесс написания кода и работу с компьютером.
Основные концепции:
Основная концепция программирования заключается в написании кода, который описывает последовательность инструкций, которые должен выполнить компьютер для решения задачи или достижения определенной цели.
Программирование включает в себя ряд базовых концепций, которые являются ключевыми для написания эффективного кода. Некоторые из этих концепций включают в себя:
- Переменные и типы данных — переменные используются для хранения значений, которые могут быть изменены в ходе выполнения программы. Важно понимать различные типы данных, такие как числа, строки и булевы значения.
- Условные конструкции — условные конструкции используются для выполнения различных действий, в зависимости от значения переменной или другого условия.
- Функции и методы — функции и методы используются для повторного использования блоков кода и их организации в отдельные модули.
- Объектно-ориентированное программирование — объектно-ориентированное программирование (ООП) использует классы и объекты для описания объектов и их свойств, а также методов, которые могут быть вызваны на этих объектах.
- Алгоритмы и структуры данных — алгоритмы и структуры данных используются для эффективной организации и обработки данных.
Важно понимать, что программирование не сводится только к написанию кода. Это также включает в себя понимание проблемы, которую необходимо решить, анализ требований, проектирование и тестирование программного обеспечения. Кроме того, программирование включает в себя постоянное обучение и улучшение навыков для эффективного решения сложных задач.
В заключение, изучение программирования — это процесс, который требует времени, терпения и упорства. Не бойтесь делать ошибки, потому что это часть процесса обучения. Помните, что самый лучший способ научиться программированию — это практика. Не зацикливайтесь на теории и изучении языка программирования, а сконцентрируйтесь на том, как вы можете использовать его для создания чего-то нового и полезного.
Кроме того, стоит отметить, что в программировании очень важно уметь решать проблемы и находить ошибки. Часто, чтобы найти ошибку в коде, нужно быть терпеливым и уметь думать логически. Поэтому, помимо изучения конкретных языков программирования, также полезно развивать логическое мышление и умение решать задачи.
В итоге, изучение программирования может открыть для вас множество возможностей и стать основой для будущей карьеры в сфере технологий. Начните с простых шагов, следуйте плану и не бойтесь экспериментировать. Удачи в изучении программирования!
Большое количество книг по всем языкам программирования ты можешь найти в канале — Библиотека
Подписывайся и развивайся!
Напишите программу, которая неоднократно запрашивает у пользователя целые числа, пока пользователь не введет «готово». После ввода «готово» распечатайте наибольшее и наименьшее числа.
Если пользователь вводит что-либо, кроме действительного числа, поймайте его с помощью try/except, выведите соответствующее сообщение и проигнорируйте число. · GitHubНапишите программу, которая неоднократно запрашивает у пользователя целые числа, пока пользователь не введет «готово». После ввода «готово» распечатайте наибольшее и наименьшее числа. Если пользователь вводит что-либо, кроме действительного числа, поймайте его с помощью try/except, выведите соответствующее сообщение и проигнорируйте число.
Этот файл содержит двунаправленный текст Unicode, который может быть интерпретирован или скомпилирован не так, как показано ниже. Для просмотра откройте файл в редакторе, который показывает скрытые символы Unicode. Узнайте больше о двунаправленных символах Unicode
Показать скрытые символы
[Решено] 1.
Напишите программу, которая получает информацию о человеке (имя, возраст и…Получите больше от подписки*
- Доступ к более чем 100 миллионам учебных ресурсов по конкретным курсам
- Круглосуточная помощь опытных наставников по более чем 140 предметам
- Полный доступ к более чем 1 миллиону решений для учебников
*Вы можете изменить, приостановить или отменить в любое время
Вопрос от AgentGoldfinch3524
1. Напишите программу, которая берет данные о человеке (имя, возраст и город) и записывает их в файл
(persons.txt), используя цикл многократно. Вы должны записать в файл трех человек.
Программа завершается при вводе пользователем любой клавиши, кроме клавиши (Y или y).
Пример вывода первого запуска программы показан ниже:
Введите имя: John
Введите возраст: 20
Введите город: Sydney
Сохраненные данные: John 20 Sydney
Нажмите (Y или y), чтобы добавить другого человека, или любая клавиша для выхода
2. Напишите программу, которая считывает файл (persons.txt) из предыдущего вопроса -Q1 и показывает
все записи/строки из файла в виде хорошо отформатированного отчета с заголовком, как показано:
Имя Возраст Город
+- ——+———————+——— ——
Информатика Инженерная технология Программирование на Питоне ИКТ 104
Ответ и объяснение
Решено проверенным экспертом
Рейтинг Полезно
Ответил Mk_Shiva32
rem ipsum dolor sit amet, consectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, congue vel laoreet ac, dictum vitae
Fusce dui lectus, congue vel laoreet ac, dictum vitae odio. Донец АликетПолучите полный доступ к Course Hero
Изучите более 16 миллионов пошаговых ответов из нашей библиотеки
Подпишитесь, чтобы просмотреть ответ
odio. Донец Аликет. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lect
gue
ct
o. Донец Аликет. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, congue vel laoreet ac, dictum vitae odio. Донец Аликет. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Пеллентский дапибус 9Пошаговое объяснение Pellentesque dapibus efficitur onec aliquet. Lorem i
ipiscing elit. Nam lacinia pul
ac, dictum vitae odio. Донец Аликет. Lorem ipsum dolor Donec aliq
o. Донец Аликет. Lorem ipsum dolor sit amet, consecte inia pulvi
inia pulvinar tortor nec facilisis. Pellentesque dapibus inia pulvi
ce dui lectus, congue vel laoreet ac, dictum vitae odio. Donec a usce dui lectus
ac, dictum vitae odio. Донец Аликет. Lorem ipsum dolor sit amet facilisis. Pellentesque
usce dui lectus, congue vel laoreet ac, dictum vitae odio. Донец Аликет. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam lacinia pulvinar tortor
ec облегчение. Pellentesque dapibus efficitur laoreet. Nam ris congue vel laoreet ac, dictum vitae odio. Don
molestie consequat, ultrices ac magna. Fusce d
или nec facilisis. Pell usce dui lectus
lestie
or nec facilisis.