Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 27.03.2009, 20:28   #1
Paul_AG
Форумчанин
 
Регистрация: 16.03.2009
Сообщений: 152
По умолчанию Уважаемые программисты.Скажите пожалуйста все ли правильно в моем коде.

Уважаемые программисты.Скажите пожалуйста все ли правильно в моем коде.Не допустил ли я какихто ошибок при написании программы.
вот код :

Код:
#include <iostream>
#include <math.h>
#include <conio.h>
using namespace std;
int main(){
    double n1,n2;
    int inp;
    cout << "Enter number :\n\n\n";
    cout << "\tNumber 1 :\n";
    cin >> n1;
    cout << "\t\tNumber 2 :\n";
    cin >> n2;
       if(!cin){
             cout << "\n\t- Error! -\n";
             cin.clear();
             cin.ignore();
             getch();
             return -1;
             }
             cout << "Enter [1] for  [+]\n";
             cout << "Enter [2] for  [-]\n";
             cout << "Enter [3] for  [/]\n";
             cout << "Enter [4] for[*]\n\n\n";
             cin >> inp;
           
              switch(inp)
             
             {
                         case 1:
                              cout << " Summa :\n";
                              cout << "\n\n" << n1+n2 << "\n\n\t";
                              
                              getch();
                              break;
                              case 2:
                                   cout << " Summa :\n";
                                   cout << "\n\n" << n1-n2 << "\n\n\t";
                                   getch();
                                   break;
                                   case 3:
                                        cout << " Summa :\n";
                                        cout << "\n\n" << n1/n2 << "\n\n\t";
                                        getch();
                                        break;
                                        case 4:
                                             cout << " Summa :\n";
                                             cout << "\n\n" << n1*n2 << "\n\n\t";
                                             getch();
                                             break;
                                           
                                                       
                                                     default:
                                                             cout << "\tonly numbers 1 2 3 4\t\n";
                                                             }
                                                             return 0;
                                                             }

Последний раз редактировалось MaTBeu; 27.03.2009 в 23:54.
Paul_AG вне форума
Старый 27.03.2009, 20:58   #2
Volchara
Пользователь
 
Аватар для Volchara
 
Регистрация: 25.03.2009
Сообщений: 55
По умолчанию

Вроде нет, но у тебя в switchе всегда печатается Summa, хотя результат выводишь как суммы так нет.
Я имею ввиду, что ты пишешь
Код:
case 3:
cout << " Summa :\n";
cout << "\n\n" << n1/n2 << "\n\n\t";
getch();
break;
ты пишешь summa а результат деления
Hа C я могy пpосто делать ошибки, на C++ я могy их наследовать!

Последний раз редактировалось MaTBeu; 27.03.2009 в 23:55.
Volchara вне форума
Старый 27.03.2009, 20:59   #3
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Вроде все так.
Но есть пара замечаний:
Во-первых, вы на любое действие выводите "Сумма".
Во-вторых, разве не удобнее ли вводить не цифру, обозначающую действие, а сам знак действия?
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 27.03.2009, 21:19   #4
Paul_AG
Форумчанин
 
Регистрация: 16.03.2009
Сообщений: 152
По умолчанию

Спасибо огромное!
Paul_AG вне форума
Старый 27.03.2009, 21:21   #5
Paul_AG
Форумчанин
 
Регистрация: 16.03.2009
Сообщений: 152
По умолчанию

Под словом Summa я подразумевал результат.
спасибо.
Paul_AG вне форума
Старый 27.03.2009, 21:26   #6
Paul_AG
Форумчанин
 
Регистрация: 16.03.2009
Сообщений: 152
По умолчанию

а как это сделать?тоесть вместо цифры знак соответствующий действию.
Paul_AG вне форума
Старый 27.03.2009, 21:30   #7
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Изменить тип inp:
Код:
char inp;
и дальше:
Код:
switch (inp)

{
case '+':
и так далее..
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Где ошибка в моем коде? artemavd БД в Delphi 12 22.09.2008 14:28
Уважаемые программисты, помогите пожалуйста, с чего начать? irbiss Свободное общение 2 30.03.2008 19:53