 |
Вітаю Вас, Гість · RSS |
 |
Розв'язуємо задачі в стилі Python
| |
Bandalak |
Дата: Tu, 05.09.2017, 19:28 | Повідомлення № 31 |
Лідер форуму
Повідомлень: 6386
| Цитата Пилипчук_О_П (  )
В даній статті нічого не зрозуміло, описаний тільки синтаксис без пояснень та прикладів.
|
|
| |
swetikccc |
Дата: Tu, 05.09.2017, 19:40 | Повідомлення № 32 |
Ветеран спілкування
Повідомлень: 4208
| Просто перебір усіх символів рядка
|
|
| |
Пилипчук_О_П |
Дата: Tu, 05.09.2017, 19:42 | Повідомлення № 33 |
Ветеран спілкування
Повідомлень: 4330
| Цитата swetikccc (  ) Почитайте про срезы(українською як перекладають не знаю) Чим поганий варіант "зріз"? В англійській саме таке слово й використано: slice. https://e2u.org.ua/s?w=slice&dicts=all&highlight=on
Цитата swetikccc (  ) а ще ньюанс останній нолик буде спереду ж, тому обернений рядок потрібно перетворити на число, а потім виводити В межах сформульованої задачі не зрозуміло, що робити з кінцевими нулями. Сказано вивести "задом наперед".
|
|
| |
Пилипчук_О_П |
Дата: Tu, 05.09.2017, 19:45 | Повідомлення № 34 |
Ветеран спілкування
Повідомлень: 4330
| Цитата Пилипчук_О_П (  )
Цитата swetikccc (  ) Просто перебір усіх символів рядка В даному випадку - так. Але цикл for-in - потужніший. В ньому перебираються всі елементи з певної сукупності: символи в рядку, елементи в масиві, множині, списку, кортежі тощо. При цьому власне сам елемент змінити неможливо (не знаю, чи у всіх мовах), зате його якось можна використати в алгоритмі.
|
|
| |
swetikccc |
Дата: Tu, 05.09.2017, 19:56 | Повідомлення № 35 |
Ветеран спілкування
Повідомлень: 4208
| Для зрозумілості наведу звичний цикл for i in range(10): range це функція яка вертаєцілі числа і може мати три аргументи 1 Якщо один то від нуля до нього, але він не влючається. 2 Два , перший від, інший до 3 Якщо три то третій крок
|
|
| |
Пилипчук_О_П |
Дата: Tu, 05.09.2017, 20:03 | Повідомлення № 36 |
Ветеран спілкування
Повідомлень: 4330
| Ще приклади:
a='qwe rty yui' for i in a: print(i)
Результат - посимвольне виведення орядка: q w e
r t y
y u i
a=['qwe','rty','yui'] for i in a: print(i)
Результат - поелементне виведення списку: qwe rty yui
Відредаговано: Пилипчук_О_П - Tu, 05.09.2017, 20:04 |
|
| |
swetikccc |
Дата: Tu, 05.09.2017, 20:06 | Повідомлення № 37 |
Ветеран спілкування
Повідомлень: 4208
| Цитата Пилипчук_О_П (  ) При цьому власне сам елемент змінити неможливо (не знаю, чи у всіх мовах), зате його якось можна використати в алгоритмі Можливо Ось як, попробуйте повинно працювати j=0 for i in str1 str=тут міняємо j=j+1
Відредаговано: swetikccc - Tu, 05.09.2017, 20:08 |
|
| |
swetikccc |
Дата: Tu, 05.09.2017, 20:09 | Повідомлення № 38 |
Ветеран спілкування
Повідомлень: 4208
| str1[j] в квадратних j Щось не вводиться
Відредаговано: swetikccc - Tu, 05.09.2017, 20:29 |
|
| |
Пилипчук_О_П |
Дата: Tu, 05.09.2017, 20:16 | Повідомлення № 39 |
Ветеран спілкування
Повідомлень: 4330
| Цитата swetikccc (  ) str1 в квадратних j Щось не вводиться
Не вводиться, бо увімкнено режим bb-тегів(?) Перемкніть на візуальний редактор.
|
|
| |
Пилипчук_О_П |
Дата: Tu, 05.09.2017, 20:24 | Повідомлення № 40 |
Ветеран спілкування
Повідомлень: 4330
| Цитата swetikccc (  ) Ось як, попробуйте повинно працювати j=0 for i in str1 str=тут міняємо j=j+1
Я мав на увазі трохи інше. Об'єкт i в цьому разі містить копію елемента (наприклад, символ) і не дозволяє прямо змінити відповідний символ в рядку (елемент в списку тощо). Експеримент дав такий результат: for i in a: #i почергово копіює елементи списку i='111' #i втрачає попереднє значення print(i) print (a) #список не змінився
111 111 111 ['qwe', 'rty', 'yui']
|
|
| |
Bandalak |
Дата: Th, 14.09.2017, 21:31 | Повідомлення № 41 |
Лідер форуму
Повідомлень: 6386
| https://netoi.org.ua/index_ua.php?lng=ua&cid=823&task=Circle Вiртуальний центр проведення інтернет-олімпіад (Пітон теж там доступний). NETOI.ORG.UA
|
|
| |
swetikccc |
Дата: Fr, 27.10.2017, 11:43 | Повідомлення № 42 |
Ветеран спілкування
Повідомлень: 4208
| Задача 9 Заїзд в ЛКШ Організатори Всеукраїнської Літньої Комп'ютерної Школи "ОЛІМП" організували централізований заїзд учасників з Кременчука в НОК "Ерудит". Для цього було замовлено три автобуса, які одночасно під'їхали до залізничного вокзалу. Усі учасники швидко розподілились по автобусах. Старша вожата Марина Віталіївна з'ясувала, що кількість учасників ЛКШ в різних автобусах різна, і вона вирішили пересадити частину учнів так, щоб у кожному автобусі їх було порівно.
Дороможіть Марині Віталіївні з'ясувати, яку найменшу кількість дітей потрібно пересадити. Формат вхідних даних: У першому рядку задано три натуральних числа, не більших за 100 - кількість дітей у першому, другому та третьому автобусах. Формат вихідних даних: Виведіть одне число - найменшу кількість дітей, яких потрібно пересадити. Якщо це зробити не можливо, то виведіть NO SOLUTIONS. Приклади Вхідні дані Результат роботи 2 3 4 1 9 10 10 NO SOLUTIONS
Відредаговано: swetikccc - Fr, 27.10.2017, 11:54 |
|
| |
swetikccc |
Дата: Fr, 27.10.2017, 11:50 | Повідомлення № 43 |
Ветеран спілкування
Повідомлень: 4208
| Попередня майже звичайна, а ось цю можливо орігінально зробити на Пітоні Задача 10 Новий модуль Новий модуль отримує на вхід чотирьохзначне число та генерує з цифр цього числа мінімально можливе чотирьохзначне число та максимально можливе чотирьохзначне число. Нажаль, останнім часом, модуль почав давати збій і виводити не зрозуміло що. Дороможіть відновити роботу модуля - напишіть програму, яка моделює роботу модуля. Формат вхідних даних: У першому рядку задано одне чотирьохзначне число. Формат вихідних даних: Виведіть в першому рядку два числа - найменше чотирьохзначне число та найбільше чотирьохзначне число, які можна отримати з цифр даного числа. Числа розділяйте одним пропуском. Приклади Вхідні дані `Результат роботи 1234 1234 4321
Відредаговано: swetikccc - Fr, 27.10.2017, 11:54 |
|
| |
Пилипчук_О_П |
Дата: Fr, 27.10.2017, 12:16 | Повідомлення № 44 |
Ветеран спілкування
Повідомлень: 4330
| Цитата swetikccc (  ) найменше чотирьохзначне число В задачі нічого не сказано про цифру 0. 0123 - це 4-значне число?
|
|
| |
Bandalak |
Дата: Fr, 27.10.2017, 12:36 | Повідомлення № 45 |
Лідер форуму
Повідомлень: 6386
| Ні. У цьому випадку мінімальним буде - 1023.
|
|
| |
© Форум інформатиків України, 2007-2022.  |