C++:
Se citeşte de la tastatură un şir de n numere naturale. Scrieţi un program care determină şi afişează fracţia subunitară ireductibilă care se poate forma din numărul minim şi numărul maxim din şir.
Exemplu. Pentru n = 4 şi numerele 3, 2, 5, 8, se afişează: 1/4
Cum fac partea cu fractia ireductibila ?
As dori sa imi aratati DOAR algoritmul pentru aducerea unei fractii reductibile intr-o forma de fractie ireductibila, astfel incat sa pot folosi algoritmul in orice problema.
Răspunsuri la întrebare
Răspuns de
3
#include <iostream>
using namespace std;
int main()
{
int n, min, max, i;
cout << "n="; cin >> n;
int a[n+1];
for(i=1;i<=n;i++)
{
cout << "a[" << i << "]=";
cin >> a[i];
}
min=a[1];
for(i=2;i<=n;i++)
{
if(a[i]<min) min=a[i];
}
max=a[1];
for(i=2;i<=n;i++)
{
if(a[i]>max) max=a[i];
}
for(i=2;i<=min;i++)
{
if((min%i==0) && (max%i==0)) //aici
{
min=min/i;
max=max/i;
}
}
cout << min << "/" << max;
return 0;
}
using namespace std;
int main()
{
int n, min, max, i;
cout << "n="; cin >> n;
int a[n+1];
for(i=1;i<=n;i++)
{
cout << "a[" << i << "]=";
cin >> a[i];
}
min=a[1];
for(i=2;i<=n;i++)
{
if(a[i]<min) min=a[i];
}
max=a[1];
for(i=2;i<=n;i++)
{
if(a[i]>max) max=a[i];
}
for(i=2;i<=min;i++)
{
if((min%i==0) && (max%i==0)) //aici
{
min=min/i;
max=max/i;
}
}
cout << min << "/" << max;
return 0;
}
sanziana009:
Multumesc mult de tot !
{
if((min%i==0) && (max%i==0))
{
min=min/i;
max=max/i;
}
} Dupa modelul asta de secventa, pot folosi in orice problema pt a aduce o fractie in forma ei ireductibila, nu ?
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Engleza,
8 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă