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

Программа, вычисляющая значение выражения.(Работа со строками)

19.05.2010, 19:19. Показов 2912. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Написать программу, которая вычисляет значение выражения N2O1N2O1...O1N2, где N2 - целое одноразрядное, O1 - один из двух знаков простейших арифметических действий: сложения(+) или вычитания(-).

Рекомендуемый вид экрана во время работы программы:
9-5+4+2-6
Значение выражения: 4
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.05.2010, 19:19
Ответы с готовыми решениями:

Функция вычисляющая значение выражения
помогите пожалуйста написать данное задание Заданные действительные числа s , t , a . Получить p(1)-p ( t )+p2(st)+p3(1), где p ( x ) =...

Функция вычисляющая значение выражения
Здравствуйте, дорогие форумчане! Мне очень неудобно просить у Вас помощи, но у меня нет другого выхода, программу задали, а объяснения...

Функция вычисляющая значение выражения
Помогите пожалуйста Заданные действительные числа s , t , a . Получить p (1) -p ( t ) + p2 ( st ) + p3 (1), где p ( x ) = ( a -12)...

4
 Аватар для dyosick
64 / 64 / 17
Регистрация: 25.08.2008
Сообщений: 178
19.05.2010, 20:55
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
#include <iostream>
#include <cstring>
 
using namespace std;
 
int main()
{
   char st[100];
   int i=0;
   int sum;
   
   cout<<"Enter a string : ";
   cin>>st;
   sum=static_cast<int>(st[i++])-48;
   
   while(st[i]!=NULL)
   {
      int temp=static_cast<int>(st[i+1])-48;
      
      if(st[i]=='+')
         sum+=temp;
      else
         sum-=temp;
      
      i+=2;                       
   }
 
   cout<<"\n\nSum = "<<sum<<endl;
   system("pause");    
   return 0;
}
1
0 / 0 / 0
Регистрация: 30.12.2009
Сообщений: 36
19.05.2010, 21:35  [ТС]
dyosick, ваше решение понятно. А что если так: (?)

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
#include <stdio.h>
#include <conio.h>
#include "stdlib.h"
void main ()
{
char st[40]; 
char buf[10]; 
char op; 
int rez; 
int n; 
int i,j;
printf("Vvedite arifmeticheskoe virazhenie,\n");
printf("naprimer, 45+5-3-125+2 i nazhmite <Enter>");
printf("->");
scanf("%s", &st);
rez = 0; 
op = ' ';
i = j = 0;
while( st[i] )
{
 
j = 0;
while (st[i] >= '0' && st[i] <= '9')
buf[j++] = st[i++];
buf[j] = '\0';
n = atoi(buf); /
switch ( op )
{
case '+': rez += n; break;
case '-': rez -= n; break;
case ' ': rez = n; break; 
}
ор = st[i++];
}
printf("nZnachenie vvedennogo virazhenia: %d", rez);
printf("\press <Enter>");
getch();
}
код вроде бы правильный, но при компиляции проблемы...
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
20.05.2010, 05:04
Цитата Сообщение от zorn16
при компиляции проблемы
C
1
scanf("%s", st);
C
1
n = atoi(buf);
1
37 / 37 / 2
Регистрация: 13.05.2010
Сообщений: 81
20.05.2010, 15:43
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
 
int main ()
{   int x ,z, y=0; 
    char *l;
    char ch[256];
    cin>>ch;
    for(int i=0 ; ch[i]; i++){
    switch (ch[i]){
        case '-' : l="minus";continue;
        case '+' : l="plus";continue;
        case '0':   
        case '1':
        case '2':
        case '3':
            cin.putback(ch[i]);
            cin>>x;
            if (l=="minus") {y-=x; z=y; continue;}
            if (l=="plus") {y+=x; z=y; continue;}
            y=x;}}
    cout<<z<<endl;
    return 0;}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.05.2010, 15:43
Помогаю со студенческими работами здесь

Функция вычисляющая значение выражения
Описать функцию используя цикл for z=3sin(y)+\prod_{m=2}^{10}ln(m*y) Писал по образцу суммы.Правильный ли результат?И если нет,можете...

Функция вычисляющая значение выражения с условием
Разработайте функцию типа double, что возвращает куб входного параметра, если значение параметра положительное, иначе возвращает квадрат...

Функция вычисляющая значение условного выражения
Y= x^2, если x&lt;0 y=sqrt(x), если y&gt;=0

Функция вычисляющая значение арифметического выражения переданного в качестве аргумента
Определите функцию, которая в качестве параметра получает строку арифметического выражения. Строка содержит числа в диапазоне от 0 до 9....

Функция вычисляющая значение выражения, записанного в постфиксной форме в текстовом файле
Описать функцию value (postfix), которая вычисляет как целое число значение выражения (без переменных), записанного в постфиксной форме в...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru