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

Дроби - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Класс, знающий все свои экземляры http://www.cyberforum.ru/cpp-beginners/thread842875.html
class A { protected: static A **ptr; static size_t ptrcount; public: A () { A **s; A **t;
C++ Структуры данных(СТЕК) Помогите написать, или исправьте, плиз, мою программку. Здесь - стек. надо создать меню, где можно вывести, создать и удалить элемент со стека. Вот мой вариант программки(но там, почему-то не определяет функции): #include <iostream> #include <string> using namespace std; int N_used=0; http://www.cyberforum.ru/cpp-beginners/thread842873.html
C++ Классы: ка победить ошибку из "const Type" в "Type &"
Создаю свой класс class MyClass {private: int *dat; WCHAR *buf; inline size_t GetLength(){return dat? dat: 0;}; public: const MyClass& operator +=(const MyClass& val); .....}
C++ Структура: Написать функцию, которая записывает в бинарный файл данные о сканере из приведенной структуры.
Для хранения данных о планшетных сканерах описать структура вида: struct scan_info{ char model; //наименование int price; //цена double x_size; //горизонтальный размер области сканирования double y_size; //вертикальный размер области сканирования int optr; оптическое разрешение int grey; //число градаций серого }; Написать функцию, которая записывает в бинарный файл данные о сканере из...
C++ Рекурсивная функция. Преобразовать массив, прибавив к четным числам последний элемент http://www.cyberforum.ru/cpp-beginners/thread842855.html
Решить задачу в консольном режиме. Программирование с использованием функций. Рекурсивная функция Дан целочисленный массив размера N. Преобразовать его, прибавив к четным числам последний элемент. Последний элемент массива не изменять. Осуществить сдвиг влево на k позиций, где k – число нечетных элементов
C++ Работа с указателями и функциями ( запись в двоичный файл данных только о тех ноутбуков диагональ дисплея которых больше 11 дюймов) Для хранения данных о ноутбуках описать структуру вида: struct NOTEBOOK { char model;//наименование int price; //цена float w; //вес struct size{ //габаритные размеры float x;//высота float y;//длина float z;//ширина подробнее

Показать сообщение отдельно
Sasha9
0 / 0 / 0
Регистрация: 18.12.2012
Сообщений: 33

Дроби - C++

19.04.2013, 20:53. Просмотров 489. Ответов 3
Метки (Все метки)

можете объяснить что делает каждая функция
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
#include <iostream>
#include <math.h>
#include <stdlib.h>
#include "fraction.h"
using namespace std;
 
Fraction::Fraction(){
    chisl=0;
    znam=1;
}
 
Fraction::Fraction(int cel, int ch, int zn){
    Fraction();
    if((cel*ch)>0 && abs(ch)<zn && zn>0){
    chisl=cel*zn+ch;
    znam=zn;
    toRight();
    }
    else
        cout<<"Owibka Fraction(int cel, int ch, int zn)"<<endl;
}
 
Fraction::~Fraction(){}
 
int GCD(int a, int b){
    int t;
    while (b) {
        t=a%b;
        a=b;
        b=t;
    }
return a;
}
 
void Fraction::toRight(){
    int x;
    if((x=GCD(abs(chisl),znam))!=1){
        chisl=chisl/x;
        znam=znam/x;
    }
}
 
void Fraction::setCel(int cel){
    int ch;
    ch=chisl%znam;
    if((cel*ch)>0 && abs(ch)<znam && znam>0){
        chisl=cel*znam+ch;
    }
    else
        cout<<"Owibka setCel(int cel)"<<endl;
}
 
int Fraction::getCel(){
    int cel;
    cel=chisl/znam;
 
return cel;
}
 
void Fraction::setChisl(int ch){
    int cel;
    cel=chisl/znam;
    if((cel*ch)>0 && abs(ch)<znam && znam>0){
        chisl=cel*znam+ch;
    }
    else
        cout<<"Owibka setCel(int cel)"<<endl;
}
 
int Fraction::getChisl(){
    int ch;
    ch=chisl%znam;
return ch;
}
 
void Fraction::setZnam(int zn){
    int cel,ch;
    cel=chisl/znam;
    ch=chisl%znam;
    if((cel*ch)>0 && abs(ch)<zn && zn>0){
        chisl=cel*zn+ch;
        znam=zn;
    }
    else
        cout<<"Owibka setCel(int cel)"<<endl;
}
 
int Fraction::getZnam(){
 
return znam;
}
 
void Fraction::showFraction(){
    int cel, ch;
    cel=chisl/znam;
    ch=chisl%znam;
    if (cel==0) cout<<ch<<"/"<<znam<<endl;
    else cout<<cel<<" "<<abs(ch)<<"/"<<znam<<endl;
}
 
Fraction Fraction::add(const Fraction &f1)const{
    Fraction f2;
    f2.chisl=chisl*f1.znam+f1.chisl*znam;
    f2.znam=znam*f1.znam;
    f2.toRight();
return f2;
}
 
Fraction Fraction::dif(const Fraction &f1)const{
    Fraction f2;
    f2.chisl=chisl*f1.znam-f1.chisl*znam;
    f2.znam=znam*f1.znam;
    f2.toRight();
return f2;
}
 
Fraction Fraction::mul(const Fraction &f1)const{
    Fraction f2;
    f2.chisl=chisl*f1.chisl;
    f2.znam=znam*f1.znam;
    f2.toRight();
return f2;
}
 
Fraction Fraction::dev(const Fraction &f1)const{
    Fraction f2;
    f2.chisl=chisl*f1.znam;
    f2.znam=znam*f1.chisl;
    f2.toRight();
return f2;
}
 
int Fraction::equal(const Fraction &f1)const{
    if (chisl==f1.chisl && znam==f1.znam) return 1;
    else return 0;
}
 
int Fraction::more(const Fraction &f1)const{
    if (chisl*f1.znam-f1.chisl*znam>0) return 1;
    else return 0;
}
 
int Fraction::less(const Fraction &f1)const{
    if (chisl*f1.znam-f1.chisl*znam<0) return 1;
    else return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru