Advertisement
BloodMoonYTC

Maxkivalasztas

Nov 5th, 2021
1,255
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.58 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 feladat
  8. {
  9.     class Program
  10.     {
  11.         static void Beolvasás(out int N, string[] X)
  12.         {
  13.             //Elemszám beolvasása
  14.             //A felhasználónak szánt tájékoztató üzenetek az Error csatotnára írandók! A standard output így nézne ki: Console.WriteLine("Hány eleme van a tömbnek?");
  15.             //Például a kérdések:
  16.             Console.Error.WriteLine("Hány tanulóról van szó?");
  17.             N = Convert.ToInt32(Console.ReadLine());
  18.             //A bemenetet nem ellenőrizzük sem szintaktikai, sem szemantikai szempontból. (1<=N<=MaxN)
  19.             for (int i = 0; i < N; i++)//Egy számlálós ciklussal végig megyünk a tömb elemein
  20.             {
  21.                 Console.Error.WriteLine("Írd be a(z) " + (i + 1) + ". tanuló nevét:");
  22.                 X[i]=Console.ReadLine();//Nincs konverzió, mert szöveg típusú a tömb
  23.             }
  24.         }
  25.  
  26.         static void Minimum(int N, string[] X, out int Min, out string Név)
  27.         {
  28.             Min = 1;//C# 0-tól, az ember 1-től indexel
  29.             Név = X[0];
  30.             for (int i = 1; i < N; i++)
  31.             {
  32.                 if (Név.CompareTo(X[i])>0)//Stringnél nincs < operátor. Jelentése: Ha a Név az x[i] után van, azaz Név > X[i]
  33.                 {
  34.                     Min = i+1;//C# 0-tól, az ember 1-től indexel
  35.                     Név = X[i];
  36.                 }
  37.             }
  38.         }
  39.  
  40.         static void Kiírás(string Név, int Min)
  41.         {
  42.             //A kimenetet kísérő szövegek is az Error csatornára irandók!
  43.             Console.Error.Write("A legelső tanuló és sorszáma: ");
  44.             Console.WriteLine(Név+" "+Min);//lényeg: kimenet, csak ezt írjuk ki Console.WriteLine()-nal
  45.         }
  46.  
  47.         static void Main(string[] args)
  48.         {
  49.             //F11. A névsorban legelső tanuló
  50.             //Maximális elemszám
  51.             const int MaxN = 100;
  52.             //A tömb elemszámának deklarálása
  53.             int N;
  54.             //Kimeneti adatok deklarálása
  55.             string Név;
  56.             int Min;
  57.             //MaxN elemszámú tömb deklarálása
  58.             string[] X = new string[MaxN];
  59.             //Beolvasás
  60.             Beolvasás(out N, X);//out N: N kimeneti paraméter, tömbnél nincs külön jelölése
  61.             //Lényegi megoldás
  62.             Minimum(N, X, out Min, out Név);
  63.             //Kiírás
  64.             Kiírás(Név,Min);
  65.         }
  66.     }
  67. }
  68.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement