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

Сократить дробь - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Даны числа m и n. Получить все натуральные числа,меньшие n, квадрат суммы цифр которых равен m http://www.cyberforum.ru/cpp-beginners/thread704266.html
Доброго времени суток) прошу вашей помощи. Даны числа m и n. Получить все натуральные числа,меньшие n, квадрат суммы цифр которых равен m .(m и n вводятся с клавиатуры) Необходимо написать через цикл.
C++ Объяснить программу (Алгоритм планирования, Планировщик) Друзья, кто нибудь помогите объяснить как работает программа, по какому алгоритму планирования работает Планировщик, что конкретно делается. #include "stdafx.h" #include "conio.h" #include "iostream" #include "stdlib.h" #include "locale.h" using namespace std; void main() http://www.cyberforum.ru/cpp-beginners/thread704264.html
Задача на координаты C++
N точек в пространств заданны своими координатами (Xi;Yi;Zi;) определить какие из них находятся на минимальном расстоянии друг от друга, сделать математическую постановку, алгоритма в виде блок схемы и реализовать в любой программной сфере N=5 x:={-1;-3;4;2;1} y:={2;0;4;2;2} z:={-1;3;5;8;4}
C++ Не работает перегрузка операторов при выводе в cout
написал свой класс ComplexNumber. перегрузил для него операторы +, -, *, /, <<. конструкции вида ComplexNumber a(5,10); ComplexNumber b(7, 12); cout << "a = " << a << endl; cout << "b = " << b << endl; ComplexNumber sum = a + b;
C++ Получить строку, состоящую из пяти звездочек http://www.cyberforum.ru/cpp-beginners/thread704206.html
Получить строку, состоящую из пяти звездочек (символов "*"). Нужно вывести не символы, а именно строку. Помогите пожалуйста, очень нужно!
C++ Функция дужки(приоритет операций) в калькуляторе Надо сделать скобки в калькуляторе: сделать дополнительную ф-цию которая будет считать введеные даные после ввода "(", после ввода ")" возвращает результат в главную функцию(ну вместо ). Ну глянув на код ошибок вроде нет, но не компиируесть он. #include <iostream> #include <conio.h> #include <math.h> #include <string.h> #include <stdlib.h> using namespace std; int calc2(int); int main ()... подробнее

Показать сообщение отдельно
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
27.11.2012, 10:57     Сократить дробь
Пусть c - любой общий делитель a и b. Тогда http://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{a}{b}=\frac{\left(\frac{a}{c} \right)}{\left(\frac{b}{c} \right)}. Далее если числитель и знаменатель этой дроби имеют общие делители, то её можно сократить аналогично. После того, как окажутся сокращены все получающиеся при сокращении эквивалентные дроби, окажется, что произведение всех использованных делителей равно наибольшему общему делителю a и b. Причём всякий общий делитель http://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{a}{с} и http://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{b}{с} одновременно является общим делителем a и b.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void f(int a, int b, int &p, int &q)
{
 int c;
 p=a;
 q=b;
 bool flag;
 for (flag=true; flag; )
 {
  for (flag=false, c=abs(p); c>0; --c)
  {  
   if (((abs(p)%c)==0)&&((abs(q)%c)==0))
   {
    p/=c;
    q/=c;
    flag=true;
   }
  }
 }
}
Добавлено через 6 минут
И целиком:
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
#include <iostream.h>
void f(int a, int b, int &p, int &q);
int main ()
{
 int a, b, p, q;
 std::cout<<"введите числитель (a) и знаменатель (b):"<<std::endl;
 std::cout<<"a="<<std::endl;
 std::cin>>a;
 std::cout<<"b="<<std::endl;
 std::cin>>b;
 f(a,b,p,q);
 std::cout<<a<<"/"<<b<<"="<<p<<"/"<<q<<", то есть p="<<p<<", q="<<q<<endl;
}
void f(int a, int b, int &p, int &q)
{
 int c;
 p=a;
 q=b;
 bool flag;
 for (flag=true; flag; )
 {
  for (flag=false, c=abs(p); c>0; --c)
  {  
   if (((abs(p)%c)==0)&&((abs(q)%c)==0))
   {
    p/=c;
    q/=c;
    flag=true;
   }
  }
 }
}
 
Текущее время: 19:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru