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

Переделать калькулятор - C++

Восстановить пароль Регистрация
 
JIioneJI
1 / 1 / 0
Регистрация: 04.01.2013
Сообщений: 121
27.02.2013, 15:46     Переделать калькулятор #1
Всем привет помогите сделать калькулятор в функции, как то вот так но мне выдаёт всякий бред.
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
#include <iostream> 
#include <Windows.h>
using namespace std;
void sum (int a, int b)
  {       
   cout<<a<<"+"<<b<<"="<<endl;
  }
 
void razn (int a, int b)        
   {    
   cout<<a<<"-"<<b<<"="<<endl; 
   }      
 
void umnog(int a, int b)    
  {     
   cout<<a<<"*"<<b<<"="<<endl; 
  }
 
void delen(int a, int b)
{
  if(b!=0)
  {
  cout<<a<<"/"<<b<<"="<<endl;
  }
  else
  {
      cout<<"На ноль делить нельзя"<<endl;
  }
}
void main()
{
  SetConsoleOutputCP(1251);
  int a,b;
  char d;
  cout<<"Введите первое число ->"<<endl;
  cin>>a;
  cout<<"Введите второе число ->"<<endl;
  cin>>b;
  cout<<"Введите действие(+,-,*,/) ->"<<endl;
  cin>>d;
  switch(d)
 {
 case '+':
     sum(a,b);
 break;
 
 case '-':
     razn(a,b);
 break;
 
 case '*':
     umnog(a,b);
 break;
 
 case '/':
     delen(a,b); 
 break;
 
 default:
 cout<<"Ошибка не верное действие "<<endl;
  }
}
когда сделал вот так то сказали надо переделать что б 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
#include <iostream> 
#include <Windows.h>
using namespace std;
double calk (int a, int b, char d)
{
   switch(d)
   {
    case '+':   
        
        return a+b;
      
    case '-':
        
        return a-b;
    
    case '*':
        
        return a*b;
        
    case '/':
     
        if(b!=0)
        return a/b;
        else
        {
        cout<<"Делить на ноль нельзя";
        return 0;      
        }
    
    case '%':
        return a%b;
   }
}
void main()
{
  SetConsoleOutputCP(1251);
  int a,b;
  char d;
  cout<<"Введите два числа ->"<<endl;
  cin>>a>>b;
  cout<<"Введите действие(+,-,*,/,%) ->"<<endl;
  cin>>d;
  cout<<a<<d<<b<<"="<<calk(a,b,d)<<endl;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2013, 15:46     Переделать калькулятор
Посмотрите здесь:

C++ Калькулятор
C++ калькулятор
C++ калькулятор
Калькулятор C++
Калькулятор C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mysterion777
 Аватар для Mysterion777
-74 / 48 / 2
Регистрация: 11.01.2013
Сообщений: 199
27.02.2013, 16:14     Переделать калькулятор #2
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
#include <iostream> 
#include <Windows.h>
using namespace std;
void sum (int a, int b)
  {       
   cout<<a<<"+"<<b<<"="<<a+b;
  }
 
void razn (int a, int b)        
   {    
   cout<<a<<"-"<<b<<"="<<a-b; 
   }      
 
void umnog(int a, int b)    
  {     
   cout<<a<<"*"<<b<<"="<<a*b; 
  }
 
void delen(int a, int b)
{
  if(b!=0)
  {
  cout<<a<<"/"<<b<<"="<<a/b;
  }
  else
  {
      cout<<"ГЌГ* Г*îëü äåëèòü Г*åëüçÿ"<<endl;
  }
}
int main()
{
  SetConsoleOutputCP(1251);
 setlocale(LC_ALL,"russian_russia");
  int a,b;
  char d;
  cout<<"Ââåäèòå ïåðâîå ÷èñëî ->"<<endl;
  cin>>a;
  cout<<"Ââåäèòå âòîðîå ÷èñëî ->"<<endl;
  cin>>b;
  cout<<"Ââåäèòå äåéñòâèå(+,-,*,/) ->"<<endl;
  cin>>d;
  switch(d)
 {
 case '+':
     sum(a,b);
 break;
 
 case '-':
     razn(a,b);
 break;
 
 case '*':
     umnog(a,b);
 break;
 
 case '/':
     delen(a,b); 
 break;
 
 default:
 cout<<"ГЋГёГЁГЎГЄГ* Г*ГҐ ГўГҐГ°Г*îå äåéñòâèå "<<endl;
  }
  system("pause");
  return 0;
}
olya7
476 / 293 / 91
Регистрация: 18.02.2013
Сообщений: 684
27.02.2013, 16:43     Переделать калькулятор #3
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
#include <iostream.h> 
#include <Windows.h>
 
void oper (int a, int b, char v)
{
    double f;
    switch(v)
    {
    case '+':   
       cout<<a<<"+"<<b<<"="<<a+b;
        
    case '-':
        cout<<a<<"-"<<b<<"="<<a-b;
    case '*':
        cout<<a<<"*"<<b<<"="<<a*b;
        
    case '/':
        if (b==0) cout<<"Delenie na 0!";
        else cout<<a<<"/"<<b<<"="<<double(a)/b;
       
    }
}
void main()
{
  //SetConsoleOutputCP(1251);
  int a,b;
  char s;
  cout<<"a b ?"<<endl;
  cin>>a>>b;
  cout<<"(+,-,*,/) ->"<<endl;
  cin>>s;
  oper(a,b,s);
}
JIioneJI
1 / 1 / 0
Регистрация: 04.01.2013
Сообщений: 121
27.02.2013, 17:55  [ТС]     Переделать калькулятор #4
привет,спасибо)

Добавлено через 1 час 10 минут
Цитата Сообщение от JIioneJI Посмотреть сообщение
привет,спасибо)
всё ровно не совсем так когда выбираю то выводит все действия сразу а как сделать что б выводил только то действие которые выбирает пользователь?
Игорь с++
 Аватар для Игорь с++
429 / 452 / 15
Регистрация: 26.01.2011
Сообщений: 2,029
27.02.2013, 18:39     Переделать калькулятор #5
JIioneJI, блин ну куда уж проще в том коде , что дала olya7, поставь после каждого кейса - break;
Yandex
Объявления
27.02.2013, 18:39     Переделать калькулятор
Ответ Создать тему
Опции темы

Текущее время: 12:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru