Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
4 / 1 / 4
Регистрация: 30.09.2020
Сообщений: 13

Префиксные арифметические действия

30.09.2020, 22:27. Показов 566. Ответов 4

Студворк — интернет-сервис помощи студентам
Требуется написать программу, получающую на вход строку вида
+ * 3 4 5
И выполняющую необходимые вычисления в правильном порядке с последующим выводом ответа, заранее спасибо
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.09.2020, 22:27
Ответы с готовыми решениями:

Арифметические действия на C++
Подскажите , я новичок в этом , как выглядит код данного действия :

Арифметические действия с датами
Вообщем есть у меня программа которая точно высчитывает разницу дней между нынешней датой, и будущей. Например с 06/26/2016 ( сегодня )...

Арифметические действия в массиве
Арифметические действия в массиве Задачи положено переписывать!

4
377 / 228 / 79
Регистрация: 24.11.2009
Сообщений: 695
01.10.2020, 09:53
del.
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
01.10.2020, 10:19
Цитата Сообщение от user71424 Посмотреть сообщение
Требуется написать программу, получающую на вход строку вида
+ * 3 4 5
требования почти для полноценного арифметического парсера,
хотя если включить фантазию то можно и кривокод нарисовать .

1. Для начала считаем все, разделим на символы и числа, запишем их отдельно в два массива.
2. Потом на них делаем линейные операции.

Загвоздка в приоритете арифметических операций. Именно тут вам придется проявить фантазию.
Или писать самый простой калькулятор.

Потому что задача сводится именно к нему.

Добавлено через 4 минуты
Цитата Сообщение от SmallEvil Посмотреть сообщение
Загвоздка в приоритете арифметических операций.
Хотя загвоздка как бы рассосалась )

Просто кривокод получится действительно кривым, но рабочим.

"Запишем их отдельно в два массива" (лучше Вектор, или структуру которую можно легко редактировать).

Пробегаемся по массиву операций, делаем сначала умножение, деление , потом + - .
В процессе удаляем выполненные операции, и заменяем участвующие числа на результат.

Как бы все.
0
848 / 651 / 323
Регистрация: 24.02.2017
Сообщений: 2,297
01.10.2020, 10:57
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
using namespace std;
 
int main() {
 string str="+ * 3 4 5";
 int s=0;
 size_t i=0,j=0;
 
 while(!isdigit(str[++i]));
 s+=str[i]-'0';
 i+=2;
 while(!isdigit(str[j])){
     switch (str[j]){
       case '+':s+=str[i]-'0';
              break;
       case '*':s*=str[i]-'0';
              break;
      }
     j+=2;
     i+=2;
    }
 cout<<s;
 return 0;
}
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
01.10.2020, 11:37
повар1,
результат : 35.
что ? )
должно быть 3+4*5 = 23.

могли бы уже мой алгоритм реализовать полностью, если есть желание помочь человеку кодом

Добавлено через 6 минут
повар1,
а на таком вводе вообще загибается ))
C++
1
 string str="+ * 30 40 50";
Добавлено через 44 секунды
p.s. может вечерком черкну код...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.10.2020, 11:37
Помогаю со студенческими работами здесь

Арифметические действия с матрицами
Пользователь вводит две целочисленные матрицы А и В (первоначально запросить у пользователя размерности этих матриц). Написать программу,...

Арифметические действия с дробями
Добрый вечер! Хочу попросить в помощи обратить внимание на ошибку решения следующего задания: Создайте калькулятор, выполняющий четыре...

Арифметические действия с элементами массива
Когда барон Мюнхаузен решил пообедать, он привязал к длинной веревки кусок сала и забросил его в воздух. Стая диких гусей пролетала тем...

Арифметические действия над числами
Арифметические действия над числами пронумерованы следующим образом: 1 – сложение, 2 – вычитание, 3 – умножение, 4 – деление. Дан номер...

Дописать классу арифметические действия
Помогите. Нужно сделать сложение, вычитание, умножение и деление. #include &lt;iostream&gt; using namespace std; class ch {private: ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru