C#
C# Valikute konstruktsionid:
Startclass
Console.WriteLine("Mis temperatuur praegu on?");
try
{
float tem = float.Parse(Console.ReadLine());
Console.WriteLine(Osa1_funktsioonid.Temperatuut(tem));
}
catch (Exception ü)
{
Console.WriteLine(ü);
}
Funktsioonid
public static string Temperatuut(float arv)
{
string a = "";
if (arv > 18)
{
a = "Temperatuur on ruumi jaoks liiga kõrge.";
}
else
{
a = "Temperatuur on korras.";
}
return a;
}
C# Kordused, massiivid ja klassid
Korduses
while
public class Kordus1{
public static void Main(string[] arg){
int nr=1;
while(nr<=5){
Console.WriteLine("Tere, {0}. matkaja!", nr);
nr=nr+1;}}}
for
for(int nr=1; nr<=5; nr++){
Console.WriteLine("Tere, {0}. matkaja!", nr);
}
do {} while
int nr=0;
do{
Console.WriteLine("Tere, {0}. matkaja!", nr);
nr=nr+1;
} while(nr!=5);
Class
class Isik
{
public string Nimi;
public int Vanus;
public void Tervita()
{
Console.WriteLine("Tere, minu nimi on " + Nimi);
}
}
Tuple<T1, T2, T3>
Tuple<float, char, string> minuTuple = new Tuple<float, char, string>(3.14f, 'A', "Programmeerimine");
Console.WriteLine("Esimene: " + minuTuple.Item1); // 3.14
Console.WriteLine("Teine: " + minuTuple.Item2); // A
Console.WriteLine("Kolmas: " + minuTuple.Item3); // Programmeerimine
Näide:
Startclass
int[] arvud = new int[4];
for (int i = 0; i < 4; i++)
{
Console.WriteLine("Sisetsa üks arv: ");
try
{
int arv = int.Parse(Console.ReadLine());
if (arv < 1 || arv > 9)
{
Console.WriteLine("Palun sisesta arv 1-9");
i--;
continue;
}
arvud[i] = arv;
}
catch (Exception e)
{
i--;
Console.WriteLine("Vale sisend");
}
}
Console.WriteLine(Osa3_Funktsioonid.SuurimNeliarv(arvud));
Funktsioonid
public static int SuurimNeliarv(int[] arvud)
{
Array.Sort(arvud);
Array.Reverse(arvud);
int summa = arvud[0] * 1000 + arvud[1] * 100 + arvud[2] * 10 + arvud[3];
return summa;
}
Failid
Faili kirjutamine
try
{
string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Kuud.txt"); //@"..\..\..\Kuud.txt"
StreamWriter text = new StreamWriter(path, true); // true = lisa lõppu
Console.WriteLine("Sisesta mingi tekst: ");
string lause = Console.ReadLine();
text.WriteLine(lause);
text.Close();
}
catch (Exception)
{
Console.WriteLine("Mingi viga failiga");
}
Faili lugemine
try
{
string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Kuud.txt");
StreamReader text = new StreamReader(path);
string laused = text.ReadToEnd();
text.Close();
Console.WriteLine(laused);
}
catch (Exception)
{
Console.WriteLine("Mingi viga failiga, ei saa faili lugeda");
}
Ridade lugemine List<string> abil
List<string> kuude_list = new List<string>();
try
{
string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Kuud.txt");
foreach (string rida in File.ReadAllLines(path))
{
kuude_list.Add(rida);
}
}
catch (Exception)
{
Console.WriteLine("Viga failiga!");
}
Listi muutmine ja kuvamine
foreach (string kuu in kuude_list)
{
Console.WriteLine(kuu);
}
// Eemalda "Juuni"
kuude_list.Remove("Juuni");
// Muuda esimest elementi
if (kuude_list.Count > 0)
kuude_list[0] = "Veeel kuuu";
Console.WriteLine("--------------Kustutasime juuni-----------");
foreach (string kuu in kuude_list)
{
Console.WriteLine(kuu);
}
Otsing nimekirjast
Console.WriteLine("Sisesta kuu nimi, mida otsida:");
string otsitav = Console.ReadLine();
if (kuude_list.Contains(otsitav))
Console.WriteLine("Kuu " + otsitav + " on olemas.");
else
Console.WriteLine("Sellist kuud pole.");
Listi salvestamine tagasi faili
string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Kuud.txt");
File.WriteAllLines(path, kuude_list);
Console.WriteLine("Andmed on salvestatud.");
C# Andmestruktuurid ja nendega töötamine
ArrayList (System.Collections)
Add() – lisab elemendi lõppu
Contains() – kontrollib, kas element on olemas
Count – tagastab elementide arvu
Count – tagastab elementide arvu
Insert(index, item) – lisab elemendi kindlale kohale
IndexOf() – otsib elemendi indeksit
Sort() – järjestab elemendid kasvavalt
Näide:
ArrayList nimed = new ArrayList();
nimed.Add("Kati");
nimed.Add("Mati");
nimed.Add("Juku");
if (nimed.Contains("Mati"))
Console.WriteLine("Mati olemas");
Console.WriteLine("Nimesid kokku: " + nimed.Count);
nimed.Insert(1, "Sass");
Console.WriteLine("Mati indeks: " + nimed.IndexOf("Mati"));
Console.WriteLine("Mari indeks: " + nimed.IndexOf("Mari"));
foreach (string nimi in nimed)
Console.WriteLine(nimi);
List (System.Collections.Generic)List (System.Collections.Generic)
Add(), AddRange() – lisa element või mitu
IndexOf(), Remove(), RemoveAt()
Insert(index, item) – lisa kindlasse kohta
Sort() – sorteerib andmed
BinarySearch() – kiire otsing (peab olema sorteeritud)
Näide:
class Person
{
public string Name { get; set; }
}
List<Person> people = new List<Person>();
people.Add(new Person() { Name = "Kadi" });
people.Add(new Person() { Name = "Mirje" });
foreach (Person p in people)
Console.WriteLine(p.Name);
LinkedList (System.Collections.Generic)
AddFirst(value), AddLast(value)
AddBefore(node, value), AddAfter(node, value)
RemoveFirst(), RemoveLast(), Remove(value)
LinkedList<int> loetelu = new LinkedList<int>();
loetelu.AddLast(5);
loetelu.AddLast(3);
loetelu.AddFirst(0);
foreach (int arv in loetelu)
Console.WriteLine(arv);
loetelu.RemoveFirst();
loetelu.RemoveLast();
loetelu.AddLast(555);
loetelu.Remove(555);
Dictionary<TKey, TValue> – Sõnastik
Add(key, value)
Remove(key)
ContainsKey(key), ContainsValue(value)
Keys, Values
dictionary[key] = newValue;
Näide
Dictionary<int, string> riigid = new Dictionary<int, string>();
riigid.Add(1, "Hiina");
riigid.Add(2, "Eesti");
riigid.Add(3, "Itaalia");
foreach (var paar in riigid)
Console.WriteLine($"{paar.Key} - {paar.Value}");
string pealinn = riigid[2];
riigid[2] = "Eestimaa";
riigid.Remove(3);
Näide:
Startclass
Console.WriteLine("2. Ülesanne");
Dictionary<string, string> maakonnad = new Dictionary<string, string>();
maakonnad.Add("Harju maakond", "Tallinn");
maakonnad.Add("Hiiu maakond", "Kärdla");
maakonnad.Add("Ida-Viru maakond", "Jõhvi");
maakonnad.Add("Järva maakond", "Paide");
maakonnad.Add("Lääne maakond", "Haapsalu");
Console.WriteLine("Tere! Tahad teada, mis maakonnad on ja mis nende pealinnad?");
string v = Console.ReadLine();
if (v.ToLower() == "jah")
{
Console.WriteLine("Kui tahad teada linna, sisesta maakond, aga kui tahad teada maakonda, sisesta linn.");
string vastus = Console.ReadLine();
Funktsioonid.Maakond_linnad(vastus, maakonnad);
Funktsioonid.Mang(maakonnad);
}
else if (v.ToLower() == "ei")
{
Console.WriteLine("Okei, head päeva!");
}
else
{
Console.WriteLine("Palun vasta jah või ei!");
}
Funktsioonid
public static void Maakond_linnad(string vastus, Dictionary<string,string> nimi)
{
if (vastus=="maakond")
{
Console.WriteLine("Sisesta maakond: ");
string maakond = Console.ReadLine();
if (nimi.ContainsKey(maakond))
{
Console.WriteLine(nimi[maakond]);
}
else
{
Console.WriteLine("Lisame su linna ja maakonna");
Console.Write("Sisesta maakond: ");
string maakond1 = Console.ReadLine();
Console.Write("Sisesta linn: ");
string linn1 = Console.ReadLine();
nimi.Add(maakond1, linn1);
Console.WriteLine("Andmed on lisatud!");
}
}
else if (vastus=="linn")
{
Console.WriteLine("Sisesta linn: ");
string linn = Console.ReadLine();
if (nimi.ContainsValue(linn))
{
foreach (var paar in nimi)
{
if (paar.Value == linn)
Console.WriteLine(paar.Key);
}
}
else
{
Console.WriteLine("Lisame su linna ja maakonna");
Console.Write("Sisesta maakond: ");
string maakond = Console.ReadLine();
Console.Write("Sisesta linn: ");
string linn1 = Console.ReadLine();
nimi.Add(maakond, linn1);
Console.WriteLine("Andmed on lisatud!");
}
}
else
{
Console.WriteLine("Viga!");
}
}
public static void Mang(Dictionary<string, string> nimi)
{
Console.WriteLine("Kas sa tahad mängida mängu? (jah/ei)");
string vastus = Console.ReadLine().ToLower();
if (vastus == "jah")
{
Console.WriteLine("Ma kirjutan sulle mingi maakonna ja sina pead arvama, mis on selle maakonna pealinn.");
int oige = 0;
for (int i = 0; i < 3; i++)
{
Random rand = new Random();
int index = rand.Next(nimi.Count);
var paar = nimi.ElementAt(index);
Console.WriteLine($"Mis on {paar.Key} pealinn?");
string vastus1 = Console.ReadLine();
if (vastus1.ToLower() == paar.Value.ToLower())
{
Console.WriteLine("Õige vastus!");
oige++;
}
else
{
Console.WriteLine($"Vale vastus! Õige vastus on {paar.Value}");
}
}
float skoor = (float)oige / 3 * 100;
Console.WriteLine($"Sinu skoor on {skoor}.");
Console.WriteLine("Mäng läbi! Loodan, et sulle meeldis!");
}
else if (vastus == "ei")
{
Console.WriteLine("Okei, head päeva!");
}
else
{
Console.WriteLine("Palun vasta jah või ei!");
}
}
}