using System; using System.Text; namespace Indekseering1 { class Ruuduarvutus { public int this[int nr] { get { return nr * nr * nr; } } } class T2heotsija { protected string s; public T2heotsija(string sona) { s = sona; } public char this[int nr] { get { if (nr >= 0 && nr < s.Length) { return s[nr]; } if (nr < 0 && nr >= -s.Length) { return s[s.Length + nr]; } return 'x'; } } } class T88tundideLoendur { protected int[] m=new int[7]; public int this[int nr]{ set{ if (nr < 0 || nr > 7) { throw new Exception("olematu päev: " + nr); } if (nr == 0) { nr = 7; } m[nr - 1] +=value; } } public override string ToString() { StringBuilder sb = new StringBuilder(); foreach (int arv in m) { sb.Append(arv); sb.Append(" "); } return sb.ToString(); } } class Test { public static void Main(string[] arg) { T88tundideLoendur tl = new T88tundideLoendur(); tl[3] = 5; tl[4] = 2; tl[3] = 3; Console.WriteLine(tl); T2heotsija t = new T2heotsija("Kast"); Console.WriteLine(t[0]); Console.WriteLine(t[2]); Console.WriteLine(t[-1]); Console.WriteLine(t[-4]); Ruuduarvutus r = new Ruuduarvutus(); Console.WriteLine(r[3]); } } } /* C:\Projects\oma\naited>Indekseering1 9 */