Metts

Emelt Informatika érettségi 2012 Május - Törtek C#

May 16th, 2012
943
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Text.RegularExpressions;
  6. using System.IO;
  7. namespace tort
  8. {
  9.     class Program
  10.     {
  11.  
  12.         static int lnko(int a, int b) //2. feladat
  13.         {
  14.             int ret = 0;
  15.             if (a == b)
  16.                 ret = a;
  17.  
  18.             if (a < b)
  19.                 ret = lnko(a, b-a);
  20.  
  21.             if (a > b)
  22.                 ret = lnko(a - b, b);
  23.  
  24.             return ret;
  25.         }
  26.  
  27.         static int lkkt(int a, int b) // 5. feladat
  28.         {
  29.             int ret = (a * b) / lnko(a, b);
  30.             return ret;
  31.         }
  32.  
  33.         static void szorzas(int szamlalo, int nevezo, int szamlalo2, int nevezo2)
  34.         {
  35.             int felso = szamlalo * szamlalo2;
  36.             int also = nevezo * nevezo2;
  37.             Console.WriteLine("{0}/{1} * {2}/{3} = {4}/{5} = {6}/{7}", szamlalo, nevezo, szamlalo2, nevezo2, felso, also,felso / lnko(felso,also),also / lnko(felso,also));
  38.         }
  39.  
  40.         static void osszeadas(int szamlalo, int nevezo, int szamlalo2, int nevezo2)
  41.         {
  42.             int a_3 = szamlalo * nevezo2;
  43.             int a_4 = nevezo * szamlalo2;
  44.             int a_5 = a_3 + a_4;
  45.             int szamlalo_3 = lkkt(szamlalo, nevezo);
  46.             Console.Write("{0}/{1} + {2}/{3} = ", szamlalo, nevezo, szamlalo2, nevezo2);
  47.             Console.Write("{0}/{1} + {2}/{3} = ", a_3, szamlalo_3, a_4, szamlalo_3);
  48.             Console.Write("{0}/{1} = ", a_5, szamlalo_3);
  49.             Console.Write("{0}/{1}", a_5 / lnko(a_5, szamlalo_3), (szamlalo_3 / lnko(a_5, a_4)));
  50.         }
  51.  
  52.         struct szamok
  53.         {
  54.             public int szamlalo1, nevezo1, szamlalo2, nevezo2;
  55.             public szamok(int a, int b, int c, int d)
  56.             {
  57.                 szamlalo1 = a;
  58.                 nevezo1 = b;
  59.                 szamlalo2 = c;
  60.                 nevezo2 = d;
  61.             }
  62.  
  63.             public string osszead()
  64.             {
  65.                 string s;
  66.                 int a_3 = szamlalo1 * nevezo2;
  67.                 int a_4 = nevezo1 * szamlalo2;
  68.                 int a_5 = a_3 + a_4;
  69.                 int szamlalo_3 = lkkt(szamlalo1, nevezo1);
  70.                 s = szamlalo1 + "/" + nevezo1 + " + " + szamlalo2 + "/" + nevezo2 + " = " + a_3 + "/" + a_4 + " + " + a_4 + "/" + szamlalo_3 + " = " + a_5 + "/" + szamlalo_3 + " = " + a_5 / lnko(a_5, szamlalo_3) + "/" + (szamlalo_3 / lnko(a_5, a_4));
  71.                 return s;
  72.             }
  73.  
  74.             public string szorzas()
  75.             {
  76.                 string s;
  77.                 int felso = szamlalo1 * szamlalo2;
  78.                 int also = nevezo1 * nevezo2;
  79.                 s = szamlalo1 + "/"+nevezo1+" * "+ szamlalo2+"/"+nevezo2+" = "+felso+"/"+also+" = "+felso/lnko(felso,also)+"/"+also/lnko(felso,also);
  80.                 return s;
  81.             }
  82.         }
  83.  
  84.         static void Main(string[] args)
  85.         {
  86.             // Coded by Metts
  87.             // metts.blog.hu
  88.             // http://metts.blog.hu/2012/05/15/emelt_informatika_erettsegi_2012_majus_tortek
  89.  
  90.             int szamlalo = 0;
  91.             int nevezo = 0;
  92.  
  93.             #region 1. feladat
  94.                 Console.WriteLine("1. Feladat Adja meg a számlálót: ");
  95.                 szamlalo = int.Parse(Console.ReadLine());
  96.                 Console.WriteLine("1. feladat Adja meg a nevezőt: ");
  97.                 nevezo = int.Parse(Console.ReadLine());
  98.                 decimal osztva = (decimal)szamlalo / nevezo;
  99.                 string result = osztva.ToString();
  100.                 Regex regex = new Regex("^[0-9]+$");
  101.                 Console.WriteLine("A szám: ");
  102.                 if (regex.IsMatch(result))
  103.                     Console.WriteLine(int.Parse(result));
  104.                 else
  105.                     Console.WriteLine("Nem egész");
  106.  
  107.             #endregion
  108.  
  109.             #region 3. feladat
  110.                 Console.WriteLine("3. feladat egyszerűítés");
  111.                 int lkko = lnko(szamlalo, nevezo);
  112.                 Console.WriteLine("{0}/{1} = {2}/{3}", szamlalo, nevezo, szamlalo / lkko, nevezo / lkko);
  113.             #endregion
  114.  
  115.             #region 4.Feladat
  116.                 Console.WriteLine("4. feladat szorzás");
  117.                 int szamlalo2 = 0;
  118.                 int nevezo2 = 0;
  119.                 Console.WriteLine("4. Feladat Adja meg a számlálót: ");
  120.                 szamlalo2 = int.Parse(Console.ReadLine());
  121.                 Console.WriteLine("4. feladat Adja meg a nevezőt: ");
  122.                 nevezo2 = int.Parse(Console.ReadLine());
  123.                 szorzas(szamlalo, nevezo, szamlalo2, nevezo2);
  124.             #endregion
  125.  
  126.             #region 6. feladat
  127.             Console.WriteLine("6. Feladat");
  128.             osszeadas(szamlalo, nevezo, 8, 3);
  129.             #endregion
  130.            
  131.             #region 7. feladat
  132.             //NEM VOLT ADAT.txt-m
  133.             string[] array = new string[2];
  134.             array[0] = "24 32 8 3 +";
  135.             array[1] = "20 10 3 9 *";
  136.  
  137.             string[] split;
  138.             szamok[] szam = new szamok[10];
  139.             for (int i = 0; i < array.Count(); i++)
  140.             {
  141.                 split = array[i].Split(' ');
  142.                 szam[i] = new szamok(int.Parse(split[0]), int.Parse(split[1]), int.Parse(split[2]), int.Parse(split[3]));
  143.  
  144.             }
  145.  
  146.             using (StreamWriter sw = new StreamWriter("eredmeny.txt"))
  147.             {
  148.                 for (int i = 0; i < array.Count(); i++)
  149.                 {
  150.                     sw.WriteLine(szam[i].osszead());
  151.                     sw.WriteLine(szam[i].szorzas());
  152.                 }
  153.             }
  154.            
  155.  
  156.             #endregion
  157.             Console.ReadLine();
  158.         }
  159.     }
  160. }
Advertisement
Add Comment
Please, Sign In to add comment