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

Меню к программе

02.06.2010, 14:51. Показов 833. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
кто может помочь сделать меню к програмке(строковый калькулятор) типа
1: ввести выражение
2: запись в файл
3: вивести из файла
4: конец
большая просьба помочь!!!!
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <string.h>
#include <math.h>
#include <ctype.h>
#include <assert.h>
#include <conio.h>
#include <stdio.h>
 
int tok;
double tokval;
 
int next() {
    for (;;) {
        int c = getchar();
        if (c == EOF || strchr("+-*/^()\n", c) != NULL) return tok = c;
        if (isspace(c)) continue;
        if (isdigit(c) || c == '.') {
            ungetc(c, stdin);
            scanf(" %lf", &tokval);
            return tok = 'n';
        }
        fprintf(stderr, "Bad character: %c\n", c); 
    }
}
 
void skip(int t) { assert(tok == t); next(); }
 
double expr();
 
 
double numpar() {
    if (tok == 'n') { double x = tokval; skip('n'); return x; }
    skip('('); double x = expr(); skip(')'); return x;
}
 
 
double factor() {
    double x = numpar();
    if (tok == '^') { skip('^'); x = pow(x, factor()); }
    return x;
}
 
 
double term() {
    double x = factor();
    for (;;) {
        if (tok == '*') { skip('*'); x *= factor(); }
        else if (tok == '/') { skip('/'); x /= factor(); }
        else return x;
    }
}
 
 
double expr() {
    double x = term();
    for (;;) {
        if (tok == '+') { skip('+'); x += term(); }
        else if (tok == '-') { skip('-'); x -= term(); }
        else return x;
    }
}
 
int main() {
    next();
    while (tok != EOF) {
        if (tok == '\n') { skip('\n'); continue; }
        printf("%.9g\n", expr());
    }
    getch();
        return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.06.2010, 14:51
Ответы с готовыми решениями:

Организация меню в программе
Как правильно организовать меню в консольной программе с помощью switch case? Я делал так, но не...

Меню в программе - бесконечный loop
Доброго всем дня. Разными способами пытаюсь сделать меню в программе. Если делать через switch, то...

Как сделать меню в программе?
Всем привет) Есть программа,в ней 4 метода,как сделать так чтоб когда её запускаешь можно было...

нужно составить меню к программе
/*Написать программу, которая выполняет следующие действия: • вводит с клавиатуры данные в массив,...

9
23 / 23 / 12
Регистрация: 29.11.2009
Сообщений: 210
03.06.2010, 18:24  [ТС] 2
или хотя б сделать так чтоб результат можно было записать в файл
0
Light Knight
106 / 29 / 5
Регистрация: 03.06.2010
Сообщений: 361
03.06.2010, 18:30 3
Вопрос о цикличности

почитай эту тему, если не поможет, пиши
1
35 / 35 / 7
Регистрация: 31.08.2009
Сообщений: 116
03.06.2010, 18:41 4
Я ниже привел как можно сделать меню:
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
int dp;
cout << "1. " <<endl;
cout << "2." << endl;
cout << "3." <<endl;
cout << "4. "<< endl;
cin >> dp;
switch(dp)
{
case 1:
код
break;
 
case 2:
код
break;
 
case 3:
код
break;
 
case 4:
код
break;
}
1
Light Knight
106 / 29 / 5
Регистрация: 03.06.2010
Сообщений: 361
03.06.2010, 18:43 5
именно это описано в той теме, с разными возможными ошибками
0
23 / 23 / 12
Регистрация: 29.11.2009
Сообщений: 210
03.06.2010, 18:50  [ТС] 6
Цитата Сообщение от RoY_Mu$T@nG Посмотреть сообщение
именно это описано в той теме, с разными возможными ошибками
да и я никак точно не могу роздуплить как рабоет етот код
0
Light Knight
106 / 29 / 5
Регистрация: 03.06.2010
Сообщений: 361
03.06.2010, 18:55 7
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
int main()
{
 phone numb[75], numbn[75];
 char next;
 char number[15];
 int i, c;
 do
 {
 cout << "1.Add contact, 2.Search contact, 3.Exit" << endl;
 cin >> c;
 switch (c)
 {
 case 1:
     {
 ofstream fileout("file.txt", fstream::in | fstream::out | fstream::app);
 if(!fileout)
 {
 cerr << "Error: opening file" << endl;
 return 1;
 }
 for(i=0;i<1;i++)
 {
 cout << "Enter firstname, lastname, middlename, number" << endl;
 cin >> numb[i];
 fileout << numb[i];
 }
 break;
     }
 case 2:
 cout << "Enter number of the contact:";
 cin >> number;
 ifstream filein("file.txt");
 if(!filein)
 {
  cerr << "Error: opening file";
  return 2;
 }
 i=0;
 while(1)
 {
  filein >> numbn[i];
  if(!strcmp(numbn[i].number, number))
  {
  cout << numbn[i];
  break;
  }
  next=filein.peek();
  if(next==EOF)break;
  i++;
 }
 break;
 }
 }
 while(c !=3);
 return 0;
}
вот кусок моей программы, т.е.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
do
{
cin >> c;
switch(c)
{
case 1:  //с = 1
{
действия; break;
}
case 2: //с = 2
{
действия; break;
}
case 3: //с = 3
{
действия; break;
}
}
while(c !=0) //0 в данном случае exit
1
23 / 23 / 12
Регистрация: 29.11.2009
Сообщений: 210
03.06.2010, 19:36  [ТС] 8
RoY_Mu$T@nG, а куда надо вставить код а то у меня не получается
0
Light Knight
106 / 29 / 5
Регистрация: 03.06.2010
Сообщений: 361
03.06.2010, 19:40 9
ну смотри
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
int main()
{
объявление переменных тут и бла бла бла
do
{
cin >> c;
switch(c)
{
case 1:  //с = 1
{
ввод выражения; break;
}
case 2: //с = 2
{
запись в файл; break;
}
case 3: //с = 3
{
вывод из файла; break;
}
}
while(c !=4) //4 в данном случае exit, т.е. конец
return 0;
}
1
23 / 23 / 12
Регистрация: 29.11.2009
Сообщений: 210
03.06.2010, 23:01  [ТС] 10
может у кого-то еще есть програмка строковый калькулятор но не очень сложный и с операциями + - * / ^
заранее спасибо
0
03.06.2010, 23:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.06.2010, 23:01
Помогаю со студенческими работами здесь

Подскажите, как сделать меню к программе
Ребят, хелп Я не знаю как делать рабочее меню программы Мне нужно к программе написать меню.....

Ошибка в программе для вывода меню
Нужно сделать раскрывающееся меню, но у меня даже обычное не получается.и так и сяк его кручу...вот...

Отправка параметров программе из контекстного меню проводника
Здравствуйте))).Помогите пожалуйста решить один вопрос. Текст программы: #include &lt;iostream&gt; ...

Как сделать меню в программе под DOS, написанную в С++3.0?
Уважаемые программеры! Подскажите, как сделать менюшку в программе под DOS, написанную в С++3.0! Я...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru