Advertisement
tothl

Tombok

Jun 28th, 2017
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 6.49 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace Tomb_menu
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             int szam = 0;
  14.             int menu=0;
  15.             int[] tomb = new int[10];
  16.  
  17.             do
  18.             {
  19.                 Console.Clear();
  20.  
  21.                 Console.Write("A tömb elemei: ");
  22.                 if (szam == 0)
  23.                 {
  24.                     Console.Write("A tömb még üres!\n\n");
  25.                     Console.Write("A tömb eleminek összege: A tömb még üres!\n\n");
  26.                     Console.Write("A tömb elemeinek átlaga: A tömb még üres!\n\n");
  27.                 }
  28.                 else
  29.                 {
  30.                     kiir(tomb, szam);
  31.                     Console.Write("A tömb eleminek összege: {0}\n\n", osszeg(tomb, szam));
  32.                     Console.Write("A tömb elemeinek átlaga: {0}\n\n", atlag(tomb, szam));
  33.  
  34.                 }
  35.  
  36.                 Console.WriteLine("1. Tömb feltöltése véletlen számokkal");
  37.                 Console.WriteLine("2. Tömb feltöltése manuálisan");
  38.                 Console.WriteLine("3. A tömb nullázása");
  39.                 Console.WriteLine("4. A tömb rendezése");
  40.                 Console.WriteLine("5. Érték keresése a tömbben");
  41.                 Console.WriteLine("6. Kilépés");
  42.                 Console.Write("\nVálassz egy menüpontot: ");
  43.                 try
  44.                 {
  45.                     menu = int.Parse(Console.ReadLine());
  46.                 }
  47.                 catch
  48.                 {
  49.                     Console.WriteLine("Nem létezik ilyen menü, üss egy ENTERT a folytatáshoz!");
  50.                     Console.ReadLine();
  51.                     continue;
  52.                 }
  53.                 switch (menu)
  54.                 {
  55.                     case 1: szam= feltoltes_veletlen(tomb,szam); break;
  56.                     case 2: szam = feltoltes(tomb); break;
  57.                     case 3: nullazas(tomb, ref szam); break;
  58.                     case 4: rendezes(tomb, szam); break;
  59.                     case 5: kereses_ui(tomb); break;
  60.                     case 6: break;
  61.                     default: Console.WriteLine("Nem létezik ilyen menü, üss egy ENTERT a folytatáshoz!");
  62.                         Console.ReadLine();
  63.                         break;
  64.                 }
  65.             } while (menu != 6);
  66.            
  67.         }
  68.  
  69.         static void kereses_ui(int[] kt)
  70.         {
  71.             Console.Clear();
  72.             Console.Write("Melyik értéket keressem meg a tömbben: ");
  73.            
  74.             int be = int.Parse(Console.ReadLine());
  75.            
  76.             int k = kereses(kt,be);
  77.  
  78.             if (k == -1) Console.WriteLine("Nincs ilyen elem a tömbben!");
  79.             else Console.WriteLine("Az érték a tömb {0}. indexén található!\n\n", k);
  80.  
  81.             Console.WriteLine("Üss egy ENTERT a folytatáshoz!");
  82.             Console.ReadLine();
  83.         }
  84.        
  85.         static int kereses(int[] t, int k)
  86.         {
  87.             for (int i = 0; i < t.Length; i++)
  88.                 if (t[i] == k) return i;
  89.            
  90.             return -1;
  91.         }
  92.  
  93.         static void nullazas(int[] t, ref int index)
  94.         {
  95.             for (int i = 0; i < t.Length; i++)
  96.                 t[i] = 0;
  97.  
  98.             index = 0;        
  99.         }
  100.  
  101.         static double osszeg(int[] t,int elem)
  102.         {
  103.             int szum =0;
  104.             for (int i=0;i<elem;i++)
  105.                 szum=szum+t[i];
  106.  
  107.             return szum;              
  108.         }
  109.  
  110.         static double atlag(int[] t, int elem)
  111.         {
  112.            
  113.             return osszeg(t,elem)/elem;
  114.         }
  115.  
  116.         static int feltoltes(int[] t)
  117.         {
  118.             int temp = 0;
  119.             int index = 0;
  120.             bool vane = false;
  121.             Console.Clear();
  122.             Console.WriteLine("Kérem a tömb elemeit 0 végjelig");
  123.             do
  124.             {
  125.                 vane = false;
  126.                 Console.Write("Kérem a tömb {0}. elemét: ", index);
  127.  
  128.                 try
  129.                 {
  130.                     temp = int.Parse(Console.ReadLine());
  131.                 }
  132.                 catch
  133.                 {
  134.                     Console.WriteLine("Nem megfelelő adat!");
  135.                     continue;
  136.                 }
  137.                
  138.                
  139.                 if (temp == 0) return index;
  140.                 else
  141.                 {
  142.                     for (int i = 0; i <= index; i++)
  143.                         if (t[i] == temp) vane = true;
  144.  
  145.                     if (vane) Console.WriteLine("Ilyen szám már található a tömbben!");
  146.                     else
  147.                     {
  148.                         if ((temp < 1) || (temp > 99)) Console.WriteLine("A szám nem 1 és 99 közés esik!");
  149.                         else
  150.                         {
  151.                             t[index] = temp;
  152.                             index++;
  153.                         }
  154.                     }
  155.                 }
  156.             } while (index<t.Length);
  157.  
  158.             return index;
  159.         }
  160.  
  161.         static void rendezes(int[] tomb, int hatar)
  162.         {
  163.             int max = 0;
  164.  
  165.             for (int i = 0; i < hatar - 1; i++)
  166.             {
  167.                 max = i;
  168.                 for (int j = i + 1; j < hatar; j++)
  169.                     if (tomb[j] > tomb[max]) max = j;
  170.  
  171.                 Csere(ref tomb[i], ref tomb[max]);
  172.             }
  173.         }
  174.  
  175.         static void Csere(ref int a, ref int b)
  176.         {
  177.             int temp = a;
  178.             a = b;
  179.             b = temp;
  180.         }
  181.  
  182.         static Random r = new Random();
  183.  
  184.         static int feltoltes_veletlen(int[] t, int also)
  185.         {
  186.             int i = also;
  187.             int veletlen = 0;
  188.             bool vane = false;
  189.             while (i < t.Length)
  190.             {                          
  191.                 veletlen = r.Next(1, 100);
  192.                 vane = false;
  193.                
  194.                 for (int j = 0; j < i; j++)
  195.                     if (t[j] == veletlen) vane = true;
  196.  
  197.                 if (vane == false)
  198.                 {
  199.                     t[i] = veletlen;
  200.                     i++;
  201.                 }
  202.             }
  203.  
  204.             return t.Length;
  205.         }
  206.  
  207.         static void kiir(int[] t, int felso)
  208.         {
  209.             for (int i = 0; i < felso; i++)
  210.                 Console.Write("{0} ", t[i]);
  211.  
  212.             Console.WriteLine("\n");
  213.         }
  214.  
  215.  
  216.     }
  217. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement