consolidate all repos to one for archive
This commit is contained in:
90
semester_1/programiranje_1/Vaje/Vaja_5/Ulomki/main.cpp
Normal file
90
semester_1/programiranje_1/Vaje/Vaja_5/Ulomki/main.cpp
Normal file
@@ -0,0 +1,90 @@
|
||||
#include <iostream>
|
||||
#include <cmath>
|
||||
using namespace std;
|
||||
|
||||
int deljivost(int a, int b){
|
||||
for(int i=2;i<=a;i++){
|
||||
if(a % i==0 && b % i == 0){
|
||||
return i;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
int main(){
|
||||
int a, b, c, d, operacija;
|
||||
int negativnost = 0;
|
||||
int x=0, y=0, q=0, z=0;
|
||||
|
||||
//vpis
|
||||
cout << "a/b operator c/d" << endl;
|
||||
cout << "vpisi a";
|
||||
cin >> a;
|
||||
cout << "vpisi b";
|
||||
cin >> b;
|
||||
cout << "vpisi c";
|
||||
cin >> c;
|
||||
cout << "vpisi d";
|
||||
cin >> d;
|
||||
cout << "1 = +\n"
|
||||
"2 = -\n"
|
||||
"3 = *\n"
|
||||
"4 = /\n";
|
||||
cin >> operacija;
|
||||
|
||||
//izračunaj
|
||||
switch (operacija){
|
||||
case 1:
|
||||
x = (a*d)+(c*b);
|
||||
y = b*d;
|
||||
break;
|
||||
case 2:
|
||||
x = (a*d)-(c*b);
|
||||
y = b*d;
|
||||
break;
|
||||
case 3:
|
||||
x = a*c;
|
||||
y = b*d;
|
||||
break;
|
||||
case 4:
|
||||
x = a*d;
|
||||
y = b*c;
|
||||
}
|
||||
|
||||
//negativnost
|
||||
if(x<0 && y<0){
|
||||
negativnost = 0;
|
||||
x = abs(x);
|
||||
y = abs(y);
|
||||
}else if(x<0 && y>=0){
|
||||
negativnost = 1;
|
||||
x = abs(x);
|
||||
y = abs(y);
|
||||
}else if(x>=0 && y<0){
|
||||
negativnost = 1;
|
||||
x = abs(x);
|
||||
y = abs(y);
|
||||
}else{
|
||||
negativnost = 0;
|
||||
}
|
||||
|
||||
// okrajsa ulomek
|
||||
z = deljivost(x,y);
|
||||
while(z>0){
|
||||
x = x/z;
|
||||
y = y/z;
|
||||
z = deljivost(x,y);
|
||||
}
|
||||
|
||||
//izpostavi
|
||||
q = x/y;
|
||||
x = x-(q*y);
|
||||
|
||||
//izpisi
|
||||
cout << "Rezultat je: ";
|
||||
if(negativnost == 1){cout << "-";}
|
||||
if(q>0){cout << q << " ";}
|
||||
if(x>0){cout << x << "/" << y;}
|
||||
cout << endl;
|
||||
return 0;
|
||||
}
|
Reference in New Issue
Block a user