예제 #1
0
        public static Ulamek PobierzUlamek()
        {
            Ulamek ulamek = new Ulamek();
            bool   correctness;

            Console.Write("podaj licznik:");
            ulamek.Licznik = Int32.Parse(Console.ReadLine());
            do
            {
                correctness = true;
                Console.Write("podaj mianownik:");
                try
                {
                    ulamek.Mianownik = Int32.Parse(Console.ReadLine());
                    if (ulamek.Mianownik == 0)
                    {
                        Console.WriteLine("Mianownik nie może byc równy 0.");
                        correctness = false;
                    }
                }
                catch (FormatException e)
                {
                    Console.WriteLine("Nieprawidłowy format liczby.");
                    correctness = false;
                }
            } while (!correctness);

            return(ulamek);
        }
예제 #2
0
        public static void UlamekDziesietny(Ulamek ulamek)
        {
            double ulamekDziesietny = (Double)ulamek.Licznik / (double)ulamek.Mianownik;

            Console.WriteLine("ulamek dziesietny:");
            Console.WriteLine(Math.Round(ulamekDziesietny, 3).ToString());
        }
예제 #3
0
        public static Ulamek Odwracanie(Ulamek ulamek)
        {
            Ulamek odwrocony = new Ulamek();

            odwrocony.Licznik   = ulamek.Mianownik;
            odwrocony.Mianownik = ulamek.Licznik;
            return(odwrocony);
        }
예제 #4
0
        public static void OdejmijUlamki()
        {
            Ulamek u1 = new Ulamek();
            Ulamek u2 = new Ulamek();

            Console.WriteLine("pobierz pierwszy Ułamek");
            u1 = Obsluga.PobierzUlamek();
            Console.WriteLine("pobierz drugi Ułamek");
            u2 = Obsluga.PobierzUlamek();
            Console.WriteLine("Różnica ułamków:\n");

            Obsluga.WyswietlUlamek(u1 - u2);
        }
예제 #5
0
        public static Ulamek UlamekZwykly()
        {
            string number;
            int    ilePoPrzecinku;
            double ulamekDziesietny;
            Ulamek ulamekZwykly = new Ulamek();

            number                 = Console.ReadLine();
            ilePoPrzecinku         = number.Substring(number.IndexOf(",") + 1).Length;
            ulamekDziesietny       = Double.Parse(number);
            ulamekZwykly.Mianownik = (int)Math.Pow(10, ilePoPrzecinku);
            ulamekDziesietny       = ulamekDziesietny * ulamekZwykly.Mianownik;
            ulamekZwykly.Licznik   = (int)ulamekDziesietny;

            return(ulamekZwykly);
        }
예제 #6
0
        public static void Skracanie(Ulamek ulamek, bool pojWynik = false)
        {
            int    dzielnik;
            Ulamek wynik = new Ulamek();

            dzielnik = NWD(ulamek.Licznik, ulamek.Mianownik);
            if (dzielnik == 1)
            {
                Console.WriteLine("Ułamek nie jest skracalny");

                Obsluga.WyswietlUlamek(ulamek);
            }
            else
            {
                wynik.Licznik   = ulamek.Licznik / dzielnik;
                wynik.Mianownik = ulamek.Mianownik / dzielnik;
                Console.WriteLine("{0}\t\t{1}", ulamek.Licznik, wynik.Licznik);
                Console.WriteLine("__\t=\t__");
                Console.WriteLine("{0}\t\t{1}", ulamek.Mianownik, wynik.Mianownik);
            }
        }
예제 #7
0
 public static void WyswietlUlamek(Ulamek ulamek)
 {
     Console.WriteLine("{0}", ulamek.Licznik);
     Console.WriteLine("__");
     Console.WriteLine("{0}", ulamek.Mianownik);
 }
예제 #8
0
        public static void Main(string[] args)
        {
            bool   exit = false;
            int    n;
            Ulamek ulamek = new Ulamek();

            do
            {
                Console.WriteLine("Menu:");
                Console.WriteLine("1. Skróć ułamek");
                Console.WriteLine("2. Odwróć ułamek");
                Console.WriteLine("3. Zamień na ulamek dziesiętny");
                Console.WriteLine("4. Zamień na ułamek zwykły");
                Console.WriteLine("5. Dodaj ułamki");
                Console.WriteLine("6. Odejmij ułamki");
                Console.WriteLine("7. Wyjdź");
                n = Convert.ToInt32(Console.ReadLine());

                switch (n)
                {
                case 1:
                {
                    ulamek = Obsluga.PobierzUlamek();
                    Dzialania.Skracanie(ulamek);
                    break;
                }

                case 2:
                {
                    ulamek = Obsluga.PobierzUlamek();
                    Ulamek odwroconyUlamek = new Ulamek();
                    odwroconyUlamek = Dzialania.Odwracanie(ulamek);
                    Console.WriteLine("Ułamek do odwrócenia");
                    Obsluga.WyswietlUlamek(ulamek);
                    Console.WriteLine("Ułamek odwrocony");
                    Obsluga.WyswietlUlamek(odwroconyUlamek);


                    break;
                }

                case 3:
                {
                    ulamek = Obsluga.PobierzUlamek();
                    Console.WriteLine("Ulamek zwykly:");
                    Obsluga.WyswietlUlamek(ulamek);
                    Dzialania.UlamekDziesietny(ulamek);
                    break;
                }

                case 4:
                {
                    Console.WriteLine("Podaj ułamek dziesiętny (do 3 miejsc po przecinku):");
                    Ulamek ulamekZwykly = new Ulamek();
                    ulamekZwykly = Dzialania.UlamekZwykly();
                    Dzialania.Skracanie(ulamekZwykly, true);

                    break;
                }

                case 5:
                {
                    Dzialania.DodajUlamki();
                    break;
                }

                case 6:
                {
                    break;
                }

                case 7:
                {
                    exit = true;

                    break;
                }

                default:
                {
                    Console.WriteLine("nie ma takiej opcji");
                    break;
                }
                }
            } while (!exit);
        }