Advertisement
Orcio

CW3

Nov 28th, 2014
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 20.01 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5.  
  6. namespace CW3
  7. {
  8.     class Program
  9.     {
  10.         static void Main(string[] args)
  11.         {
  12.             /////////////////////////   ZAD 1   /////////////////////////////
  13.             //Console.WriteLine("Podaj 5 liczb.");
  14.             //int liczba;
  15.             //int[] tablica = new int[5];
  16.             //for (int i = 0; i < tablica.Length; i++)
  17.             //{
  18.             //    do
  19.             //    {
  20.             //        Console.WriteLine("Podaj " + (i + 1) + " liczbę:");
  21.             //    } while (!int.TryParse(Console.ReadLine(), out liczba));
  22.             //    tablica[i] = liczba;
  23.             //}
  24.             //Console.WriteLine("Twoje liczby to:");
  25.             //for (int i = tablica.Length; i > 0; i--)
  26.             //{
  27.             //    Console.WriteLine(tablica[i - 1]);
  28.             //}
  29.  
  30.  
  31.             ////////////////////// ZAD 2 ///////////////////////////////////
  32.  
  33.             //int długość, liczba;
  34.             //do
  35.             //{
  36.             //    Console.WriteLine("Podaj długość ciągu liczb:");
  37.             //} while (!int.TryParse(Console.ReadLine(), out długość));
  38.             //int[] tablica = new int[długość];
  39.             //Console.WriteLine("Podaj liczby z przedziału od 1 do 5");
  40.             //for (int i = 0; i < tablica.Length; i++)
  41.             //{
  42.             //    do
  43.             //    {
  44.             //        Console.WriteLine("Podaj " + (i + 1) + " liczbę");
  45.             //    } while (!int.TryParse(Console.ReadLine(), out liczba) || liczba < 1 || liczba > 5);
  46.             //    tablica[i] = liczba;
  47.             //}
  48.             //int a = 0, b = 0, c = 0, d = 0, e = 0;
  49.             //for (int i = 0; i < tablica.Length; i++)
  50.             //{
  51.             //    if (tablica[i] == 1)
  52.             //        a++;
  53.             //    else if (tablica[i] == 2)
  54.             //        b++;
  55.             //    else if (tablica[i] == 3)
  56.             //        c++;
  57.             //    else if (tablica[i] == 4)
  58.             //        d++;
  59.             //    else
  60.             //        e++;
  61.             //}
  62.             //Console.WriteLine();
  63.             //Console.WriteLine();
  64.             //Console.Write("1. ");
  65.             //for (int i = 0; i < a; i++)
  66.             //{
  67.             //    Console.Write("*");
  68.             //}
  69.             //Console.WriteLine();
  70.             //Console.Write("2. ");
  71.             //for (int i = 0; i < b; i++)
  72.             //{
  73.             //    Console.Write("*");
  74.             //}
  75.             //Console.WriteLine();
  76.             //Console.Write("3. ");
  77.             //for (int i = 0; i < c; i++)
  78.             //{
  79.             //    Console.Write("*");
  80.             //}
  81.             //Console.WriteLine();
  82.             //Console.Write("4. ");
  83.             //for (int i = 0; i < d; i++)
  84.             //{
  85.             //    Console.Write("*");
  86.             //}
  87.             //Console.WriteLine();
  88.             //Console.Write("5. ");
  89.             //for (int i = 0; i < e; i++)
  90.             //{
  91.             //    Console.Write("*");
  92.             //}
  93.             //Console.WriteLine();
  94.  
  95.             ///////////////////////////   ZAD 3   //////////////////////////////
  96.             //int długość, liczba;
  97.             //do
  98.             //{
  99.             //    Console.WriteLine("Podaj długość ciągu liczb:");
  100.             //} while (!int.TryParse(Console.ReadLine(), out długość));
  101.             //int[] tablica = new int[długość];
  102.             //Console.WriteLine("Podaj liczby.");
  103.             //for (int i = 0; i < tablica.Length; i++)
  104.             //{
  105.             //    do
  106.             //    {
  107.             //        Console.WriteLine("Podaj " + (i + 1) + " liczbę");
  108.             //    } while (!int.TryParse(Console.ReadLine(), out liczba));
  109.             //    tablica[i] = liczba;
  110.             //}
  111.             //int n = tablica.Length;
  112.             //do
  113.             //{
  114.             //    for (int i = 0; i < n - 1; i++)
  115.             //    {
  116.             //        if (tablica[i] > tablica[i + 1])
  117.             //        {
  118.             //            int x = tablica[i];
  119.             //            tablica[i] = tablica[i + 1];
  120.             //            tablica[i + 1] = x;
  121.             //        }
  122.             //    } n--;
  123.             //} while (n > 1);
  124.             //foreach (int element in tablica)
  125.             //{
  126.             //    Console.Write(element + " ");
  127.             //}
  128.  
  129.             /////////////////////////////   ZAD 4   ///////////////////////////////////////
  130.             //int i, j, dolnyZakres, górnyZakres, dokad;
  131.             //int[] tablica = new int[10000];
  132.             //do
  133.             //{
  134.             //    Console.WriteLine("Podaj dolny zakres:");
  135.             //} while (!int.TryParse(Console.ReadLine(), out dolnyZakres));
  136.             //do
  137.             //{
  138.             //    Console.WriteLine("Podaj górny zakres:");
  139.             //} while (!int.TryParse(Console.ReadLine(), out górnyZakres));
  140.             //dokad = (int)Math.Floor(Math.Sqrt(górnyZakres));
  141.             ////inicjuj tablice
  142.             //for (i = 1; i <= górnyZakres; i++) tablica[i] = i;
  143.  
  144.             ////algorytm - sito eratostenesa
  145.             //for (i = 2; i <= dokad; i++)
  146.             //{
  147.             //    if (tablica[i] != 0)
  148.             //    {
  149.             //        j = i + i;
  150.             //        while (j <= górnyZakres)
  151.             //        {
  152.             //            tablica[j] = 0;
  153.             //            j += i;
  154.             //        }
  155.             //    }
  156.             //}
  157.  
  158.             ////wypisz wynik
  159.             //Console.WriteLine("Liczby pierwsze z zakresu od " + dolnyZakres + " do " + górnyZakres);
  160.             //for (i = dolnyZakres; i <= górnyZakres; i++)
  161.             //    if (tablica[i] != 0)
  162.             //        Console.Write(i + ", ");
  163.  
  164.             /////////////////////////////////////// ZAD 5 do poprawy bez zakończenia //////////////////////////////////////////////////
  165.  
  166.             //int rozmiar,x,o;
  167.             //do
  168.             //{
  169.             //    Console.WriteLine("Proszę podać rozmiar planszy:");
  170.             //} while (!int.TryParse(Console.ReadLine(), out rozmiar));
  171.             //int[] tablica = new int[rozmiar*rozmiar];
  172.             //for (int i = 0; i < rozmiar * rozmiar; i++)
  173.             //{
  174.             //    tablica[i] = i + 1;
  175.             //}
  176.             //Console.WriteLine();
  177.             //Console.WriteLine();
  178.             //for(;;)
  179.             //{
  180.             //    //rysowanie pola
  181.             //    int p = 0;
  182.             //    for (int wiersz = 0; wiersz < rozmiar; wiersz++)
  183.             //    {
  184.             //        for (int kolumna = p; kolumna < rozmiar + p; kolumna++)
  185.             //        {
  186.             //            if (tablica[kolumna] == 0)
  187.             //                Console.Write("O  | ");
  188.             //            else if (tablica[kolumna] == 10001)
  189.             //                Console.Write("X  | ");
  190.             //            else if (tablica[kolumna] < 10)
  191.             //                Console.Write(tablica[kolumna] + "  | ");
  192.             //            else
  193.             //                Console.Write(tablica[kolumna] + " | ");
  194.             //        }
  195.             //        Console.WriteLine();
  196.             //        for (int i = 0; i < rozmiar * 3 - 2; i++)
  197.             //        {
  198.             //            Console.Write("- ");
  199.             //        }
  200.             //        Console.WriteLine();
  201.             //        p += rozmiar;
  202.             //    }///koniec pola
  203.             //    do
  204.             //    {
  205.             //        Console.WriteLine("Kółka:");
  206.             //    }
  207.             //    while (!int.TryParse(Console.ReadLine(), out o) || o < 1 || o > rozmiar * rozmiar);
  208.             //    if (tablica[o-1] != 0 && tablica[o-1] != 10001)
  209.             //    {
  210.             //        tablica[o-1] = 0;
  211.             //    }
  212.             //    //rysowanie pola
  213.             //    p = 0;
  214.             //    for (int wiersz = 0; wiersz < rozmiar; wiersz++)
  215.             //    {
  216.             //        for (int kolumna = p; kolumna < rozmiar + p; kolumna++)
  217.             //        {
  218.             //            if (tablica[kolumna] == 0)
  219.             //                Console.Write("O  | ");
  220.             //            else if (tablica[kolumna] == 10001)
  221.             //                Console.Write("X  | ");
  222.             //            else if (tablica[kolumna] < 10)
  223.             //                Console.Write(tablica[kolumna] + "  | ");
  224.             //            else
  225.             //                Console.Write(tablica[kolumna] + " | ");
  226.             //        }
  227.             //        Console.WriteLine();
  228.             //        for (int i = 0; i < rozmiar * 3 - 2; i++)
  229.             //        {
  230.             //            Console.Write("- ");
  231.             //        }
  232.             //        Console.WriteLine();
  233.             //        p += rozmiar;
  234.             //    }///koniec pola
  235.             //    do
  236.             //    {
  237.             //        Console.WriteLine("Krzyżyki:");
  238.             //    }
  239.             //    while (!int.TryParse(Console.ReadLine(), out x) || x < 1 || x > rozmiar * rozmiar);
  240.             //    if (tablica[x-1] != 0 && tablica[x-1] != 10001)
  241.             //    {
  242.             //        tablica[x-1] = 10001;
  243.             //    }
  244.             //    ////Sprawdzanie zakończenia
  245.                                  
  246.                
  247.             //}
  248.  
  249.  
  250.             //////////////////////////////////// ZAD 5 tablica dwuwymiarowa //////////////////////////////////////
  251.             Console.WriteLine("***************************************************************\n");
  252.             Console.WriteLine("Witaj w grze kółko i krzyżyk!\n");
  253.             Console.WriteLine("############   ZASADY   ############");
  254.             Console.WriteLine("1. Gra przewidziana jest na 2 osoby");
  255.             Console.WriteLine("2. Zaczyna gracz posiadający kółka");
  256.             Console.WriteLine("3. W celu postawienia znaku wpisz numer pola");
  257.             Console.WriteLine("4. Jeżeli wybrane pole jest już zajęte Twój ruch przepada!!!\n");
  258.             Console.WriteLine("***************************************************************\n\n");
  259.             int rozmiar, x, o, i = 1, j, a, b, p, remis = 0, koniec = 0;
  260.             do
  261.             {
  262.  
  263.                 Console.WriteLine("Proszę podać rozmiar planszy:");
  264.             } while (!int.TryParse(Console.ReadLine(), out rozmiar));
  265.  
  266.             int [,] tablica = new int[rozmiar,rozmiar];
  267.  
  268.             for (int w = 0; w < rozmiar; w++)
  269.             {
  270.                 for (int k = 0; k < rozmiar; k++)
  271.                 {
  272.                     tablica[w, k] = i;
  273.                     i++;
  274.                 }                
  275.             }
  276.  
  277.             for (; ; )
  278.             {    ////rysowanie planszy
  279.                 for (int w = 0; w < rozmiar; w++)
  280.                 {
  281.                     for (int k = 0; k < rozmiar; k++)
  282.                     {
  283.                         if (tablica[w, k] == -101)
  284.                             Console.Write("O  | ");
  285.                         else if (tablica[w, k] == -1)
  286.                             Console.Write("X  | ");
  287.                         else if (tablica[w, k] < 10)
  288.                             Console.Write(tablica[w, k] + "  | ");
  289.                         else
  290.                             Console.Write(tablica[w, k] + " | ");
  291.                     }
  292.  
  293.                     Console.WriteLine();
  294.                     for (i = 0; i < rozmiar; i++)
  295.                     {
  296.                         Console.Write("---  ");
  297.                     }
  298.                     Console.WriteLine();
  299.                 }
  300.                 //koniec rysowania
  301.  
  302.  
  303.                 do
  304.                 {
  305.                     Console.WriteLine("Kółka:");
  306.                 }
  307.                 while (!int.TryParse(Console.ReadLine(), out o) || o < 1 || o > rozmiar * rozmiar);
  308.                
  309.                 //szukanie współrzędnej a dla O
  310.                 for (i = 1;; i++)
  311.                 {
  312.                     if (o <= rozmiar * i)
  313.                     {
  314.                         a = i-1;
  315.                         break;
  316.                     }
  317.                 }
  318.                 //szukanie współrzędnej b dla O
  319.                 if (o == rozmiar * i)
  320.                 {
  321.                     b = rozmiar-1;
  322.                 }
  323.                 else
  324.                 {
  325.                 for (p = 1;; p++)
  326.                 {
  327.                     if (o == rozmiar*i - p)
  328.                     {
  329.                         b = rozmiar - p - 1;
  330.                         break;
  331.                     }
  332.                 }
  333.                 }
  334.                 if (tablica[a, b] != -101 && tablica[a, b] != -1)
  335.                     tablica[a, b] = -101;
  336.  
  337.  
  338.                 ////Sprawdzanie czy koniec
  339.                 //// w poziomie
  340.                 for (i = 0; i < rozmiar; i++)
  341.                 {
  342.                     for (j = 0; j < rozmiar; j++)
  343.                     {
  344.                         koniec += tablica[i, j];
  345.                     }                    
  346.                     if (koniec == (-101) * rozmiar)
  347.                     {
  348.                         break;
  349.                     }
  350.                     else
  351.                         koniec = 0;
  352.                 }
  353.                 if (koniec == (-101) * rozmiar)
  354.                 {
  355.                     Console.WriteLine("KONIEC GRY!!! Wygrały KÓŁKA!!!");
  356.                     break;
  357.                 }
  358.                 ////w pionie
  359.                 for (i = 0; i < rozmiar; i++)
  360.                 {
  361.                     for (j = 0; j < rozmiar; j++)
  362.                     {
  363.                         koniec += tablica[j, i];
  364.                     }
  365.                     if (koniec == (-101) * rozmiar)
  366.                     {
  367.                         break;
  368.                     }
  369.                     else
  370.                         koniec = 0;
  371.                 }
  372.                 if (koniec == (-101) * rozmiar)
  373.                 {
  374.                     Console.WriteLine("KONIEC GRY!!! Wygrały KÓŁKA!!!");
  375.                     break;
  376.                 }
  377.                 ////ukos 1
  378.                 for (i = 0; i < rozmiar; i++)
  379.                 {
  380.                     koniec += tablica[i, i];
  381.                 }
  382.                 if (koniec == (-101) * rozmiar)
  383.                 {
  384.                     Console.WriteLine("KONIEC GRY!!! Wygrały KÓŁKA!!!");
  385.                     break;
  386.                 }
  387.                 koniec = 0;
  388.                 ////ukos 2
  389.                 for (i = 0; i < rozmiar; i++)
  390.                 {
  391.                     for (j = 0; j < rozmiar; j++)
  392.                     {
  393.                         if (j + i == rozmiar - 1)
  394.                         {
  395.                             koniec += tablica[i, j];
  396.                         }
  397.                     }                    
  398.                     if (koniec == (-101) * rozmiar)
  399.                     {
  400.                         break;
  401.                     }
  402.                 }
  403.                 if (koniec == (-101) * rozmiar)
  404.                 {
  405.                     Console.WriteLine("KONIEC GRY!!! Wygrały KÓŁKA!!!");
  406.                     break;
  407.                 }
  408.                 koniec = 0;
  409.                 remis++;
  410.                 if (remis == rozmiar * rozmiar)
  411.                 {
  412.                     Console.WriteLine("Gra zakończyła się remisem!");
  413.                     break;
  414.                 }
  415.                 ////rysowanie planszy
  416.                 for (int w = 0; w < rozmiar; w++)
  417.                 {
  418.                     for (int k = 0; k < rozmiar; k++)
  419.                     {
  420.                         if (tablica[w, k] == -101)
  421.                             Console.Write("O  | ");
  422.                         else if (tablica[w, k] == -1)
  423.                             Console.Write("X  | ");
  424.                         else if (tablica[w, k] < 10)
  425.                             Console.Write(tablica[w, k] + "  | ");
  426.                         else
  427.                             Console.Write(tablica[w, k] + " | ");
  428.                     }
  429.  
  430.                     Console.WriteLine();
  431.                     for (i = 0; i < rozmiar * 3 - 2; i++)
  432.                     {
  433.                         Console.Write("- ");
  434.                     }
  435.                     Console.WriteLine();
  436.                 }
  437.                 //koniec rysowania
  438.  
  439.  
  440.                 do
  441.                 {
  442.                     Console.WriteLine("Krzyżyki:");
  443.                 }
  444.                 while (!int.TryParse(Console.ReadLine(), out x) || x < 1 || x > rozmiar * rozmiar);
  445.                
  446.  
  447.                 //szukanie współrzędnej a dla X
  448.                 for (i = 1; ; i++)
  449.                 {
  450.                     if (x <= rozmiar * i)
  451.                     {
  452.                         a = i - 1;
  453.                         break;
  454.                     }
  455.                 }
  456.                 //szukanie współrzędnej b dla X
  457.                 if (x == rozmiar * i)
  458.                 {
  459.                     b = rozmiar - 1;
  460.                 }
  461.                 else
  462.                 {
  463.                     for (p = 1; ; p++)
  464.                     {
  465.                         if (x == rozmiar * i - p)
  466.                         {
  467.                             b = rozmiar - p - 1;
  468.                             break;
  469.                         }
  470.                     }
  471.                 }
  472.                 if (tablica[a, b] != -101 && tablica[a, b] != -1)
  473.                     tablica[a, b] = -1;
  474.  
  475.                 ////Sprawdzanie czy koniec
  476.                 //// w poziomie
  477.                 for (i = 0; i < rozmiar; i++)
  478.                 {
  479.                     for (j = 0; j < rozmiar; j++)
  480.                     {
  481.                         koniec += tablica[i, j];
  482.                     }
  483.                     if (koniec == (-1) * rozmiar)
  484.                     {
  485.                         break;
  486.                     }
  487.                     else
  488.                         koniec = 0;
  489.                 }
  490.                 if (koniec == (-1) * rozmiar)
  491.                 {
  492.                     Console.WriteLine("KONIEC GRY!!! Wygrały KRZYŻYKI!!!");
  493.                     break;
  494.                 }
  495.                 ////w pionie
  496.                 for (i = 0; i < rozmiar; i++)
  497.                 {
  498.                     for (j = 0; j < rozmiar; j++)
  499.                     {
  500.                         koniec += tablica[j, i];
  501.                     }
  502.                     if (koniec == (-1) * rozmiar)
  503.                     {
  504.                         break;
  505.                     }
  506.                     else
  507.                         koniec = 0;
  508.                 }
  509.                 if (koniec == (-1) * rozmiar)
  510.                 {
  511.                     Console.WriteLine("KONIEC GRY!!! Wygrały KRZYŻYKI!!!");
  512.                     break;
  513.                 }
  514.                 ////ukos 1
  515.                 for (i = 0; i < rozmiar; i++)
  516.                 {
  517.                     koniec += tablica[i, i];            
  518.                 }
  519.                 if (koniec == (-1) * rozmiar)
  520.                 {
  521.                     Console.WriteLine("KONIEC GRY!!! Wygrały KRZYŻYKI!!!");
  522.                     break;
  523.                 }
  524.                 koniec = 0;
  525.                 ////ukos 2
  526.                 for (i = 0; i < rozmiar; i++)
  527.                 {
  528.                     for (j = 0; j < rozmiar; j++)
  529.                     {
  530.                         if (j + i == rozmiar - 1)
  531.                         {
  532.                             koniec += tablica[i, j];
  533.                         }
  534.                     }
  535.                     if (koniec == (-1) * rozmiar)
  536.                     {
  537.                         break;
  538.                     }                  
  539.                 }
  540.                 if (koniec == (-1) * rozmiar)
  541.                 {
  542.                     Console.WriteLine("KONIEC GRY!!! Wygrały KRZYŻYKI!!!");
  543.                     break;
  544.                 }
  545.                 koniec = 0;
  546.                 remis++;
  547.                 if (remis == rozmiar * rozmiar)
  548.                 {
  549.                     Console.WriteLine("Gra zakończyła się remisem!");
  550.                     break;
  551.                 }
  552.  
  553.  
  554.             }
  555.         }
  556.     }
  557. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement