Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.64
Voltrex
0 / 0 / 0
Регистрация: 08.01.2011
Сообщений: 22
#1

Работа с командной строкой - C++

18.03.2011, 14:35. Просмотров 1667. Ответов 5
Метки нет (Все метки)

Ситуация: у меня есть программа-интерпретатор другого языка. Работает через командную строку. Преподаватель попросил следующее: реализовать простейшие арифметические операции, которые при этом выполнялись через другой язык. То есть: есть командная строка. Есть свои команды в духе compile, exit и т.п. Они определенны и все работает замечательно. Теперь, если я ввожу два числа, например 2+3, то программа должна перевести это выражение на другой язык, который моя программа интерпретирует и выдать результат. Проблема в следующем: как грамотно считать вводимые числа, арифметические операции и как вообще определить, что вводятся именно цифры?
Надеюсь понятно объяснил
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.03.2011, 14:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Работа с командной строкой (C++):

Студия с командной строки - C++
Меня окончательно задолбали IDE, и я хочу юзить с командной строки c++ компиляторы студии: 1. Microsoft Developmet Studio 4.0, 2....

Компиляция кода в командной строке - C++
на паре нам показывали как работать с прогой, написанной на ассемблере - cmd-> выбор директории -> создание объектного файла с помощью...

IntelliSense: ошибка в командной строке - C++
ругается на данный кусок хекс файла #ifndef "AThread.h" #include <QMainWindow> #define MAINWINDOW_H #define MAINWINDOW_H ...

Кнопка Enter в командной строке нажимается по 2 раза - C++
Здравствуйте. Есть программа для записи/чтения тесктовых файлов, написана на си++ в Visual. Такое ощущение как будто при нажатии на кнопку...

Работа с командной строкой - C++ Builder
Здравствуйте, есть VCL Form приложение, в нём нужно выполнить в cmd команду и получить ответ - как это сделать?

Работа с командной строкой Win+R - C++ Builder
Как можно реализовать работу с командной строкой?... Допустим... Нажимает на кнопку открывается Win+R туда записывается определенный...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Day
1158 / 963 / 57
Регистрация: 29.10.2009
Сообщений: 1,385
18.03.2011, 16:53 #2
C
1
2
3
4
5
6
7
8
9
10
11
char c; int x;
x = 0;
while(1) {
 cin >> c;
 if ('0'<=c && c>='9') {
   x = 10*x +c;
   continue;
 } 
 // c - не цифра. Анализируешь ее на +, - ..., запоминаешь, выполняешь действие и т.п.
 break;
}
если я правильно понял вопрос
1
Voltrex
0 / 0 / 0
Регистрация: 08.01.2011
Сообщений: 22
18.03.2011, 17:25  [ТС] #3
Может и правильно, только я не совсем понял, что вы сделали. Зачем цикл, зачем умножение ... Можно поподробнее пожалуйста.
0
Day
1158 / 963 / 57
Регистрация: 29.10.2009
Сообщений: 1,385
18.03.2011, 19:28 #4
Цитата Сообщение от Voltrex Посмотреть сообщение
Может и правильно, только я не совсем понял, что вы сделали. Зачем цикл, зачем умножение ... Можно поподробнее пожалуйста.
Этот цикл преобразует последовательность десятичных цифр в число. попробуй написать число и применить к нему этот цикл вручную.
Извиняюсь, ошибочка. Строка 7 должна выглядеть так:
C
1
x = 10*x + c - '0';
1
Voltrex
0 / 0 / 0
Регистрация: 08.01.2011
Сообщений: 22
18.03.2011, 19:31  [ТС] #5
А что значит 1 в скобочках цикла while?
И да, спасибо за решение, теперь все понятно.
0
Day
1158 / 963 / 57
Регистрация: 29.10.2009
Сообщений: 1,385
18.03.2011, 20:52 #6
Цитата Сообщение от Voltrex Посмотреть сообщение
А что значит 1 в скобочках цикла while?
1 - это всегда true. Т.е. цикл бесконечный. Вернее, в заголовке цикла проверка на его окончание не производится, а производится где-то в другом месте, скажем, когда очередной символ - не цифра. Тогда делаются необходимые действия и происходит выход из цикла оператором break
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.03.2011, 20:52
Привет! Вот еще темы с ответами:

Работа с файлами, чтение/работа со строкой - C++ Builder
Доброго времени суток. Начал работать с C++ Builder 6. Есть текстовый файл .txt с различными строками, как можно производить...

Работа со строкой - C++ Builder
В общем стала задача сделать следующие: 1. Пользователь вводит строку вида 47*5/10*5, а программа должна определить знаки умножения и...

Переименование папки (работа со строкой) - C++ Builder
Есть папка в которой лежат файлы и другие папки. Нужно изменить её имя Для переименования планирую использовать функцию ...

Работа со строкой. Поиск и вывод групп с четным числом элементов - C++ Builder
Собственно задача. Дана строка (вводится с клавиатуры), состоящая из групп нулей. Найти и вывести на экран группы с четным количеством...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
18.03.2011, 20:52
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru