С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 10.12.2021
Сообщений: 22

Упорядочить по возрастанию модулей элементы массива, расположенные между двумя наибольшими числами-палиндромами

16.12.2021, 15:00. Показов 1039. Ответов 9

Студворк — интернет-сервис помощи студентам
разработать программу на языке python для решения следующей задачи.
Упорядочить по возрастанию модулей элементы массива, расположенные между двумя наибольшими числами-палиндромами. Массив должен вводиться с клавиатуры.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.12.2021, 15:00
Ответы с готовыми решениями:

Упорядочить по возрастанию модулей элементы целочисленного массива, расположенные между третьим и пятым простыми числам
Упорядочить по возрастанию модулей элементы целочисленного массива, расположенные между третьим и пятым простыми числами. Не могу...

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

Упорядочить по возрастанию модулей элементы массива, расположенные между двумя наименьшими положительными числами
Я не могу понял как можно расположить между двумя наименьшими положительными числами? Вот код тут просто сортировка по возрастанию. ...

9
Простота-залог надежности
22 / 13 / 10
Регистрация: 15.09.2019
Сообщений: 193
16.12.2021, 18:26
akkordoff, проверка на число-палиндром:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import re
 
def isPalindrom(s):
    s=str(s)
    old = s.lower()
    new = s[::-1].lower()
 
    old = re.sub(r'[^\w\s]', '', old)
    new = re.sub(r'[^\w\s]', '', new)
 
    old = old.replace(" ", "")
    new = new.replace(" ", "")
    if old == new:
        return True
    return False
 
print(isPalindrom(1221))
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
16.12.2021, 18:39
Цитата Сообщение от SouthBoss Посмотреть сообщение
old = re.sub(r'[^\w\s]', '', old)
    new = re.sub(r'[^\w\s]', '', new)
old = old.replace(" ", "")
    new = new.replace(" ", "")
Что это за дичь?
Цитата Сообщение от SouthBoss Посмотреть сообщение
old = s.lower()
    new = s[::-1].lower()
Да и это недалеко ушло
0
Простота-залог надежности
22 / 13 / 10
Регистрация: 15.09.2019
Сообщений: 193
16.12.2021, 18:41
iSmokeJC, это работает.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
16.12.2021, 18:44
Цитата Сообщение от SouthBoss Посмотреть сообщение
это работает
Ну а че б дважды два не через интегралы решать?

Добавлено через 27 секунд
Ты вообще понимаешь что происходит в твоем коде?

Добавлено через 59 секунд
Вся эта портянка укладывается в одну строку return str(s)==str(s)[::-1]
0
Простота-залог надежности
22 / 13 / 10
Регистрация: 15.09.2019
Сообщений: 193
16.12.2021, 18:45
iSmokeJC, писал это для проверки строки на палиндром года два назад, как увидел пост сразу вспомнил, что тогда нашёл работающее решение. Если Вы подскажете, как можно сделать проще-готов послушать!


Неплохо! Интересно, что же меня сподвигло на именно такое решение...
0
0 / 0 / 0
Регистрация: 10.12.2021
Сообщений: 22
16.12.2021, 20:05  [ТС]
код нужно как можно проще, чтобы было проще объяснить.

Добавлено через 12 минут
плюс нужно чтобы код Упорядочивал по возрастанию модулей элементы массива, расположенные между двумя наибольшими числами-палиндромами. А тут даже массива нет...
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
16.12.2021, 20:09
Плюс нужно чтобы он был без дополнительных модулей, без функций, с комментариями к каждой строчке/оператору и т.д.
akkordoff, правильно говорю?
0
0 / 0 / 0
Регистрация: 10.12.2021
Сообщений: 22
23.12.2021, 21:26  [ТС]
Да правильно
0
2431 / 1474 / 633
Регистрация: 01.11.2021
Сообщений: 2,269
23.12.2021, 22:00
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
a = [123, 1221, 4554, 34, 45, 56, 67, 78, 87, 76, -34, -4, -1, 5445, -6776]
print(a)
 
first = second = None
for i in range(len(a)):
    if str(a[i]).strip('-') == str(a[i]).strip('-')[::-1]:
        if first is None:
            first = i
        elif second is None:
            second = i
        elif second and a[second] < a[i]:
            if a[second] > a[first]:
                first = second
            second = i
 
if first and second:
    s = sorted(a[first + 1:second], key=lambda x: abs(x))
    a = a[:first + 1] + s + a[second:]
    
print(a)
Bash
1
[123, 1221, 4554, -1, -4, 34, -34, 45, 56, 67, 76, 78, 87, 5445, -6776]
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.12.2021, 22:00
Помогаю со студенческими работами здесь

Упорядочить по возрастанию модулей элементы целочисленного массива, расположенные между третьим и пятым простыми числами
Program M1; Var A : Array Of Integer; i,j,q, p, x: Integer; Begin For i:=1 to 10 do Begin Write('Введите A '); ...

Упорядочить по убыванию элементы массива, расположенные между двумя наибольшими чётными значениями
Упорядочить по убыванию элементы целочисленного массива, расположенные между двумя наибольшими чётными значениями.

Упорядочить по возрастанию модулей элементы целочисленного массива, расположенные между третьим и пятым простыми числам
Упорядочить по возрастанию модулей элементы целочисленного массива, расположенные между третьим и пятым простыми числами(метод пузырька). ...

Упорядочить по возрастанию модулей элементы целочисленного массива, расположенные между третьим и пятым простыми числам
Упорядочить по возрастанию модулей элементы целочисленного массива, расположенные между третьим и пятым простыми числами. Помогите...

Упорядочить по убыванию элементы массива расположенные между наибольшими чётными значениями
Здравствуйте, можете, пожалуйста, помочь с решением данной задачи: Упорядочить по убыванию элементы целочисленного массива,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru