Informatika terméktervezőknek
C# alapok Névterület (namespace) using Osztály (class) és Obejtumok Metódus (function, procedure, method) main() static void string[] arg
Szintaxis // /* */ \n \t Névadások {} () [] ; : + - * / % = += ++n n-- &&! == >= <=!=
Változók Konstansok Adatmező-definíció Lokális változó const
bool int double char String Melléklet Típusok
Deklarálás, Értékadás Inicializálás int a; a = 2; int b = 3;
Deklarálás, Értékadás Inicializálás int a1, a2, a3; // egész típusok deklarálása long b1=12, b2=13; // nagyobb számokra char c = 'a'; // karakterek bool x = true, y = false; // logikai változók double g = 123.456; // valós számokra const double pi = 3.14; // konstansok deklarálása string alma = "körte"; // szöveg byte by = 255; // kis szám 255-ig
Deklarálás, Értékadás Inicializálás a1 = 12; // értékadó utasítás a1 = a1 + 1; a1 += 1; // inkrementálás a1 -= 1; // dekrementálás, a1 = a1-1 a2 = a1++; a2 = a1-- // a2 = a2 + a1 és utána a1++ a2 = ++a1; a2 = --a1 // a1++ és utána a2 = a2 + a1 a1 /= 1; a1 *= 1; a1 %= 1; // % maradék képzés
Kiíratás, Beolvasás Console.WriteLine("alma \a alma"); // \a = hangjelzés Console.WriteLine("alma" + "alma"); // összefűzés Console.WriteLine(a1 + a2); Console.WriteLine(a2); // változó kiíratása Console.WriteLine("alma {0} alma {1} alma", x, y); Console.ReadLine(); // várakozás alma = Console.ReadLine(); // értékadás billentyűzetről Console.Clear(); // konzol ablak letörlése
Véletlen szám Random veletlen1 = new Random(); int a = veletlen1.next(12, 23);
Konvertálás Convert.ToInt32(Console.ReadLine()); a = (int)b;
Matematikai könyvtár g = Math.Sqrt(a1); // gyökfüggvény g = Math.Pow(a1,0.5); // hatványfüggvény g = Math.Sin(a1); g = Math.Exp(a1); // e az x-ediken g = Math.Log(a1); // ln g = Math.Round(g,0); // 0 tizedesjegyre g = Math.Abs(a1); g = Math.PI; // a pi valós értéke
Logikai műveletek x = a1 > b1; // nagyobb? (a logikai értéket beletöltjük x-be) x = a1 >= b1; // nagyobb, vagy egyenlő? x = a1 == b1; // egyenlő-e? x = a1!= b1; // nem egyenlő? x = alma is string; // igaz, ha alma string típusú x =!x; // negáció z = x && y; // igaz, ha x és y is igaz z = x y; // igaz, ha x vagy y is igaz
min = x < y? X : y; a = b > 12? b1 : 2; Feltételes operátor
int [] a = new int[5]; char[] b = { a, b, c }; a[0] = 1; a = null; int[,] m = new int[5,3]; Tömbök
Tömbök int[] a = new int[] { 1, 2, 3, 4, 5 }; int[] b = new int[5] { 1, 2, 3, 4, 5 }; int[] c = { 1, 2, 3, 4, 5 }; int[] d = new int[5]; d[0] = 0; d[1] = 0; int[,] e = new int[2,3] {{1, 2, 3}, {4, 5, 6}}; // több dimenzió
Kivételkezelés try {} // kivételkezelés catch (FormatException) {} catch (IOException) {} finally {}
Elágazások if (x % 2 == 0 && y == 1 g == f ) // elágazás használata {} // ha több parancs követi, akkor blokkban kell megadni else if (x < 0) a = b; // ha egy parancs követi, nem kell blokkban else Console.WriteLine("YYY ); //az else után már nincs feltétel
Elágazások switch (a) // elágazás, ide kell írni a változó nevét ()-be {case 1: b= egy ; break; // case után a változó értéke áll case 2: // ha nincs break, akkor ugyanazt csinálja, mint a 3. sor case 3: b= kettő ; break; // minden case után kell break default: // ha egyik sem egyezik Console.WriteLine("Hiba ); break;}
Ciklusok for (a = 10; a < 20 &&!talalt; a++) // ciklus, adott számú ismétlésre {break; //a ciklusból való kilépéshez continue; //vagy continue; a ciklus fej címzéséhez}
Ciklusok while (i < 10 && b == 1) {} // elől vizsgálós ciklus do {} while (i <= Math.Abs(kitevo)); // hátul vizsgálós ciklus
Tömbök feltöltése for (int i2 = 0; i2 < d.length; i2++) // tömb feltöltése, ha minden elemen végigmegy d[i2] = i2 + 1; foreach (int elem1 in a) // minden elemen végigmegy Console.WriteLine(elem1);
Tömbök feltöltése c = null; // tömb elemeinek lenullázása int[,] e = new int[2,3] hossz = e.getlength(0); // = 2 hossz = e.getlength(1); // = 3
Fájlkezelés string filenev = @"c:\"; // elérési út megadása StreamWriter sw = new StreamWriter(filenev); // fájl író sw.writeline(); // írás fájlba StreamReader sr = new StreamReader(filenev); // fájl olvasó sr.readline(); // írás fájlba while (!sr.endofstream) ; // amíg véget nem ér a fájl sw.close();// fájl bezárása
Függvények, eljárások static int osszead(int x, int y) //formális paraméterek {return x + y;} //ezt adja vissza, mint függvény static void var() {Console.ReadLine();} //ha nincs visszatérési érték
Függvények, eljárások static void tomb(int[] x) {} //tömb paraméterként static void refer(ref int x) {} //az eredeti változó új néven static void kimeno(int x, out int y); //kimenő paraméter
Függvények, eljárások int c = osszead(a, b); //függvény használata var(); //paraméter nélküli eljárás meghívása tomb(d); //egy paraméteres eljárás meghívása referencia(ref a); //jelezni kel, hogy referencia kimeno(a, out b); //jelezni kell, hogy kimenő
Példák