Facebook
From Colossal Shama, 3 Years ago, written in C#.
Embed
Download Paste or View Raw
Hits: 124
  1. bool blad = false; bool blad200 = false; bool blad100 = false; bool blad50 = false; bool blad20 = false; bool blad10 = false;
  2.                             int srednia, ilosc200, ilosc100, ilosc50, ilosc20, ilosc10;
  3.                             ilosc200 = 0; ilosc100 = 0; ilosc50 = 0; ilosc20 = 0; ilosc10 = 0;
  4.                             srednia = (Operacje.n200.Count + Operacje.n100.Count + Operacje.n50.Count + Operacje.n20.Count + Operacje.n10.Count) / 5;
  5.                             while (Operacje.kwota > 0 && !blad)
  6.                             {
  7.                                 if (Operacje.kwota >= 200 && Operacje.n200.Count > 0 && Operacje.n200.Count >= srednia)
  8.                                 {
  9.                                     ilosc200++;
  10.                                     Operacje.kwota -= 200;
  11.                                     Operacje.n200.RemoveAt(0);
  12.                                     srednia = (Operacje.n200.Count + Operacje.n100.Count + Operacje.n50.Count + Operacje.n20.Count + Operacje.n10.Count) / 5;
  13.                                 }
  14.                                  else { blad200 = true; }
  15.                                 if (Operacje.kwota >= 100 && Operacje.n100.Count > 0 && Operacje.n100.Count >= srednia)
  16.                                 {
  17.                                     ilosc100++;
  18.                                     Operacje.kwota -= 100;
  19.                                     Operacje.n100.RemoveAt(0);
  20.                                     srednia = (Operacje.n200.Count + Operacje.n100.Count + Operacje.n50.Count + Operacje.n20.Count + Operacje.n10.Count) / 5;
  21.                                 }
  22.                                  else { blad100 = true; }
  23.                                 if (Operacje.kwota >= 50 && Operacje.n50.Count > 0 && Operacje.n50.Count >= srednia)
  24.                                 {
  25.                                     ilosc50++;
  26.                                     Operacje.kwota -= 50;
  27.                                     Operacje.n50.RemoveAt(0);
  28.                                     srednia = (Operacje.n200.Count + Operacje.n100.Count + Operacje.n50.Count + Operacje.n20.Count + Operacje.n10.Count) / 5;
  29.                                 }
  30.                                  else { blad50 = true; }
  31.                                 if (Operacje.kwota >= 20 && Operacje.n20.Count > 0 && Operacje.n20.Count >= srednia)
  32.                                 {
  33.                                     ilosc20++;
  34.                                     Operacje.kwota -= 20;
  35.                                     Operacje.n20.RemoveAt(0);
  36.                                     srednia = (Operacje.n200.Count + Operacje.n100.Count + Operacje.n50.Count + Operacje.n20.Count + Operacje.n10.Count) / 5;
  37.                                 }
  38.                                  else { blad20 = true; }
  39.                                 if (Operacje.kwota >= 10 && Operacje.n10.Count > 0 && Operacje.n10.Count >= srednia)
  40.                                 {
  41.                                     ilosc10++;
  42.                                     Operacje.kwota -= 10;
  43.                                     Operacje.n10.RemoveAt(0);
  44.                                     srednia = (Operacje.n200.Count + Operacje.n100.Count + Operacje.n50.Count + Operacje.n20.Count + Operacje.n10.Count) / 5;
  45.                                 }
  46.                                  else { blad10 = true; }
  47.                                 if (blad200 && blad100 && blad50 && blad20 && blad10)
  48.                                 {
  49.                                     blad = true;    //Jeśli kwota nie może być zrealizowana przez użycie żadnego nominału, trzeba zatrzymać pętle.
  50.                                 }
  51.                             }
  52.                             if (blad) //Jeśli nie ma potrzebnych nominałów, to do pojemników trzeba oddać nominały, które z początku były zarezerwowane.
  53.                             {
  54.                                 while (ilosc200 > 0)
  55.                                 {
  56.                                     Operacje.n200.Add(200);
  57.                                     ilosc200 -= 1;
  58.                                 }                                
  59.                                 while (ilosc100 > 0)
  60.                                 {
  61.                                     Operacje.n100.Add(100);
  62.                                     ilosc100 -= 1;
  63.                                 }
  64.                                 while (ilosc50 > 0)
  65.                                 {
  66.                                     Operacje.n50.Add(50);
  67.                                     ilosc50 -= 1;
  68.                                 }
  69.                                 while (ilosc20 > 0)
  70.                                 {
  71.                                     Operacje.n20.Add(20);
  72.                                     ilosc20 -= 1;
  73.                                 }
  74.                                 while (ilosc10 > 0)
  75.                                 {
  76.                                     Operacje.n10.Add(10);
  77.                                     ilosc10 -= 1;
  78.                                 }
  79.                                 MessageBox.Show("Brak odpowiednich nominałów!", "Błąd!", MessageBoxButton.OK, MessageBoxImage.Error);
  80.                                 txtKwota.Text = "";
  81.                             }
  82.                             else
  83.                             {
  84.                                 if (ilosc200 > 0)
  85.                                 {
  86.                                     tb200.Text = "Wypłacono " + ilosc200 + " razy 200 ZŁ";
  87.                                 }
  88.                                 if (ilosc100 > 0)
  89.                                 {
  90.                                     tb100.Text = "Wypłacono " + ilosc100 + " razy 100 ZŁ";
  91.                                 }
  92.                                 if (ilosc50 > 0)
  93.                                 {
  94.                                     tb50.Text = "Wypłacono " + ilosc50 + " razy 50 ZŁ";
  95.                                 }
  96.                                 if (ilosc20 > 0)
  97.                                 {
  98.                                     tb20.Text = "Wypłacono " + ilosc20 + " razy 20 ZŁ";
  99.                                 }
  100.                                 if (ilosc10 > 0)
  101.                                 {
  102.                                     tb10.Text = "Wypłacono " + ilosc10 + " razy 10 ZŁ";
  103.                                 }
  104.                                 MessageBox.Show("Pamiętaj o wzięciu pieniędzy!", "Informacja", MessageBoxButton.OK, MessageBoxImage.Information);
  105.                                 txtKwota.Text = "";
  106.                             }
  107.                             SprawdzStanUzytkownika();