Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
1 / 1 / 0
Регистрация: 01.02.2011
Сообщений: 68

Добавить коментарии и интерфейс к программе

04.02.2011, 07:55. Показов 996. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем здравствуйте. Я в программировании на С++ новичок, лёгкую линейную программку ещё напишу, а вот объектно-ориентированное программирование мне пока не дается. Попросила друга написать программку, он конечно же помог, но в коде не хватает коментариев (в файле lab3_main.cpp) (это я чисто для себя, чтоб разобраться) и нужно в одном файле добавить интерфейс, что бы видеть что где вводить и что где программа выводит.
Задача звучала следующим образом:
Создать класс Pair (парачисел). Пара должна быть представленная двумя полями: типа int для первого числа и типа double для второго. Первое число при выводе на экран должно быть отделено от второго числа двоеточием. Реализовать:
  • операции сравнения (<,>);
  • операцию ++, которая работает следующим образом: если форма операции префексная, то увеличивается первое число, если форма числа
постфиксная, то увеличиватся второе число.


Вот такая вот задачка. Высылаю коды программы. Ещё выслаю архив программы.

Код файла pair.h:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
class pair{
public:
    pair(void);
    pair(int x, double y);
    pair(const pair& tmp);
    ~pair(void);
    pair& operator = (const pair& tmp);
    pair& operator ++ (void);//Префиксная
    pair operator ++ (int);//Постфиксная
    //Операции сравнения
    bool operator > (const pair& tmp);
    bool operator < (const pair& tmp);
    //Дружественные функции ввода-вывода
    friend std::istream& operator >> (std::istream& in, pair& tmp);
    friend std::ostream& operator << (std::ostream& out, const pair& tmp);
private:
    int first;
    double second;
};
Код файла pair.cpp:

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
#include "pair.h"
 
pair:: pair(void){
    this->first = 0;
    this->second = 0;
}
 
pair:: pair(int x, double y){
    this->first = x;
    this->second = y;
}
 
pair:: pair(const pair& tmp){
    this->first = tmp.first;
    this->second = tmp.second;
}
 
pair::~pair(void){
 
}
//Перегрузка операции присваивания
pair& pair::operator =(const pair &tmp){
    if(&tmp==this) return *this;
    this->first = tmp.first;
    this->second = tmp.second;
    return *this;
}
//Префиксный инкремент
pair& pair::operator ++(void){
    this->first++;
    return *this;
}
//Постфиксный инкремент
pair pair::operator ++(int){
    this->second += 1;
    pair tmp(this->first, this->second);
    return tmp;
}
//Операции сравнения
bool pair::operator > (const pair& tmp){
    if(this->first>tmp.first || (this->first==tmp.first) && (this->second>tmp.second)) return true; else
        return false;
}
 
bool pair::operator < (const pair& tmp){
    if(this->first<tmp.first || (this->first==tmp.first) && (this->second<tmp.second)) return true; else
        return false;   
}
//Операции ввода-вывода
std::istream& operator >> (std::istream& in, pair& tmp){
    in>>tmp.first>>tmp.second;
    return in;
}
 
std::ostream& operator << (std::ostream& out, const pair& tmp){
    return (out<<tmp.first<<":"<<tmp.second);
}
Код файла lab3_main.cpp:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include "pair.h"
 
void main(){
    pair A;//Конструктор без параметров
    pair B(1,2);//Конструктор с параметрами
    pair C;
    std::cin>>A;//Проверка ввода
    ++A;//Префиксный инкремент
    std::cout<<A<<std::endl;//Проверка вывода
    B++;//Постфиксный инкремент
    std::cout<<B<<std::endl;
    C = B;//Проверка присваивания
    if(A>C) std::cout<<"A>C"<<std::endl; else//Проверка операций сравнения
        if(A<C) std::cout<<"A<C"<<std::endl;
}
Буду очень рада, если сможете объяснить, как она правильн оработает, потому что на могу до сих пор понять. Программка писалась в среде Microsoft Visual C++ 2008
Вложения
Тип файла: rar lab_3.rar (458.7 Кб, 12 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.02.2011, 07:55
Ответы с готовыми решениями:

написать коментарии к программе и исправить ошибку в одной программе
и впрграмме mass нужно найти ошибку

Коментарии к программе
Есть программа,нужно написать коментарии,и хотя бы что для чего нужно using System; using System.Collections.Generic; using...

Коментарии к программе
Помогите с комментариями к программе. Очень надо!!! using System; using System.Collections.Generic; using System.ComponentModel; ...

2
0 / 0 / 0
Регистрация: 12.01.2016
Сообщений: 6
15.01.2016, 21:49
у тебя не вылазите ошибка в Pair.cpp то что не удается открыть файл pair.h
у меня прога с использование pair но вот не как не хочет не воспринимает файл pair.h(не видит)
0
1 / 1 / 0
Регистрация: 01.02.2011
Сообщений: 68
19.01.2016, 10:26  [ТС]
Николай, я сейчас к сожалению не помню результат выполнения программы, эта программа создавалась в 2011 году. Сейчас проверить ее работоспособность, к сожалению, нет возможности
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.01.2016, 10:26
Помогаю со студенческими работами здесь

Коментарии к программе на СИ
У меня есть программа на СИ, но я не знаю там для чего используется половина функций подскажите кто что знает. Вот текст задачи: Дана...

Коментарии к программе
Помогите написать программу перевода с 2 й системы счисления в 16 ричную систему счисления сделать текст программы с коментариями. Заранее...

Коментарии к программе
Пожалуйста, поясните каждый элемент программы: uses crt; var i,j,n,k,imin:byte; a:array of integer; min:integer; begin ...

Коментарии к программе
Здравствуйте, можете объяснить, что делает каждый элемент этой программы? uses crt; var i,n,k :byte; f: real; a : array of...

Коментарии к программе
Все доброго времени суток.Можете объяснить что выполняет функция в программ?))) Буду благодарен за помощь))) #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Киев стоит - украинская песня
zorxor 28.01.2026
wfWdiRqdTxc О Господи, Вечный, Ты . . . Я помоги, Бесконечный. . . Я прошу Ты. . . Я погибаю, спаси. . . Я прошу Тебя Вечный. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru