Другие языки программирования и технологии
Помогите пожалуйста написать программу на языке Borland С++ Builder
Написать программу реализующую класс “дробь” в которой значение дроби определенно через структуру двух целых чисел (числитель и знаменатель) . Используя эту программу как библиотеку, решить задачу: Дан массив А, элементы которого - обыкновенные дроби. Найти сумму всех элементов и их среднее арифметическое
Вот держи накидал на коленке.
#include <iostream>
using namespace std;
class drob {
private:
int n; //числитель
int m; //знаменатель
public:
drob(void):n(0), m(0){}
drob(int _n, int _m):n(_n), m(_m){}
public:
drob& operator += (const drob& d){
if(m != d.m) {
n = n * d.m + d.n * m;
m = d.m * m;
} else {
n += d.n;
}
return *this;
}
drob& operator /= (int num){
if((num != 0) && ((n % num) == 0)){
n /= num;
} else {
m *= num;
}
return *this;
}
friend drob operator + (const drob& a, const drob& b){
drob d = a;
d += b;
return d;
}
int N(void) const { return n; }
int M(void) const { return m; }
};
//сумма дробей
drob array_sum(const drob* f, const drob* l){
drob sum = *f++;
while(f != l){
sum += *f++;
}
return sum;
}
int main(void){
drob A[] = { drob(1,2), drob(2,4), drob(1,7), drob(2,9) };
int N = sizeof(A)/sizeof(A[0]);
drob res = array_sum(A, A + N);
cout << "sum: " << res.N() << '/' << res.M() << endl;
res /= N;
cout << "avg: " << res.N() << '/' << res.M() << endl;
return 0;
}
#include <iostream>
using namespace std;
class drob {
private:
int n; //числитель
int m; //знаменатель
public:
drob(void):n(0), m(0){}
drob(int _n, int _m):n(_n), m(_m){}
public:
drob& operator += (const drob& d){
if(m != d.m) {
n = n * d.m + d.n * m;
m = d.m * m;
} else {
n += d.n;
}
return *this;
}
drob& operator /= (int num){
if((num != 0) && ((n % num) == 0)){
n /= num;
} else {
m *= num;
}
return *this;
}
friend drob operator + (const drob& a, const drob& b){
drob d = a;
d += b;
return d;
}
int N(void) const { return n; }
int M(void) const { return m; }
};
//сумма дробей
drob array_sum(const drob* f, const drob* l){
drob sum = *f++;
while(f != l){
sum += *f++;
}
return sum;
}
int main(void){
drob A[] = { drob(1,2), drob(2,4), drob(1,7), drob(2,9) };
int N = sizeof(A)/sizeof(A[0]);
drob res = array_sum(A, A + N);
cout << "sum: " << res.N() << '/' << res.M() << endl;
res /= N;
cout << "avg: " << res.N() << '/' << res.M() << endl;
return 0;
}
Языка Borland С++ Builder не существует, есть такая IDE, есть язык С++ и стандарты данного языка выпущенные в определенные периоды времени.
Задачу можно переформулировать так:
используя Борланд С++ Билдер реализовать то-то то-то. Но при этом человеку, реализующему данную задачу придется учитывать ограничения и стандарт С++ компилятора данной среды разработки, и при желании использовать его плюшки.
А теперь, собственно, вопрос: какой помощи вы ожидаете?
Написать все за вас? Так это довольно большая работа, которую просто так никто не будет делать.
Помочь вам? Так вы не привели никаких своих материалов (кода) и вопросов, которые могли бы решить возникшие у вас затруднения.
Задачу можно переформулировать так:
используя Борланд С++ Билдер реализовать то-то то-то. Но при этом человеку, реализующему данную задачу придется учитывать ограничения и стандарт С++ компилятора данной среды разработки, и при желании использовать его плюшки.
А теперь, собственно, вопрос: какой помощи вы ожидаете?
Написать все за вас? Так это довольно большая работа, которую просто так никто не будет делать.
Помочь вам? Так вы не привели никаких своих материалов (кода) и вопросов, которые могли бы решить возникшие у вас затруднения.
Похожие вопросы
- Помогите пожалуйста написать программу на языке программирования AssemblerКто первый поможет сделать правильно10балов+50
- Помогите, пожалуйста, написать программу на языке Си
- помогите, пожалуйста, написать программу на языке Паскаль
- Помогите пожалуйста написать программу в с++
- Помогите, пожалуйста, написать программу на делфи с ассемблерными вставками.
- Помогите, пожалуйста, написать программу на С++
- Помогите пожалуйста написать программу: Найти сумму индексов четных элементов массива. На языке С++.
- помогите, пожалуйста, доработать программу на языке Java
- Помогите пожалуйста написать программу для вывода матрицы на экран на языке С++
- Привет всем! Помогите, пожалуйста, написать программу в C++.