2021. január 19., kedd

2021.01.19. A lista adatszerkezet

MINTAPROGRAM LISTA HASZNÁLATÁRA

using System;

using System.Collections.Generic;

using System.Linq;
using System.Text;

namespace lista
{ //A lista egy dinamikus tömb, ami legfőképp abban nyilvánul meg, hogy nem kell megmondani előre, hány eleme legyen.
    class Program
    {
        static Random rnd = new Random();
        static List<int> veletlenLista = new List<int>(); //nem kell megadni a hosszát
        //Emlékeztetésképpen - ha tömb lenne, így nézne ki (ezt most nem használjuk semmire):
        //static int[] veletlenTomb = new int[90];  //itt el kéne dönteni, hány elem legyen
        static List<int> jegyekLista = new List<int>();

        static void veletlen()
        {
            for (int i = 0; i < 90; i++)
            {
                veletlenLista.Add(rnd.Next(-20, 41));  //.Add kell, ha hozzá akarunk tenni egy elemet a lista végére (első esetben is)               
            }
        }

        static void kiiras()
        {
            for (int i = 0; i < veletlenLista.Count; i++) //.Count-ig megyünk, ha végig akarunk menni
            {
                Console.WriteLine(veletlenLista[i]); //a lista i-edik elemére ugyanúgy hivatkozunk, mint a tömbnél
            }

        }

        static void pozitivNegativ()
        {
            int poz = 0;
            int neg = 0;
            foreach (int x in veletlenLista) //a foreach ugyanúgy "magától" végigmegy
            {
                if (x < 0) neg++;
                if (x > 0) poz++;
            }

            if (neg > poz)
            {
                Console.WriteLine("Több a negatív szám.");
            }
            else
            {
                if (neg < poz)
                {
                    Console.WriteLine("Több a pozitív szám.");
                }
                else Console.WriteLine("Egyenlő a pozitív és a negatív szám.");
            }
        }

        static void adatbekeres()
        {
            for (int i = 0; i < 8; i++) //úgy döntöttünk itt és most, hogy 8 jegyet kérünk be
            {
                Console.Write("Kérem írja be a(z) {0}. tanuló jegyét:", i + 1);
                jegyekLista.Add(Convert.ToInt32(Console.ReadLine()));
            }
        }

        static void atlagSzamitas()
        {
            int sum = 0;
            for (int i = 0; i < jegyekLista.Count; i++)
            {
                sum += jegyekLista[i];
            }

            double atlag = (double)sum / jegyekLista.Count;
            Console.WriteLine("Átlaguk: {0}", atlag);
        }
        static void Main(string[] args)
        {
            Console.WriteLine("Adatfeltöltés");
            veletlen();
            Console.WriteLine("Kiírás");
            kiiras();
            Console.ReadLine();
            Console.WriteLine("Pozitív-negatív számlálás");
            pozitivNegativ();
            Console.ReadLine();
            Console.WriteLine("Feltöltés billentyűzetről");
            adatbekeres();
            Console.ReadLine();
            Console.WriteLine("Átlagszámítás");
            atlagSzamitas();
            Console.ReadLine();
        }
    }
}

Nincsenek megjegyzések:

Megjegyzés küldése