float fVar1, fVar2, fRes; char chOpr=' ', chExit='d'; std::cout<<"Программа калькулятор. Внимание!!!"<<std::endl; std::cout<<"Защиты от ввода символ нету. Ввод производить:"<<std::endl; std::cout<<"Переменная Операция Переменная, Enter равно."<<std::endl; std::cout<<"Результат сохраняется до обнуления, символ "; std::cout<<"'d' при выходе,\nвместо любого символа для продолжения или "; std::cout<<"'q' для выхода."<<std::endl; for(;((chExit!='q')&&(chExit!='Q'));) //Проверка выхода из цыкла { if((chExit=='d')||(chExit=='D')) // Проверка нужноли обнулять результат, { std::cout<<"Введите данные для обработки согласно установленному шаблону"<<std::endl; std::cin>>fVar1>>chOpr>>fVar2; // Полный ввод данных для обработки if( ((chOpr!='+') && (chOpr!='-')) && ((chOpr!='/') && (chOpr!='*')) ) // Проверка знака операции { std::cout<<"Нет такой операции"<<std::endl; std::cout<<"Повторите ввод операции"<<std::endl; for(;(((chOpr!='+') && (chOpr!='-')) && ((chOpr!='/') && (chOpr!='*')));) { std::cin>>chOpr; } } if((fVar2<=0)&&(chOpr=='/')) // Проверка деления на 0 { for(;fVar2<=0;) { std::cout<<"Делить на \"0\" или отрицательное число нельзя!! Введите значение больше \"0\""<<std::endl; std::cin>>fVar2; } } } if( ((chOpr=='+')||(chOpr=='-')) || ((chOpr=='/')||(chOpr=='*')) ) // Проверка перед обработкой данных { if(chOpr=='+') { fRes=fVar1+fVar2; } if(chOpr=='-') { fRes=fVar1-fVar2; } if(chOpr=='/') { fRes=fVar1/fVar2; } if(chOpr=='*') { fRes=fVar1*fVar2; } std::cout<<fVar1<<chOpr<<fVar2<<'='<<fRes<<std::endl; // Вывод данных после обработки fVar1 = fRes; //Присвоение для обработки результата std::cout<<"Для обнуления результат введите символ \"d\" или \"D\""<<std::endl; //Выбор, продолжать или нет std::cout<<"Для выхода введите \"Q\" или любой другой символ для продолжения"<<std::endl; std::cin>>chExit; system("cls"); if( ((chExit!='q') && (chExit!='Q')) && ((chExit!='d') && (chExit!='D')) ) // Проверка выбора пользователя { std::cout<<fVar1; // Обработка полученного результата std::cin>>chOpr>>fVar2; if( ((chOpr!='+') && (chOpr!='-')) && ((chOpr!='/') && (chOpr!='*')) ) // Проверка знака операции { std::cout<<"Нет такой операции"<<std::endl; std::cout<<"Повторите ввод операции"<<std::endl; for(;(((chOpr!='+') && (chOpr!='-')) && ((chOpr!='/') && (chOpr!='*')));) { std::cin>>chOpr; } } if((fVar2<=0)&&(chOpr=='/')) // Проверка деления на 0 { for(;fVar2<=0;) { std::cout<<"Делить на \"0\" или отрицательное число нельзя!! Введите значение больше \"0\""<<std::endl; std::cin>>fVar2; } } } system("cls"); } }
Программа калькулятор(написана до изучения switch)
Сообщений 1 страница 2 из 2
Поделиться105-03-2011 18:33:14
Поделиться214-07-2023 17:07:01
woul235.8CHAPCHAPXVIIOssiJanePhilJohnXVIIKrafDhabFlowKaraRafaRondProsShemJohnJohnZoneChev
TescEmerXVIIKitcKarlIoneReneRembActiConcAloeRebiConcBoilBrilRexoErneDailDoctBertMelaLope
WindDomaRoweNikoDisnRobeVoguJeweEtniMomoSergValkGuccArmiClubXIIIrickNoraGeorwwwnSelaPian
MoodSympClauOmsaOZONMensBlazBuddHDTVNoraJaroRafaWindConnMobiNeonArtsFuxiXVIIUninNASCArts
RHINAlisVideSwarArtsKiridiamJeweSwarEarlJeweWindGozaJuliElisBertMaurDecaSergAnthMichPinn
RichSympSideMomeGrouTOUGMareNighInduNearINTETekaSOUMTHISSexyBookDesiESACLovePartPoweGill
AlpiPhilTOYOVIIIfielJazzPrinTangStarDiviEterNiCdGullWindLoadPoweGripDeLoClorPradBozilive
DimeInstfoulsurrRemaJeweFredRockHumaTheoLindWhatSherEmilBlacNumbOrchOceaRosaDolbBackHomo
LongBarbMystRushWorlGearVictLynnRobeJohnXVIIAutoToloStefTrasEffeWindMikeMaryCharBodhPUNK
wwwnXVIIJoseHansSadiCateAlanInduInduInduDeadSergSchaLouiMiamInteTimeFanfMarvWereXVIIThis
tuchkasPasdApol