kokusz19

LogikaiAlgoritmusok - Supplementary program for Tents

Jun 20th, 2020
228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 24.34 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4.  
  5. namespace CountZeroes
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             //megoldas(3, "a83", "b83", "c83", "d83", "e83", "f83", "g83", "h83");
  12.             //countZeroes("C:\\Users\\Kokusz\\Documents\\tents_and_trees_final_v2.txt");
  13.             //replaceVariables("C:\\Users\\Kokusz\\Documents\\test_replace.txt");
  14.             //onlyTents("C:\\Users\\Kokusz\\Documents\\tents_and_trees_output.txt");
  15.         }
  16.  
  17.         public static void countZeroes(string path)
  18.         {
  19.             string line;
  20.             int count = 0;
  21.             StreamReader file = new StreamReader(@path);
  22.             while ((line = file.ReadLine()) != null)
  23.             {
  24.                 //if (line.Contains('0'))
  25.                 if(line[0] != 'c')
  26.                 {
  27.                     count++;
  28.                     continue;
  29.                 }
  30.             }
  31.             Console.WriteLine(count-1);
  32.         }
  33.  
  34.         public static void replaceVariables(string path)
  35.         {
  36.             string line;
  37.             int i;
  38.             StreamReader file = new StreamReader(@path);
  39.             while ((line = file.ReadLine()) != null)
  40.             {
  41.                 i = 1;
  42.                 #region rowA
  43.                 line = line.Replace("a11", i.ToString());
  44.                 i++;
  45.                 line = line.Replace("a12", i.ToString());
  46.                 i++;
  47.                 line = line.Replace("a13", i.ToString());
  48.                 i++;
  49.                 line = line.Replace("a21", i.ToString());
  50.                 i++;
  51.                 line = line.Replace("a22", i.ToString());
  52.                 i++;
  53.                 line = line.Replace("a23", i.ToString());
  54.                 i++;
  55.                 line = line.Replace("a31", i.ToString());
  56.                 i++;
  57.                 line = line.Replace("a32", i.ToString());
  58.                 i++;
  59.                 line = line.Replace("a33", i.ToString());
  60.                 i++;
  61.                 line = line.Replace("a41", i.ToString());
  62.                 i++;
  63.                 line = line.Replace("a42", i.ToString());
  64.                 i++;
  65.                 line = line.Replace("a43", i.ToString());
  66.                 i++;
  67.                 line = line.Replace("a51", i.ToString());
  68.                 i++;
  69.                 line = line.Replace("a52", i.ToString());
  70.                 i++;
  71.                 line = line.Replace("a53", i.ToString());
  72.                 i++;
  73.                 line = line.Replace("a61", i.ToString());
  74.                 i++;
  75.                 line = line.Replace("a62", i.ToString());
  76.                 i++;
  77.                 line = line.Replace("a63", i.ToString());
  78.                 i++;
  79.                 line = line.Replace("a71", i.ToString());
  80.                 i++;
  81.                 line = line.Replace("a72", i.ToString());
  82.                 i++;
  83.                 line = line.Replace("a73", i.ToString());
  84.                 i++;
  85.                 line = line.Replace("a81", i.ToString());
  86.                 i++;
  87.                 line = line.Replace("a82", i.ToString());
  88.                 i++;
  89.                 line = line.Replace("a83", i.ToString());
  90.                 i++;
  91.                 #endregion
  92.                 #region rowB
  93.                 line = line.Replace("b11", i.ToString());
  94.                 i++;
  95.                 line = line.Replace("b12", i.ToString());
  96.                 i++;
  97.                 line = line.Replace("b13", i.ToString());
  98.                 i++;
  99.                 line = line.Replace("b21", i.ToString());
  100.                 i++;
  101.                 line = line.Replace("b22", i.ToString());
  102.                 i++;
  103.                 line = line.Replace("b23", i.ToString());
  104.                 i++;
  105.                 line = line.Replace("b31", i.ToString());
  106.                 i++;
  107.                 line = line.Replace("b32", i.ToString());
  108.                 i++;
  109.                 line = line.Replace("b33", i.ToString());
  110.                 i++;
  111.                 line = line.Replace("b41", i.ToString());
  112.                 i++;
  113.                 line = line.Replace("b42", i.ToString());
  114.                 i++;
  115.                 line = line.Replace("b43", i.ToString());
  116.                 i++;
  117.                 line = line.Replace("b51", i.ToString());
  118.                 i++;
  119.                 line = line.Replace("b52", i.ToString());
  120.                 i++;
  121.                 line = line.Replace("b53", i.ToString());
  122.                 i++;
  123.                 line = line.Replace("b61", i.ToString());
  124.                 i++;
  125.                 line = line.Replace("b62", i.ToString());
  126.                 i++;
  127.                 line = line.Replace("b63", i.ToString());
  128.                 i++;
  129.                 line = line.Replace("b71", i.ToString());
  130.                 i++;
  131.                 line = line.Replace("b72", i.ToString());
  132.                 i++;
  133.                 line = line.Replace("b73", i.ToString());
  134.                 i++;
  135.                 line = line.Replace("b81", i.ToString());
  136.                 i++;
  137.                 line = line.Replace("b82", i.ToString());
  138.                 i++;
  139.                 line = line.Replace("b83", i.ToString());
  140.                 i++;
  141.                 #endregion
  142.                 #region rowC
  143.                 line = line.Replace("c11", i.ToString());
  144.                 i++;
  145.                 line = line.Replace("c12", i.ToString());
  146.                 i++;
  147.                 line = line.Replace("c13", i.ToString());
  148.                 i++;
  149.                 line = line.Replace("c21", i.ToString());
  150.                 i++;
  151.                 line = line.Replace("c22", i.ToString());
  152.                 i++;
  153.                 line = line.Replace("c23", i.ToString());
  154.                 i++;
  155.                 line = line.Replace("c31", i.ToString());
  156.                 i++;
  157.                 line = line.Replace("c32", i.ToString());
  158.                 i++;
  159.                 line = line.Replace("c33", i.ToString());
  160.                 i++;
  161.                 line = line.Replace("c41", i.ToString());
  162.                 i++;
  163.                 line = line.Replace("c42", i.ToString());
  164.                 i++;
  165.                 line = line.Replace("c43", i.ToString());
  166.                 i++;
  167.                 line = line.Replace("c51", i.ToString());
  168.                 i++;
  169.                 line = line.Replace("c52", i.ToString());
  170.                 i++;
  171.                 line = line.Replace("c53", i.ToString());
  172.                 i++;
  173.                 line = line.Replace("c61", i.ToString());
  174.                 i++;
  175.                 line = line.Replace("c62", i.ToString());
  176.                 i++;
  177.                 line = line.Replace("c63", i.ToString());
  178.                 i++;
  179.                 line = line.Replace("c71", i.ToString());
  180.                 i++;
  181.                 line = line.Replace("c72", i.ToString());
  182.                 i++;
  183.                 line = line.Replace("c73", i.ToString());
  184.                 i++;
  185.                 line = line.Replace("c81", i.ToString());
  186.                 i++;
  187.                 line = line.Replace("c82", i.ToString());
  188.                 i++;
  189.                 line = line.Replace("c83", i.ToString());
  190.                 i++;
  191.                 #endregion
  192.                 #region rowD
  193.                 line = line.Replace("d11", i.ToString());
  194.                 i++;
  195.                 line = line.Replace("d12", i.ToString());
  196.                 i++;
  197.                 line = line.Replace("d13", i.ToString());
  198.                 i++;
  199.                 line = line.Replace("d21", i.ToString());
  200.                 i++;
  201.                 line = line.Replace("d22", i.ToString());
  202.                 i++;
  203.                 line = line.Replace("d23", i.ToString());
  204.                 i++;
  205.                 line = line.Replace("d31", i.ToString());
  206.                 i++;
  207.                 line = line.Replace("d32", i.ToString());
  208.                 i++;
  209.                 line = line.Replace("d33", i.ToString());
  210.                 i++;
  211.                 line = line.Replace("d41", i.ToString());
  212.                 i++;
  213.                 line = line.Replace("d42", i.ToString());
  214.                 i++;
  215.                 line = line.Replace("d43", i.ToString());
  216.                 i++;
  217.                 line = line.Replace("d51", i.ToString());
  218.                 i++;
  219.                 line = line.Replace("d52", i.ToString());
  220.                 i++;
  221.                 line = line.Replace("d53", i.ToString());
  222.                 i++;
  223.                 line = line.Replace("d61", i.ToString());
  224.                 i++;
  225.                 line = line.Replace("d62", i.ToString());
  226.                 i++;
  227.                 line = line.Replace("d63", i.ToString());
  228.                 i++;
  229.                 line = line.Replace("d71", i.ToString());
  230.                 i++;
  231.                 line = line.Replace("d72", i.ToString());
  232.                 i++;
  233.                 line = line.Replace("d73", i.ToString());
  234.                 i++;
  235.                 line = line.Replace("d81", i.ToString());
  236.                 i++;
  237.                 line = line.Replace("d82", i.ToString());
  238.                 i++;
  239.                 line = line.Replace("d83", i.ToString());
  240.                 i++;
  241.                 #endregion
  242.                 #region rowE
  243.                 line = line.Replace("e11", i.ToString());
  244.                 i++;
  245.                 line = line.Replace("e12", i.ToString());
  246.                 i++;
  247.                 line = line.Replace("e13", i.ToString());
  248.                 i++;
  249.                 line = line.Replace("e21", i.ToString());
  250.                 i++;
  251.                 line = line.Replace("e22", i.ToString());
  252.                 i++;
  253.                 line = line.Replace("e23", i.ToString());
  254.                 i++;
  255.                 line = line.Replace("e31", i.ToString());
  256.                 i++;
  257.                 line = line.Replace("e32", i.ToString());
  258.                 i++;
  259.                 line = line.Replace("e33", i.ToString());
  260.                 i++;
  261.                 line = line.Replace("e41", i.ToString());
  262.                 i++;
  263.                 line = line.Replace("e42", i.ToString());
  264.                 i++;
  265.                 line = line.Replace("e43", i.ToString());
  266.                 i++;
  267.                 line = line.Replace("e51", i.ToString());
  268.                 i++;
  269.                 line = line.Replace("e52", i.ToString());
  270.                 i++;
  271.                 line = line.Replace("e53", i.ToString());
  272.                 i++;
  273.                 line = line.Replace("e61", i.ToString());
  274.                 i++;
  275.                 line = line.Replace("e62", i.ToString());
  276.                 i++;
  277.                 line = line.Replace("e63", i.ToString());
  278.                 i++;
  279.                 line = line.Replace("e71", i.ToString());
  280.                 i++;
  281.                 line = line.Replace("e72", i.ToString());
  282.                 i++;
  283.                 line = line.Replace("e73", i.ToString());
  284.                 i++;
  285.                 line = line.Replace("e81", i.ToString());
  286.                 i++;
  287.                 line = line.Replace("e82", i.ToString());
  288.                 i++;
  289.                 line = line.Replace("e83", i.ToString());
  290.                 i++;
  291.                 #endregion
  292.                 #region rowF
  293.                 line = line.Replace("f11", i.ToString());
  294.                 i++;
  295.                 line = line.Replace("f12", i.ToString());
  296.                 i++;
  297.                 line = line.Replace("f13", i.ToString());
  298.                 i++;
  299.                 line = line.Replace("f21", i.ToString());
  300.                 i++;
  301.                 line = line.Replace("f22", i.ToString());
  302.                 i++;
  303.                 line = line.Replace("f23", i.ToString());
  304.                 i++;
  305.                 line = line.Replace("f31", i.ToString());
  306.                 i++;
  307.                 line = line.Replace("f32", i.ToString());
  308.                 i++;
  309.                 line = line.Replace("f33", i.ToString());
  310.                 i++;
  311.                 line = line.Replace("f41", i.ToString());
  312.                 i++;
  313.                 line = line.Replace("f42", i.ToString());
  314.                 i++;
  315.                 line = line.Replace("f43", i.ToString());
  316.                 i++;
  317.                 line = line.Replace("f51", i.ToString());
  318.                 i++;
  319.                 line = line.Replace("f52", i.ToString());
  320.                 i++;
  321.                 line = line.Replace("f53", i.ToString());
  322.                 i++;
  323.                 line = line.Replace("f61", i.ToString());
  324.                 i++;
  325.                 line = line.Replace("f62", i.ToString());
  326.                 i++;
  327.                 line = line.Replace("f63", i.ToString());
  328.                 i++;
  329.                 line = line.Replace("f71", i.ToString());
  330.                 i++;
  331.                 line = line.Replace("f72", i.ToString());
  332.                 i++;
  333.                 line = line.Replace("f73", i.ToString());
  334.                 i++;
  335.                 line = line.Replace("f81", i.ToString());
  336.                 i++;
  337.                 line = line.Replace("f82", i.ToString());
  338.                 i++;
  339.                 line = line.Replace("f83", i.ToString());
  340.                 i++;
  341.                 #endregion
  342.                 #region rowG
  343.                 line = line.Replace("g11", i.ToString());
  344.                 i++;
  345.                 line = line.Replace("g12", i.ToString());
  346.                 i++;
  347.                 line = line.Replace("g13", i.ToString());
  348.                 i++;
  349.                 line = line.Replace("g21", i.ToString());
  350.                 i++;
  351.                 line = line.Replace("g22", i.ToString());
  352.                 i++;
  353.                 line = line.Replace("g23", i.ToString());
  354.                 i++;
  355.                 line = line.Replace("g31", i.ToString());
  356.                 i++;
  357.                 line = line.Replace("g32", i.ToString());
  358.                 i++;
  359.                 line = line.Replace("g33", i.ToString());
  360.                 i++;
  361.                 line = line.Replace("g41", i.ToString());
  362.                 i++;
  363.                 line = line.Replace("g42", i.ToString());
  364.                 i++;
  365.                 line = line.Replace("g43", i.ToString());
  366.                 i++;
  367.                 line = line.Replace("g51", i.ToString());
  368.                 i++;
  369.                 line = line.Replace("g52", i.ToString());
  370.                 i++;
  371.                 line = line.Replace("g53", i.ToString());
  372.                 i++;
  373.                 line = line.Replace("g61", i.ToString());
  374.                 i++;
  375.                 line = line.Replace("g62", i.ToString());
  376.                 i++;
  377.                 line = line.Replace("g63", i.ToString());
  378.                 i++;
  379.                 line = line.Replace("g71", i.ToString());
  380.                 i++;
  381.                 line = line.Replace("g72", i.ToString());
  382.                 i++;
  383.                 line = line.Replace("g73", i.ToString());
  384.                 i++;
  385.                 line = line.Replace("g81", i.ToString());
  386.                 i++;
  387.                 line = line.Replace("g82", i.ToString());
  388.                 i++;
  389.                 line = line.Replace("g83", i.ToString());
  390.                 i++;
  391.                 #endregion
  392.                 #region rowH
  393.                 line = line.Replace("h11", i.ToString());
  394.                 i++;
  395.                 line = line.Replace("h12", i.ToString());
  396.                 i++;
  397.                 line = line.Replace("h13", i.ToString());
  398.                 i++;
  399.                 line = line.Replace("h21", i.ToString());
  400.                 i++;
  401.                 line = line.Replace("h22", i.ToString());
  402.                 i++;
  403.                 line = line.Replace("h23", i.ToString());
  404.                 i++;
  405.                 line = line.Replace("h31", i.ToString());
  406.                 i++;
  407.                 line = line.Replace("h32", i.ToString());
  408.                 i++;
  409.                 line = line.Replace("h33", i.ToString());
  410.                 i++;
  411.                 line = line.Replace("h41", i.ToString());
  412.                 i++;
  413.                 line = line.Replace("h42", i.ToString());
  414.                 i++;
  415.                 line = line.Replace("h43", i.ToString());
  416.                 i++;
  417.                 line = line.Replace("h51", i.ToString());
  418.                 i++;
  419.                 line = line.Replace("h52", i.ToString());
  420.                 i++;
  421.                 line = line.Replace("h53", i.ToString());
  422.                 i++;
  423.                 line = line.Replace("h61", i.ToString());
  424.                 i++;
  425.                 line = line.Replace("h62", i.ToString());
  426.                 i++;
  427.                 line = line.Replace("h63", i.ToString());
  428.                 i++;
  429.                 line = line.Replace("h71", i.ToString());
  430.                 i++;
  431.                 line = line.Replace("h72", i.ToString());
  432.                 i++;
  433.                 line = line.Replace("h73", i.ToString());
  434.                 i++;
  435.                 line = line.Replace("h81", i.ToString());
  436.                 i++;
  437.                 line = line.Replace("h82", i.ToString());
  438.                 i++;
  439.                 line = line.Replace("h83", i.ToString());
  440.                 i++;
  441.                 #endregion
  442.                 Console.WriteLine(line);
  443.                 using (System.IO.StreamWriter newfile = new StreamWriter(@"C:\\Users\\Kokusz\\Documents\\test_replace_output.txt", true))
  444.                 {
  445.                    
  446.                     newfile.WriteLine(line);
  447.                 }
  448.             }
  449.         }
  450.  
  451.         public static void onlyTents(string path)
  452.         {
  453.             string[] words;
  454.             string line;
  455.             StreamReader file = new StreamReader(@path);
  456.             while ((line = file.ReadLine()) != null)
  457.             {
  458.                 words = line.Split();
  459.                 int count = 0;
  460.                 for (int i = 2; i < words.Length; i=i+3)
  461.                 {
  462.                     if(words[i][0] != '-') {
  463.                         count = (i+1)/3;
  464.                         if (count <= 8)
  465.                             Console.Write("a");
  466.                         else if (count <= 16)
  467.                             Console.Write("b");
  468.                         else if (count <= 24)
  469.                             Console.Write("c");
  470.                         else if (count <= 32)
  471.                             Console.Write("d");
  472.                         else if (count <= 40)
  473.                             Console.Write("e");
  474.                         else if (count <= 48)
  475.                             Console.Write("f");
  476.                         else if (count <= 56)
  477.                             Console.Write("g");
  478.                         else if (count <= 64)
  479.                             Console.Write("h");
  480.                         Console.Write((count-1)%8+1+"\n");
  481.                     }
  482.                 }
  483.             }
  484.         }
  485.  
  486.         public static void megoldas(int db, string a, string b, string c, string d, string e, string f, string g, string h)
  487.         {
  488.             alsoKorlat(db, a, b, c, d, e, f, g, h);
  489.             felsoKorlat(db, a, b, c, d, e, f, g, h);
  490.         }
  491.  
  492.         public static void alsoKorlat(int db, string a, string b, string c, string d, string e, string f, string g, string h)
  493.         {
  494.             //Console.WriteLine("Also korlat");
  495.             for (int i = 0; i < Math.Pow(2, 8); i++)
  496.             {
  497.                 string sor = "";
  498.                 int count = 0;
  499.  
  500.  
  501.                 int number = i;
  502.  
  503.                 if (number / 128 == 1)
  504.                 {
  505.                     sor = sor + a + " ";
  506.                     count++;
  507.                     number -= 128;
  508.                 }
  509.                 else
  510.                     sor = sor + "-" + a + " ";
  511.  
  512.                 if (number / 64 == 1)
  513.                 {
  514.                     sor = sor + b + " ";
  515.                     count++;
  516.                     number -= 64;
  517.                 }
  518.                 else
  519.                     sor = sor + "-" + b + " ";
  520.  
  521.                 if (number / 32 == 1)
  522.                 {
  523.                     sor = sor + c + " ";
  524.                     count++;
  525.                     number -= 32;
  526.                 }
  527.                 else
  528.                     sor = sor + "-" + c + " ";
  529.  
  530.  
  531.                 if (number / 16 == 1)
  532.                 {
  533.                     sor = sor + d + " ";
  534.                     count++;
  535.                     number -= 16;
  536.                 }
  537.                 else
  538.                     sor = sor + "-" + d + " ";
  539.  
  540.                 if (number / 8 == 1)
  541.                 {
  542.                     sor = sor + e + " ";
  543.                     count++;
  544.                     number -= 8;
  545.                 }
  546.                 else
  547.                     sor = sor + "-" + e + " ";
  548.  
  549.                 if (number / 4 == 1)
  550.                 {
  551.                     sor = sor + f + " ";
  552.                     count++;
  553.                     number -= 4;
  554.                 }
  555.                 else
  556.                     sor = sor + "-" + f + " ";
  557.  
  558.                 if (number / 2 == 1)
  559.                 {
  560.                     sor = sor + g + " ";
  561.                     count++;
  562.                     number -= 2;
  563.                 }
  564.                 else
  565.                     sor = sor + "-" + g + " ";
  566.  
  567.                 if (number / 1 == 1)
  568.                 {
  569.                     count++;
  570.                     sor = sor + h + " 0\n";
  571.                 }
  572.                 else
  573.                     sor = sor + "-" + h + " 0\n";
  574.  
  575.                 if (count == db)
  576.                     Console.Write(sor);
  577.             }
  578.             String xy;
  579.         }
  580.  
  581.         public static void felsoKorlat(int db, string a, string b, string c, string d, string e, string f, string g, string h)
  582.         {
  583.  
  584.             for (int j = 0; j < 8; j++)
  585.             {
  586.                 if (j != db)
  587.                 {
  588.  
  589.                     //Console.WriteLine("\nFelso korlat");
  590.                     for (int i = 0; i < Math.Pow(2, 8); i++)
  591.                     {
  592.  
  593.                         string sor = "";
  594.                         int count = 0;
  595.  
  596.  
  597.                         int number = i;
  598.  
  599.                         if (number / 128 == 1)
  600.                         {
  601.                             sor = sor + "-" + a + " ";
  602.                             count++;
  603.                             number -= 128;
  604.                         }
  605.                         else
  606.                             sor = sor + a + " ";
  607.  
  608.                         if (number / 64 == 1)
  609.                         {
  610.                             sor = sor + "-" + b + " ";
  611.                             count++;
  612.                             number -= 64;
  613.                         }
  614.                         else
  615.                             sor = sor + b + " ";
  616.  
  617.                         if (number / 32 == 1)
  618.                         {
  619.                             sor = sor + "-" + c + " ";
  620.                             count++;
  621.                             number -= 32;
  622.                         }
  623.                         else
  624.                             sor = sor + c + " ";
  625.  
  626.  
  627.                         if (number / 16 == 1)
  628.                         {
  629.                             sor = sor + "-" + d + " ";
  630.                             count++;
  631.                             number -= 16;
  632.                         }
  633.                         else
  634.                             sor = sor + d + " ";
  635.  
  636.                         if (number / 8 == 1)
  637.                         {
  638.                             sor = sor + "-" + e + " ";
  639.                             count++;
  640.                             number -= 8;
  641.                         }
  642.                         else
  643.                             sor = sor + e + " ";
  644.  
  645.                         if (number / 4 == 1)
  646.                         {
  647.                             sor = sor + "-" + f + " ";
  648.                             count++;
  649.                             number -= 4;
  650.                         }
  651.                         else
  652.                             sor = sor + f + " ";
  653.  
  654.                         if (number / 2 == 1)
  655.                         {
  656.                             sor = sor + "-" + g + " ";
  657.                             count++;
  658.                             number -= 2;
  659.                         }
  660.                         else
  661.                             sor = sor + g + " ";
  662.  
  663.                         if (number / 1 == 1)
  664.                         {
  665.                             count++;
  666.                             sor = sor + "-" + h + " 0\n";
  667.                         }
  668.                         else
  669.                             sor = sor + h + " 0\n";
  670.  
  671.                         if (count == j)
  672.                             Console.Write(sor);
  673.                     }
  674.  
  675.                 }
  676.             }
  677.         }
  678.     }
  679. }
Add Comment
Please, Sign In to add comment