2017. február 16., csütörtök

2017.02.16. Tömbkezelés gyakorlása

Új anyag:  sleep, --    



 //1. feladat:
        //Tölts föl 1 és 1000 közötti véletlen számokkal egy 3 elemű tömböt (tömb neve: veletlen).
        //Ha a tömb első eleme 500-nál nagyobb, írd ki a képernyőre a következőt: Ez az átlagnál nagyobb szám. Egyébként pedig írd ki a képernyőre: Ez az átlagnál kisebb szám.
        //2. feladat:
        //Egy eredmeny nevű tömbben tárold le a következő műveletek kiszámolt eredményeit:
        //- 346-hoz adj hozzá 45-öt,
        //- 32 a tizediken,
        //- 100 osztva 12-vel művelet maradéka,
        //- 400-ban az 5,
        //- 93 harmada.
        //A kiírások között legyen egy másodperc késleltetés: Thread.Sleep(1000). Ennek működéséhez írd be a programablak tetején a többi using után (egyszer): using System.Threading;
        //3. feladat:
        //Egy honapok nevű tömbben tárold le a nyári hónapok neveit!
        //- Írd át mindegyik tömbben tárolt nevet a nagybetűs megfelelőjére (ott a helyén, a tömbben, új utasításként, függvénnyel)!
        //- Írd ki őket a képernyőre egy utasítással, egy sorba, mindet 12 hossz szélességen, a szavak között legyen pontosvessző!
        //4. feladat:
        //Kérd be egy pont térbeli koordinátáit (x,y,z), és ezeket tárold egy koordinatak nevű tömbben.
        //5. feladat:
        //- Hozz létre egy új tömböt koord néven, amelynek elemeit töltsd fel az eredeti koordináták eggyel csökkentett értékével (-- operátorral).

        //- Írasd ki az új értékeket a képernyőre!  Ehhez használd a Console.SetCursorPosition metódust!

Marci megoldása:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;

namespace ConsoleApplication1
{
       class Program
       {

        static void Main(string[] args)
        {
            //1. feladat:
            //Tölts föl 1 és 1000 közötti véletlen számokkal egy 3 elemű tömböt (tömb neve: veletlen).
            //Ha a tömb első eleme 500-nál nagyobb, írd ki a képernyőre a következőt: Ez az átlagnál nagyobb szám.
            //Egyébként pedig írd ki a képernyőre: Ez az átlagnál kisebb szám.

            Random rnd = new Random();
            int[] veletlen = new int[3];
            veletlen[0] = rnd.Next(1, 1001);
            veletlen[1] = rnd.Next(1, 1001);
            veletlen[2] = rnd.Next(1, 1001);

            if (veletlen[0] > 500)
            {
                Console.WriteLine("Ez az átlagnál nagyobb szám");
            }
            else
            {
                Console.WriteLine("Ez az átlagnál kisebb szám");
            }

            //2. feladat:
            //Egy eredmeny nevű tömbben tárold le a következő műveletek kiszámolt eredményeit:
            //A kiírások között legyen egy másodperc késleltetés: Thread.Sleep(1000).
            //Ennek működéséhez írd be a programablak tetején a többi using után (egyszer): using System.Threading;
            double[] eredmeny = new double[5];
            //- 346-hoz adj hozzá 45-öt,
            eredmeny[0] = 346 + 45;
            Thread.Sleep(1000); //a paraméter értékétől függ, mennyit áll a program
            //- 32 a tizediken,
            eredmeny[1] = Math.Pow(32, 10);
            Thread.Sleep(1000);
            //- 100 osztva 12-vel művelet maradéka,
            eredmeny[2] = 100 % 12;
            Thread.Sleep(1000);
            //- 400-ban az 5,
            eredmeny[3] = 400 / 5;
            Thread.Sleep(1000);
            //- 93 harmada.
            eredmeny[4] = 93 / 3;
            Thread.Sleep(1000);

            //3. feladat:
            //Egy honapok nevű tömbben tárold le a nyári hónapok neveit!
            string[] honapok = new string[3];
            //- Írd át mindegyik tömbben tárolt nevet a nagybetűs megfelelőjére (ott a helyén, a tömbben, új utasításként, függvénnyel)!
            honapok[0] = "június";
            honapok[1] = "július";
            honapok[2] = "augusztus";

            honapok[0] = honapok[0].ToUpper();
            honapok[1] = honapok[1].ToUpper();
            honapok[2] = honapok[2].ToUpper();

            //- Írd ki őket a képernyőre egy utasítással, egy sorba, mindet 12 hossz szélességen, a szavak között legyen pontosvessző!

            Console.WriteLine("{0,12}; {1,12}; {2,12}", honapok[0], honapok[1], honapok[2]);

            //4. feladat:
            //Kérd be egy pont térbeli koordinátáit (x,y,z), és ezeket tárold egy koordinatak nevű tömbben.

            double[] koordinatak = new double[3];
            Console.WriteLine("Add meg az első koordinátát: ");
            double koo1 = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Add meg az második koordinátát: ");
            double koo2 = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Add meg az harmadik koordinátát: ");
            double koo3 = Convert.ToDouble(Console.ReadLine());

            //5. feladat:
            //- Hozz létre egy új tömböt koord néven,
            //amelynek elemeit töltsd fel az eredeti koordináták eggyel csökkentett értékével (-- operátorral).
            double[] koord = new double[3];
            koord[0] = koord[0]--;
            koord[1] = koord[1]--;
            koord[2] = koord[2]--;
            //- Írasd ki az új értékeket a képernyőre! 
            //Ehhez használd a Console.SetCursorPosition metódust!
            Console.Clear();
            Console.SetCursorPosition(14, 20);
            Console.WriteLine("{0}", koord[0]);
            Console.SetCursorPosition(16, 22);
            Console.WriteLine("{0}", koord[1]);
            Console.SetCursorPosition(18, 24);
            Console.WriteLine("{0}", koord[2]);

            Console.ReadLine();
        }
       }
}