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

Определите результат математических действий, указанных в файле

21.02.2021, 19:35. Показов 3206. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Текстовый файл d15-3.txt состоит не более чем из 10**6 цифр и знаков “+”, “-”, “*”. Знак «+» означает сложение, знак «-» вычитание, знак "*" - умножение. Определите результат математических действий, указанных в файле.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.02.2021, 19:35
Ответы с готовыми решениями:

Определить результат математических действий
Дан файл со следующими символами: 3+4+5-2+10-5+10+ 60-30-5-6+100- 5-46+6 Необходимо найти ответ выражения. Я знаю, что можно...

Странный результат математических действий
Странные вещи творятся в этой винде - внизу привёл кусок кода для примера (не элемент программы, ибо она немалая и содержит несколько...

Автоматизация математических действий
Добрый день. Есть скрипт с вычитанием. Логика следующая. 1. берет из 1.txt одно число 2. берет из 2.txt другое число 3....

5
Эксперт Python
8848 / 4500 / 1864
Регистрация: 27.03.2020
Сообщений: 7,315
21.02.2021, 21:23
Kirill Vasilev, А сам файл будет?
Так то сплит по плюсам; каждый элемент сплит по минусам; по внутренним спискам eval элементов и из первого результата отнимаешь сумму последующих результатов; полученные разницы суммируешь...
0
Заклинатель змей
 Аватар для DobroAlex
705 / 560 / 219
Регистрация: 30.04.2016
Сообщений: 2,605
21.02.2021, 21:42
Gdez, не проще ли eval()?
0
Эксперт Python
8848 / 4500 / 1864
Регистрация: 27.03.2020
Сообщений: 7,315
21.02.2021, 22:10
DobroAlex, 10^6 потянет? Если да, то можно.
Если же eval запрещен в коде, то просто перемножить во внутренних списках...
0
Заклинатель змей
 Аватар для DobroAlex
705 / 560 / 219
Регистрация: 30.04.2016
Сообщений: 2,605
21.02.2021, 22:16
Gdez, если ОЗУ хватит, то потянет
0
Эксперт Python
 Аватар для unfindable_404
693 / 471 / 204
Регистрация: 22.03.2020
Сообщений: 1,051
21.02.2021, 22:38
Лучший ответ Сообщение было отмечено Gdez как решение

Решение

Если задание описано правильно, а именно знак «-» это только вычитание, то этот код 10^6 символов проходит за 160мс
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
numbers = []
 
cur = []
last_operation = None
for char in open('filename').read().strip():
    if char.isnumeric():
        cur.append(char)
    else:
        num = int(''.join(cur))
        cur = []
        if last_operation:
            if last_operation == '+':
                numbers.append(num)
            elif last_operation == '-':
                numbers.append(-num)
            else:
                numbers[-1] *= num
        else:
            numbers.append(num)
        last_operation = char
 
num = int(''.join(cur))
if last_operation == '+':
    numbers.append(num)
elif last_operation == '-':
    numbers.append(-num)
else:
    numbers[-1] *= num
 
print(sum(numbers))
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.02.2021, 22:38
Помогаю со студенческими работами здесь

Программа для решения математических действий
Здравствуйте, помогите реализовать программу. Дано натуральное число N. Получить все такие тройки чисел а1, а2, а3 (Ai <= N, i =...

Совершение математических действий с элементами DataGridView
Добрый день! Имеется локальная БД Access, в которой содержится две связанных таблицы – Наименование услуги и действия по услуге. Обе...

Вводы математических действий с клавиатуры и вывод на экран
Ребят помогите пожалуйста,нужно написать программу :Ввод 4 математических действия с клавиатуры и вывод значений на экран!Очеееень...

Схема БД для математических действий между полями
Приветы. Задачка такая: Есть последовательность действий. Пусть их будет три. В первом действии настроено, чтобы пользователь ввёл в...

Напишите обработчик событий для указанных действий
На форме 1 установлены компоненты listbox1, button1 и 2 компонента checkbox. При нажатии на кнопку button строки listbox должны выводиться...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Изучаю 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% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru