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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Составить программу определяющую между какими из пар точек самое большое расстояние http://www.cyberforum.ru/cpp-beginners/thread795758.html
Добрый вечер. Написал программу. Только не совсем уверен, что она правильная, помогите исправить. Условие: На плоскости заданы своими координатами n точек. Составить программу определяющую между какими из пар точек самое большое расстояние. Координаты точек занести в массив. #include <iostream> #include <math.h> using namespace std;
C++ Ошибка при написание программы работы с файлами Очень прошу, помогите разобраться и устранить ошибку, не могу понять что не так. #define _CRT_SECURE_NO_WARNINGS #define _CRT_NONSTDC_NO_WARNINGS #include<stdio.h> #include<conio.h> #include<math.h> #include<time.h> #include<locale> 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...и тд, зависит от введенного икса.Не могу никак разобраться какой нужно передать параметр что бы это все заработало.Помогите пожалуйста подправить код и по возможности объяснить. #include <iostream> #include <cmath> using namespace std; int func(float x, int y) { long int d; y=y-1; if (y<1) return 0;else...
"Хитрая» сортировка" Господа, извольте поделиться опытом C++
«Хитрая» сортировка. Из массива путем однократного просмотра выбирается последовательность элементов, расположен¬ных в порядке возрастания, переносится в выходной массив и заменяется во входном на – 1. Затем оставшиеся элементы вклю¬чаются в полученную упорядоченную последовательность мето¬дом «погружения», когда очередной элемент путем ряда обменов «погружается» до требуемой позиции в уже...
C++ перегрузка функций http://www.cyberforum.ru/cpp-beginners/thread795708.html
У меня есть структура Студенты. в ней есть Имя студента, его Бал аттестата и Возраст. Подскажите, плиз, как создать функцию add(); и printstud(); - так чтобы add(); - добавляла нового студента(она должна быть перегружена несколькими способами: с одним параметром, с двумя и с тремя, и с параметром по умолчанию), а ф-ция printstud(); - должна распечатать их имена, бал аттестата и возраст. ...
C++ длина ребра куба Добрый вечер, ув. программисты! Очень нужна Ваша помощь. Моему сыну в колледже по программированию задали на завтра написать две программы (отдельно). Сам я в программировании "дундук" (ну не мое оно), сын мой только первый курс, на С++ ещё не работал. Суть самих программ такова: 1 программа "Дана длина ребра куба. Найти объем куба и площадь его боковой поверхности" Ребята, если знаете... подробнее

Показать сообщение отдельно
anoise
2 / 2 / 0
Регистрация: 11.02.2013
Сообщений: 8
26.02.2013, 23:28     Перегрузка сложения
Написал проверочную программку... если pds_left == lbs_per_stn (в данном случае оба 14), то у меня if не выполняется... или я что то не так понял.
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>
 
using std::cout;
using std::endl;
using std::cin;
 
class Stonewt{
 
 
 
private:
    double stone;
    double pds_left;
    int lbs_per_stn;
    double pounds;
 
public:
    Stonewt operator +(Stonewt &st);
    
    Stonewt(double st = 0, double pd = 0, int lb = 14, double p = 0 ): stone(st), pds_left(pd), lbs_per_stn(lb), pounds(p)
    {
        cout << "Constructor!" << endl;
    }
 
 
};
 
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;
}
 
 
int main()
{
    Stonewt stA(4,14,14,6);
    Stonewt stB(1,0,14,4);
    Stonewt stC;
    
    stC = stA + stB;
    system("pause");
 
    return 0;
 
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru