Форум программистов, компьютерный форум, киберфорум
Наши страницы

Перегрузка сложения - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Составить программу определяющую между какими из пар точек самое большое расстояние http://www.cyberforum.ru/cpp-beginners/thread795758.html
Добрый вечер. Написал программу. Только не совсем уверен, что она правильная, помогите исправить. Условие: На плоскости заданы своими координатами n точек. Составить программу определяющую между...
C++ Ошибка при написание программы работы с файлами Очень прошу, помогите разобраться и устранить ошибку, не могу понять что не так. #define _CRT_SECURE_NO_WARNINGS #define _CRT_NONSTDC_NO_WARNINGS #include<stdio.h> #include<conio.h>... http://www.cyberforum.ru/cpp-beginners/thread795756.html
Cоздать рекурсивную функцию которая исчисляет y=x+x^2/2+x^3/3+x^4/4...и тд, зависит от введенного икса C++
Задание -создать рекурсивную функцию которая исчисляет y=x+x^2/2+x^3/3+x^4/4...и тд, зависит от введенного икса.Не могу никак разобраться какой нужно передать параметр что бы это все...
"Хитрая» сортировка" Господа, извольте поделиться опытом C++
«Хитрая» сортировка. Из массива путем однократного просмотра выбирается последовательность элементов, расположен¬ных в порядке возрастания, переносится в выходной массив и заменяется во входном на –...
C++ перегрузка функций http://www.cyberforum.ru/cpp-beginners/thread795708.html
У меня есть структура Студенты. в ней есть Имя студента, его Бал аттестата и Возраст. Подскажите, плиз, как создать функцию add(); и printstud(); - так чтобы add(); - добавляла нового студента(она...
C++ длина ребра куба Добрый вечер, ув. программисты! Очень нужна Ваша помощь. Моему сыну в колледже по программированию задали на завтра написать две программы (отдельно). Сам я в программировании "дундук" (ну не мое... подробнее

Показать сообщение отдельно
Valli1
4 / 4 / 0
Регистрация: 14.09.2012
Сообщений: 64

Перегрузка сложения - C++

26.02.2013, 22:14. Просмотров 754. Ответов 4
Метки (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
Stonewt Stonewt::operator +(Stonewt &st){
Stonewt st1;
st1.stone=st.stone+stone;
st1.pds_left=st.pds_left+pds_left;
cout<<st1.pds_left<<endl;
if(st1.pds_left>lbs_per_stn){
int x=int(st1.pds_left)/lbs_per_stn;
st1.stone+=x;
st1.pds_left=st1.pds_left-x*lbs_per_stn;
st1.pds_left=int(st1.pds_left)%lbs_per_stn+st1.pds_left-int(st1.pds_left);}
st1.pounds=st.pounds+pounds;
return st1;}
Все работает за исключением "критических точек" если pds_left==lbs_per_stn то почему то выполняется оператор if(st1.pds_left>lbs_per_stn) ????Равенство непосредственно перед if проверял. И если к lbs_per_stn + 1, то в if не заходит.
Подскажите пожалуйста почему так.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru