Advertisement
Guest User

Untitled

a guest
Nov 24th, 2017
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 23.60 KB | None | 0 0
  1. using System;
  2. using static System.Console;
  3.  
  4.  
  5. ////////////////////////////////////////////////////////////////////////////////////////////////////
  6. // namespace: zad1
  7. //
  8. // summary: set of stuff that presents the basic functionalities of a fraction
  9. ////////////////////////////////////////////////////////////////////////////////////////////////////
  10.  
  11. namespace zad1
  12. {
  13.     ////////////////////////////////////////////////////////////////////////////////////////////////////
  14.     /// <summary>   A fraction structure. </summary>
  15.     ///
  16.     /// <remarks>   Julita, 2017-11-24. </remarks>
  17.     ////////////////////////////////////////////////////////////////////////////////////////////////////
  18.  
  19.     struct Fraction
  20.     {
  21.         int licznik, mianownik;
  22.  
  23.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  24.         /// <summary>   Implicit cast that converts the given int to a Fraction. </summary>
  25.         ///
  26.         /// <remarks>   Julita, 2017-11-24. </remarks>
  27.         ///
  28.         /// <param name="x">    The x coordinate. </param>
  29.         ///
  30.         /// <returns>   The result of the operation. </returns>
  31.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  32.  
  33.         public static implicit operator Fraction(int x) => new Fraction(x, 1);
  34.  
  35.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  36.         /// <summary>   Explicit cast that converts the given Fraction to an int. </summary>
  37.         ///
  38.         /// <remarks>   Julita, 2017-11-24. </remarks>
  39.         ///
  40.         /// <param name="f">    A Fraction to process. </param>
  41.         ///
  42.         /// <returns>   The result of the operation. </returns>
  43.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  44.  
  45.         public static explicit operator int(Fraction f) => f.licznik / f.mianownik;
  46.  
  47.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  48.         /// <summary>   Constructor. </summary>
  49.         ///
  50.         /// <remarks>   Julita, 2017-11-24. </remarks>
  51.         ///
  52.         /// <param name="licznik">      The licznik. </param>
  53.         /// <param name="mianownik">    The mianownik. </param>
  54.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  55.  
  56.         public Fraction(int licznik, int mianownik)
  57.         {
  58.             this.licznik = licznik;
  59.             this.mianownik = mianownik;
  60.             repairFraction();
  61.         }
  62.  
  63.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  64.         /// <summary>   Repair fraction. </summary>
  65.         ///
  66.         /// <remarks>   Julita, 2017-11-24. </remarks>
  67.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  68.  
  69.         public void repairFraction()
  70.         {
  71.             if ((licznik < 0 && mianownik < 0) || (licznik > 0 && mianownik < 0))
  72.             {
  73.                 licznik *= -1;
  74.                 mianownik *= -1;
  75.             }
  76.         }
  77.  
  78.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  79.         /// <summary>   Simplify fraction. </summary>
  80.         ///
  81.         /// <remarks>   Julita, 2017-11-24. </remarks>
  82.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  83.  
  84.         public void simplifyFraction()
  85.         {
  86.             if (licznik > 0)
  87.             {
  88.                 int l = licznik;
  89.                 int m = mianownik;
  90.                 int nwd = findNWD(l, m);
  91.                 if (l % nwd == 0)
  92.                 {
  93.                     licznik = l / nwd;
  94.                     mianownik = m / nwd;
  95.                     repairFraction();
  96.                 }
  97.             }
  98.             else if (licznik < 0)
  99.             {
  100.                 int l = Math.Abs(licznik);
  101.                 int m = mianownik;
  102.                 int nwd = findNWD(l, m);
  103.                 if (l % nwd == 0)
  104.                 {
  105.                     licznik = (l / nwd) * -1;
  106.                     mianownik = m / nwd;
  107.                     repairFraction();
  108.                 }
  109.             }
  110.         }
  111.  
  112.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  113.         /// <summary>   Addition operator. </summary>
  114.         ///
  115.         /// <remarks>   Julita, 2017-11-24. </remarks>
  116.         ///
  117.         /// <param name="f1">   The first Fraction. </param>
  118.         /// <param name="f2">   The second Fraction. </param>
  119.         ///
  120.         /// <returns>   The result of the operation. </returns>
  121.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  122.  
  123.         public static Fraction operator +(Fraction f1, Fraction f2)
  124.         {
  125.             int newLicznik = f1.licznik * f2.mianownik + f2.licznik * f1.mianownik;
  126.             int newMianownik = f1.mianownik * f2.mianownik;
  127.             f1.repairFraction();
  128.             f2.repairFraction();
  129.             return new Fraction(newLicznik, newMianownik);
  130.         }
  131.  
  132.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  133.         /// <summary>   Addition operator. </summary>
  134.         ///
  135.         /// <remarks>   Julita, 2017-11-24. </remarks>
  136.         ///
  137.         /// <param name="f1">   The first Fraction. </param>
  138.         /// <param name="n">    An int to process. </param>
  139.         ///
  140.         /// <returns>   The result of the operation. </returns>
  141.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  142.  
  143.         public static Fraction operator +(Fraction f1, int n)
  144.         {
  145.             Fraction f = n;
  146.             return f + f1;
  147.         }
  148.  
  149.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  150.         /// <summary>   Subtraction operator. </summary>
  151.         ///
  152.         /// <remarks>   Julita, 2017-11-24. </remarks>
  153.         ///
  154.         /// <param name="f1">   The first Fraction. </param>
  155.         /// <param name="f2">   The second Fraction. </param>
  156.         ///
  157.         /// <returns>   The result of the operation. </returns>
  158.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  159.  
  160.         public static Fraction operator -(Fraction f1, Fraction f2)
  161.         {
  162.             int newLicznik = f1.licznik * f2.mianownik - f2.licznik * f1.mianownik;
  163.             int newMianownik = f1.mianownik * f2.mianownik;
  164.             f1.repairFraction();
  165.             f2.repairFraction();
  166.             return new Fraction(newLicznik, newMianownik);
  167.         }
  168.  
  169.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  170.         /// <summary>   Subtraction operator. </summary>
  171.         ///
  172.         /// <remarks>   Julita, 2017-11-24. </remarks>
  173.         ///
  174.         /// <param name="f1">   The first Fraction. </param>
  175.         /// <param name="n">    An int to process. </param>
  176.         ///
  177.         /// <returns>   The result of the operation. </returns>
  178.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  179.  
  180.         public static Fraction operator -(Fraction f1, int n)
  181.         {
  182.             Fraction f = n;
  183.             return f1 - f;
  184.         }
  185.  
  186.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  187.         /// <summary>   Multiplication operator. </summary>
  188.         ///
  189.         /// <remarks>   Julita, 2017-11-24. </remarks>
  190.         ///
  191.         /// <param name="f1">   The first Fraction. </param>
  192.         /// <param name="f2">   The second Fraction. </param>
  193.         ///
  194.         /// <returns>   The result of the operation. </returns>
  195.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  196.  
  197.         public static Fraction operator *(Fraction f1, Fraction f2)
  198.         {
  199.             int newLicznik = f1.licznik * f2.licznik;
  200.             int newMianownik = f1.mianownik * f2.mianownik;
  201.             f1.repairFraction();
  202.             f2.repairFraction();
  203.             return new Fraction(newLicznik, newMianownik);
  204.         }
  205.  
  206.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  207.         /// <summary>   Multiplication operator. </summary>
  208.         ///
  209.         /// <remarks>   Julita, 2017-11-24. </remarks>
  210.         ///
  211.         /// <param name="f1">   The first Fraction. </param>
  212.         /// <param name="n">    An int to process. </param>
  213.         ///
  214.         /// <returns>   The result of the operation. </returns>
  215.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  216.  
  217.         public static Fraction operator *(Fraction f1, int n)
  218.         {
  219.             int newLicznik = f1.licznik * n;
  220.             int newMianownik = f1.mianownik;
  221.             f1.repairFraction();
  222.             return new Fraction(newLicznik, newMianownik);
  223.         }
  224.  
  225.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  226.         /// <summary>   Division operator. </summary>
  227.         ///
  228.         /// <remarks>   Julita, 2017-11-24. </remarks>
  229.         ///
  230.         /// <param name="f1">   The first Fraction. </param>
  231.         /// <param name="f2">   The second Fraction. </param>
  232.         ///
  233.         /// <returns>   The result of the operation. </returns>
  234.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  235.  
  236.         public static Fraction operator /(Fraction f1, Fraction f2)
  237.         {
  238.             int newLicznik = f1.licznik * f2.mianownik;
  239.             int newMianownik = f1.mianownik * f2.licznik;
  240.             f1.repairFraction();
  241.             f2.repairFraction();
  242.             return new Fraction(newLicznik, newMianownik);
  243.         }
  244.  
  245.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  246.         /// <summary>   Division operator. </summary>
  247.         ///
  248.         /// <remarks>   Julita, 2017-11-24. </remarks>
  249.         ///
  250.         /// <param name="f1">   The first Fraction. </param>
  251.         /// <param name="n">    An int to process. </param>
  252.         ///
  253.         /// <returns>   The result of the operation. </returns>
  254.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  255.  
  256.         public static Fraction operator /(Fraction f1, int n)
  257.         {
  258.             int newLicznik = f1.licznik;
  259.             int newMianownik = f1.mianownik * n;
  260.             f1.repairFraction();
  261.             return new Fraction(newLicznik, newMianownik);
  262.         }
  263.  
  264.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  265.         /// <summary>   Bitwise 'exclusive or' operator. </summary>
  266.         ///
  267.         /// <remarks>   Julita, 2017-11-24. </remarks>
  268.         ///
  269.         /// <param name="f">    A Fraction to process. </param>
  270.         /// <param name="pow">  The pow. </param>
  271.         ///
  272.         /// <returns>   The result of the operation. </returns>
  273.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  274.  
  275.         public static Fraction operator ^(Fraction f, int pow)
  276.         {
  277.             if (pow > 0)
  278.             {
  279.                 int l = f.licznik;
  280.                 int m = f.mianownik;
  281.                 f.licznik = (int)Math.Pow(l, pow);
  282.                 f.mianownik = (int)Math.Pow(m, pow);
  283.             }
  284.             else if (pow < 0)
  285.             {
  286.                 pow *= -1;
  287.                 int l = f.licznik;
  288.                 int m = f.mianownik;
  289.                 f.licznik = (int)Math.Pow(m, pow);
  290.                 f.mianownik = (int)Math.Pow(l, pow);
  291.             }
  292.             else
  293.             {
  294.                 f.licznik = 1;
  295.                 f.mianownik = 1;
  296.             }
  297.             f.repairFraction();
  298.             return f;
  299.         }
  300.  
  301.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  302.         /// <summary>   Greater-than comparison operator. </summary>
  303.         ///
  304.         /// <remarks>   Julita, 2017-11-24. </remarks>
  305.         ///
  306.         /// <param name="f1">   The first Fraction. </param>
  307.         /// <param name="f2">   The second Fraction. </param>
  308.         ///
  309.         /// <returns>   The result of the operation. </returns>
  310.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  311.  
  312.         public static bool operator >(Fraction f1, Fraction f2)
  313.         {
  314.             int licznik1 = f1.licznik * f2.mianownik;
  315.             int licznik2 = f2.licznik * f1.mianownik;
  316.             f1.repairFraction();
  317.             f2.repairFraction();
  318.             return licznik1 > licznik2;
  319.         }
  320.  
  321.  
  322.  
  323.         /// <summary>   . </summary>
  324.         public static bool operator <(Fraction f1, Fraction f2)
  325.         {
  326.             int licznik1 = f1.licznik * f2.mianownik;
  327.             int licznik2 = f2.licznik * f1.mianownik;
  328.             f1.repairFraction();
  329.             f2.repairFraction();
  330.             return licznik1 < licznik2;
  331.         }
  332.  
  333.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  334.         /// <summary>   Greater-than-or-equal comparison operator. </summary>
  335.         ///
  336.         /// <remarks>   Julita, 2017-11-24. </remarks>
  337.         ///
  338.         /// <param name="f1">   The first Fraction. </param>
  339.         /// <param name="f2">   The second Fraction. </param>
  340.         ///
  341.         /// <returns>   The result of the operation. </returns>
  342.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  343.  
  344.         public static bool operator >=(Fraction f1, Fraction f2)
  345.         {
  346.             int licznik1 = f1.licznik * f2.mianownik;
  347.             int licznik2 = f2.licznik * f1.mianownik;
  348.  
  349.             f1.repairFraction();
  350.             f2.repairFraction();
  351.             return licznik1 >= licznik2;
  352.         }
  353.  
  354.  
  355.         /// <summary>   . </summary>
  356.         public static bool operator <=(Fraction f1, Fraction f2)
  357.         {
  358.             int licznik1 = f1.licznik * f2.mianownik;
  359.             int licznik2 = f2.licznik * f1.mianownik;
  360.             f1.repairFraction();
  361.             f2.repairFraction();
  362.             return licznik1 <= licznik2;
  363.         }
  364.  
  365.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  366.         /// <summary>   Equality operator. </summary>
  367.         ///
  368.         /// <remarks>   Julita, 2017-11-24. </remarks>
  369.         ///
  370.         /// <param name="f1">   The first Fraction. </param>
  371.         /// <param name="f2">   The second Fraction. </param>
  372.         ///
  373.         /// <returns>   The result of the operation. </returns>
  374.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  375.  
  376.         public static bool operator ==(Fraction f1, Fraction f2)
  377.         {
  378.             bool answer = false;
  379.             if (f1.licznik == f2.licznik && f1.mianownik == f2.mianownik)
  380.             {
  381.                 answer = true;
  382.             }
  383.             f1.repairFraction();
  384.             f2.repairFraction();
  385.             return answer;
  386.         }
  387.  
  388.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  389.         /// <summary>   Inequality operator. </summary>
  390.         ///
  391.         /// <remarks>   Julita, 2017-11-24. </remarks>
  392.         ///
  393.         /// <param name="f1">   The first Fraction. </param>
  394.         /// <param name="f2">   The second Fraction. </param>
  395.         ///
  396.         /// <returns>   The result of the operation. </returns>
  397.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  398.  
  399.         public static bool operator !=(Fraction f1, Fraction f2)
  400.         {
  401.             bool answer = false;
  402.             if (f1.licznik != f2.licznik || f1.mianownik != f2.mianownik)
  403.             {
  404.                 answer = true;
  405.             }
  406.             f1.repairFraction();
  407.             f2.repairFraction();
  408.             return answer;
  409.         }
  410.  
  411.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  412.         /// <summary>   Searches for the first nwd. </summary>
  413.         ///
  414.         /// <remarks>   Julita, 2017-11-24. </remarks>
  415.         ///
  416.         /// <param name="l">    An int to process. </param>
  417.         /// <param name="m">    An int to process. </param>
  418.         ///
  419.         /// <returns>   The found nwd. </returns>
  420.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  421.  
  422.         public int findNWD(int l, int m)
  423.         {
  424.             while (l != m)
  425.             {
  426.                 if (l > m)
  427.                 {
  428.                     l -= m;
  429.                 }
  430.                 else
  431.                 {
  432.                     m -= l;
  433.                 }
  434.             }
  435.             return l;
  436.         }
  437.  
  438.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  439.         /// <summary>   Print fraction. </summary>
  440.         ///
  441.         /// <remarks>   Julita, 2017-11-24. </remarks>
  442.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  443.  
  444.         public void printFraction()
  445.         {
  446.             repairFraction();
  447.             if (Math.Abs(licznik) > Math.Abs(mianownik))
  448.             {
  449.                 int stalaPrzed = (int)(licznik / mianownik);
  450.                 int l = licznik - mianownik * stalaPrzed;
  451.                 if (stalaPrzed < 0 && l < 0)
  452.                 {
  453.                     l *= -1;
  454.                 }
  455.                 WriteLine("{0} ( {1} / {2} )", stalaPrzed, l, FracMianownik);
  456.                 if (l % mianownik == 0)
  457.                 {
  458.                     WriteLine(" {0} ", stalaPrzed);
  459.                 }
  460.             }
  461.             else
  462.             {
  463.                 WriteLine(" {0} / {1} ", FracLicznik, FracMianownik);
  464.             }
  465.  
  466.             WriteLine();
  467.         }
  468.  
  469.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  470.         /// <summary>   Simply print. </summary>
  471.         ///
  472.         /// <remarks>   Julita, 2017-11-24. </remarks>
  473.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  474.  
  475.         public void simplyPrint()
  476.         {
  477.             repairFraction();
  478.             WriteLine(" {0} / {1} ", FracLicznik, FracMianownik);
  479.             WriteLine();
  480.         }
  481.         public int FracMianownik => mianownik;
  482.         public int FracLicznik => licznik;
  483.     }
  484.  
  485.     ////////////////////////////////////////////////////////////////////////////////////////////////////
  486.     /// <summary>   A solution. </summary>
  487.     ///
  488.     /// <remarks>   Julita, 2017-11-24. </remarks>
  489.     ////////////////////////////////////////////////////////////////////////////////////////////////////
  490.  
  491.     class Solution
  492.     {
  493.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  494.         /// <summary>   Main entry-point for this application. </summary>
  495.         ///
  496.         /// <remarks>   Julita, 2017-11-24. </remarks>
  497.         ///
  498.         /// <param name="args"> An array of command-line argument strings. </param>
  499.         ////////////////////////////////////////////////////////////////////////////////////////////////////
  500.  
  501.         static void Main(string[] args)
  502.         {
  503.             int l1, l2, m1, m2;
  504.             Fraction f1, f2, f3, f4, f5;
  505.             int n;
  506.             string input;
  507.  
  508.             WriteLine();
  509.             WriteLine("TWORZENIE PIERWSZEGO UŁAMKA - F1");
  510.             WriteLine("Wpisz licznik:");
  511.             input = ReadLine();
  512.             if (input == "")
  513.             {
  514.                 l1 = 1;
  515.             }
  516.             else
  517.             {
  518.                 l1 = Int32.Parse(input);
  519.             }
  520.             WriteLine("Wpisz mianownik:");
  521.             input = ReadLine();
  522.             if (input == "")
  523.             {
  524.                 m1 = 1;
  525.             }
  526.             else
  527.             {
  528.                 m1 = Int32.Parse(input);
  529.             }
  530.             WriteLine("F1:");
  531.             f1 = new Fraction(l1, m1);
  532.             f1.simplifyFraction();
  533.             f1.simplyPrint();
  534.  
  535.             WriteLine("TWORZENIE DRUGIEGO UŁAMKA - F2");
  536.             WriteLine("Wpisz licznik:");
  537.             input = ReadLine();
  538.             if (input == "")
  539.             {
  540.                 l2 = 1;
  541.             }
  542.             else
  543.             {
  544.                 l2 = Int32.Parse(input);
  545.             }
  546.             WriteLine("Wpisz mianownik:");
  547.             input = ReadLine();
  548.             if (input == "")
  549.             {
  550.                 m2 = 1;
  551.             }
  552.             else
  553.             {
  554.                 m2 = Int32.Parse(input);
  555.             }
  556.             WriteLine("F2:");
  557.             f2 = new Fraction(l2, m2);
  558.             f2.simplifyFraction();
  559.             f2.simplyPrint();
  560.  
  561.             WriteLine("LICZBA CAŁKOWITA DO TESTÓW");
  562.             WriteLine("Wpisz liczbę całkowitą:");
  563.             input = ReadLine();
  564.             if (input == "")
  565.             {
  566.                 n = 1;
  567.             }
  568.             else
  569.             {
  570.                 n = Int32.Parse(input);
  571.             }
  572.             WriteLine($"Liczba n = {n}");
  573.             WriteLine();
  574.  
  575.             WriteLine("PRZYKŁADY DZIAŁANIA OPERATORÓW");
  576.             WriteLine();
  577.  
  578.             WriteLine("F1 + F2");
  579.             f3 = f1 + f2;
  580.             f3.printFraction();
  581.  
  582.             WriteLine($"F1 + {n}");
  583.             f3 = f1 + n;
  584.             f3.simplyPrint();
  585.  
  586.             WriteLine("F1 - F2");
  587.             f3 = f1 - f2;
  588.             f3.printFraction();
  589.  
  590.             WriteLine($"F1 - {n}");
  591.             f3 = f1 - n;
  592.             f3.simplyPrint();
  593.  
  594.             WriteLine("F1 * F2");
  595.             f3 = f1 * f2;
  596.             f3.printFraction();
  597.  
  598.             WriteLine($"F1 * {n}");
  599.             f3 = f1 * n;
  600.             f3.simplyPrint();
  601.  
  602.             WriteLine("F1 / F2");
  603.             f3 = f1 / f2;
  604.             f3.printFraction();
  605.  
  606.             WriteLine($"F1 / {n}");
  607.             f3 = f1 / n;
  608.             f3.simplyPrint();
  609.  
  610.             WriteLine($"F1 ^ {n}");
  611.             f3 = f1 ^ n;
  612.             f3.simplyPrint();
  613.  
  614.             WriteLine("OPERATORY RELACJI");
  615.             f4 = new Fraction(l1, m1);
  616.             WriteLine("F4:");
  617.             f4.simplyPrint();
  618.             WriteLine();
  619.             WriteLine(" F1 > F2");
  620.             WriteLine(f1 > f2);
  621.             WriteLine("\n F1 < F2");
  622.             WriteLine(f1 < f2);
  623.             WriteLine("\n F1 >= F2");
  624.             WriteLine(f1 >= f2);
  625.             WriteLine("\n F1 >= F4");
  626.             WriteLine(f1 >= f4);
  627.             WriteLine("\n F1 == F2");
  628.             WriteLine(f1 == f2);
  629.             WriteLine("\n F1 == F4");
  630.             WriteLine(f1 == f4);
  631.             WriteLine("\n F1 != F2");
  632.             WriteLine(f1 != f2);
  633.             WriteLine("\n F1 != F4");
  634.             WriteLine(f1 != f4);
  635.  
  636.             WriteLine("INNE PRZYŁADY");
  637.             f5 = n;
  638.             f5.simplyPrint();
  639.             WriteLine();
  640.  
  641.             WriteLine();
  642.             WriteLine("KONIEC");
  643.         }
  644.     }
  645. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement