Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ConsoleApplication17.cpp : Defines the entry point for the console application.
- //
- #include "stdafx.h"
- int _tmain(int argc, _TCHAR* argv[])
- {
- return 0;
- }
- #include <iostream>
- #include <vector>
- #include <string>
- #include <map>
- #include <ctime>
- #include <sstream>
- using namespace std;
- /*int najczesciej(const vector<int> & w)
- {
- map<int, int> m;
- for (int cyfra : w)
- {
- m[cyfra]++;
- }
- int max_cyfra = 0, max_ilosc = 0;
- for (pair<int, int> p : m)
- {
- if (p.second > max_ilosc)
- {
- max_ilosc = p.second;
- max_cyfra = p.first;
- }
- }
- return max_cyfra;
- }*/
- class Ulamek
- {
- int licznik;
- int mianownik;
- public:
- Ulamek() :
- licznik(0),
- mianownik(1)
- {}
- Ulamek(int licznik) :
- licznik(licznik),
- mianownik(1)
- {}
- Ulamek(int Licznik, int Mianownik) :
- licznik(Licznik),
- mianownik(Mianownik)
- {}
- void dodaj(Ulamek inny);
- void pomnoz(Ulamek inny);
- double toDbl();
- string toStr();
- void skroc();
- };
- void Ulamek::skroc()
- {
- int mniejsza=licznik;
- if (licznik > mianownik)
- {
- mniejsza = mianownik;
- }
- for (int i = 2; i < mniejsza; i++)
- {
- if (mianownik % i == 0 && licznik % i==0)
- {
- mianownik /=i;
- licznik /=i;
- mniejsza /= i;
- i = 1;
- }
- }
- }
- void Ulamek::dodaj(Ulamek inny)
- {
- if (mianownik == mianownik)
- {
- licznik = licznik + inny.licznik;
- mianownik = inny.mianownik;
- }
- else
- {
- mianownik = mianownik*inny.mianownik;
- licznik = licznik*inny.mianownik + inny.licznik*mianownik;
- }
- }
- void Ulamek::pomnoz(Ulamek inny)
- {
- licznik = licznik*inny.licznik;
- mianownik = mianownik*inny.mianownik;
- }
- string Ulamek::toStr()
- {
- stringstream ss;
- ss << "(" << licznik << "/" << mianownik << ")";
- return ss.str();
- }
- double Ulamek::toDbl()
- {
- return licznik/(double)mianownik;
- }
- int main()
- {
- Ulamek a(1, 2), b(2, 3), c(3, 4), d(2, 1);
- cout << a.toStr() << " " << b.toStr() << " " << c.toStr() << " " << endl;
- cout << a.toDbl() << " " << b.toDbl() << " " << c.toDbl() << " " << endl;
- a.pomnoz(d);
- a.skroc();
- cout << a.toStr() << endl;
- b.dodaj(c);
- b.pomnoz(c);
- cout << b.toStr() << endl;
- /*map<string, int> m = { { "qwe", 9 }, {"lkj", 2} }
- m["asd"] = 4;
- cout << m["asd"] << endl;
- pair<string, int>p;
- p.first = "kads";
- p.second = 89;
- m.insert(p);
- cout*/
- /*srand((time(NULL)));
- vector<int> w;
- map<int, int>k;
- for (int i = 1; i < 100; i++)
- {
- w.push_back(rand() % 10);
- }
- cout << najczesciej(w) << endl;*/
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement