Programski kod teorijskih zadataka za maturski ispit. Kod u celosti možete prekopirati u https://dotnetfiddle.net/ ili u konzolnu aplikaciju Visual Studio-a.

77. 
using System;
					
public class Program
{
	public static void Main()
	{
		Console.WriteLine(fun(17));
	}
 	public static int fun(int n) { return n; }
 	public static void fun(int n){ Console.WriteLine(n); }
}

78.
using System;
					
public class Program
{
	public static void Main()
	{
		int[] a = new int[5];
 		for (int i = 0; i < a.Length; i++) a[i] = i;
 		Console.Write(a[i] + " ");
 	}
}

79.
using System;
					
public class Program
{
	public static void Main()
	{
		int k;
		int[] brojevi = {5, 12, 37, 7, 27, 33, 36};
		k=Array.BinarySearch(brojevi, 37);
		Console.WriteLine(k);
 	}
}
 
80.
using System;
					
public class Program
{
	public static void Main()
	{
		string str = "Primer";
		int broj = 66;
		Console.WriteLine(str + broj + 65);
		Console.WriteLine(broj + 65 + str);
 	}
}
 
81.
using System;
					
public class Program
{
	public static void Main()
	{
		fun(3);
 	}
	
	public static long fun(int n)
	{
 		return n * fun(n - 1);
	}
}
 
82.
using System;
					
public class Program
{
	public static void Main()
	{
		fun(2);
 	}
 	public static void fun(int n) 
	{
 		while (n > 1) 
		{
 			Console.Write((n - 1) + " ");
 			fun(n - 1);
 		}
 	}
}
 
83.
using System;
					
public class Program
{
	public static void Main()
	{
		Console.WriteLine(palindrom("ANA"));
		Console.WriteLine(palindrom("VRATA"));
 	}
 	
	public static bool palindrom(String s)
	{
		if (s.Length <= 1) return true; //bazni slučaј
		else if (s[0] != s[s.Length - 1]) return false;
		else return palindrom(s.Substring(1, s.Length - 2));
	}
}

84.
using System;
					
public class Program
{
	public static void Main()
	{
		Console.WriteLine(Palindrom("ANA"));
		Console.WriteLine(Palindrom("VRATA"));
 	}
 	
	public static bool Palindrom(String s)
	{
		return Palindrom(s, 0, s.Length - 1);
	}
	
	public static bool Palindrom(String s, int levi, int desni)
	{
		if (desni <= levi) return true; // bazni slucaj
		else if (s[levi] != s[desni]) return false;
		else return Palindrom(s, levi + 1, desni - 1);
	}
}

85.
using System;
					
public class Program
{
	public static void Main()
	{
		int[] brojevi = {2, 4, 10, 11, 23, 30, 35};
		Console.WriteLine(TraziBroj(brojevi, 23));
 	}
 	
	public static int TraziBroj(int[] niz, int broj) 
	{
		return TraziBroj(niz, broj, 0, niz.Length - 1);
	}
	
	public static int TraziBroj(int[] niz,int broj,int levi,int desni) 
	{
		if(levi > desni) return -1; // broj nije nadjen u nizu
		int sredina = (levi + desni) / 2;
		if(broj < niz[sredina]) return TraziBroj(niz, broj, levi,sredina-1);
		else if(broj > niz[sredina]) return TraziBroj(niz, broj, sredina + 1, desni);
		else return sredina;
	}
}

86.
using System;
					
public class Program
{
	class Test 
	{
 		int x;
 		public Test(string s)
		{
 			Console.WriteLine("Klasa Test");
		}
	}
		
	public static void Main()
	{
		Test t = null;
 		Console.WriteLine(t.x);
 	}
}

87.
using System;
					
public class Program
{
	public class Test 
	{
		private int broj;

		public static int kvadrant(int n) { return n * n; }
		public static int getBroj() { return broj; }
	}
		
	public static void Main()
	{
 	}
}

88.
using System;
					
public class Program
{
	public class Point 
	{
		private double x, y;
		public Point() { x = 0; y = 0; }
		public void Set(double xx, double yy){ x=xx; y=yy; }
		public Point(Point p) 
		{
			Set(p.x, p.y);
		}
	}
		
	public static void Main()
	{
 	}
}

89.
using System;
					
public class Program
{
	public static void Main()
	{
		KlasaA a1 = new KlasaA ();
 		KlasaA a2 = new KlasaA ();
 		Console.WriteLine(a1.Equals(a2));
 	}
	
	
	class KlasaA 
	{
 		int x;
 		public bool Equals(KlasaA a)
		{
		return this.x == a.x;
 		}
	}
}

90.
using System;
					
public class Program
{
	public static void Main()
	{
		Object a1 = new KlasaA();
 		Object a2 = new KlasaA();
 		Console.WriteLine(a1.Equals(a2)); 
 	}
	
	
	class KlasaA 
	{
 		int x;
 		public bool Equals(KlasaA a)
		{
		return this.x == a.x;
 		}
	}
}

91.
using System;
					
public class Program
{
	public static void Main()
	{
		B b = new B();
 		b.Metod(5);
 		Console.WriteLine("b.i je " + b.CitajI()); 
 	}
	
	
	class A 
	{
 		int i;
 		public int CitajI(){return i;}
 		public void Metod(int i) { this.i = i; }
	}
	
	class B : A 
	{
 		public void Metod(string s)
		{
		Console.WriteLine(s);
 		}
	}
}

92.
using System;
					
public class Program
{
	public static void Main()
	{
		try
		{
 			int x = 0;
 			int y = 5 / x;
		}
		catch (Exception e)
		{
			Console.WriteLine("Exception");
		}
		catch (ArithmeticException ae)
		{
 			Console.WriteLine(" Arithmetic Exception");
		}
		Console.WriteLine("finished");
 	}
}

96.
using System;
					
public class Program
{
	public static void Main()
	{
		int niz1 = new int(30);
		double[] niz2 = new double[30];
		int[] niz3 = { 3, 4, 3, 2 };
		char[] niz4 = new char[];
		char[] niz5 = new char { 'a', 'b', 'c', 'd' };
		char[] niz6 = new char[] { 'a','b' };
 	}
}

99.
using System;
					
public class Program
{
	public static void Main()
	{
	}
	
	public class Point 
	{
		private double x, y;
		public Point() { x = 0; y = 0; }
		public void set(double xx, double yy) { x = xx; y = yy; }
		public Point(double x, double y) { this.x=x; this.y=y; // set(x,y); 
										 }
	}
}

100.
using System;
					
public class Program
{
	public static void Main()
	{
		int [,] a = new int[10,10];
		int sum = 0;
		// 1
		for (int i = 0; i < a.Length; i++)
		for (int j = 0; j < a[i].Length; j++)
		sum += a[i][j];
		// 2
		foreach (int x in a) sum += x;
		// 3
		for (int i = 0; i < a.GetLength(0); i++)
		for(int j=0; j<a.GetLength(1); j++)
		sum += a[i,j];
		// 4
		foreach (int[] vrsta in a)
		foreach (int el in vrsta)
		sum += el;
	}
}

101.
using System;
					
public class Program
{
	public static void Main()
	{
	}
	
	public void Print(params string[] niska, params double[] broj) { }
	public void Print(params double[] broj, string niska) { }
	public void params Print(double d1, double d2) { }
	public void Print(params double[] broj) { }
	public void Print(int n, params double[] broj) { }
}

102.
using System;
					
public class Program
{
	public static void Main()
	{
	}
	
	class TestPrimer 
	{
		public double x;
		public TestPrimer(double x)
		{
			this.fun();
			this.x = x;
		}

		public TestPrimer()
		{
			Console.WriteLine("Podrazumevani konstruktor");
			this(23);
		}
		
		public void fun()
		{
			Console.WriteLine("Poziv metoda fun()");
		}
	}
}

105.
using System;
					
public class Program
{
	public static void Main()
	{
		Object a = new Klasa();
		Object obj = new Object();
		Console.WriteLine(a);
		Console.WriteLine(obj);
	}
	
	class Klasa
	{
		int x;
		
		public override string ToString() 
		{
			return "x u A je " + x;
		}
	}
}

106.
using System;
					
public class Program
{
	public static void Main()
	{
		KlasaB b = new KlasaB();
		b.Print();
	}
	
	class KlasaA 
	{
		string s;
		
		public KlasaA(string s) 
		{ 
			this.s = s; 
		}
		
		public void Print() 
		{ 
			Console.WriteLine(this.s); 
		}
	}
	
	class KlasaB :KlasaA { }
}

107.
using System;
					
public class Program
{
	class Figura 
	{
		public Figura() { }
		public Figura(string ime, string boja, int pozX, int pozY) { }
	}
		
	public static void Main()
	{
		Figura f1 = Figura("lovac", "beli", 7, 3);
		Figura f2 = new Figura("beli", "lovac", 7, 3);
		Figura f3 = new Figura();
		Figura f4 = new Figura("lovac", 3, 7, "beli");
		Figura f5 = new Figura("lovac", "beli", 3, 7);
		Figura f6 = new Figura("lovac", "beli", 3);
	}
}

109.
using System;
					
public class Program
{
	public class Racun 
	{
		public virtual int Uvecaj() { return 10; }
	}

	public class Dinarski: Racun 
	{
		public override int Uvecaj() { return 20 * base.Uvecaj(); }
	}
	
	public class Devizni : Racun 
	{
		public override int Uvecaj() { return 50 + base.Uvecaj(); }
	}
		
	public static void Main()
	{
		Racun r = new Racun();
		Racun rDin = new Dinarski();
		Racun rDev = new Devizni();
		
		Console.WriteLine(r.Uvecaj());
		Console.WriteLine(rDin.Uvecaj());
		Console.WriteLine(rDev.Uvecaj());
	}
}

110.
using System;
					
public class Program
{
	public class Racun 
	{
		public virtual int Uvecaj() { return 10; }
	}
	
	public class Dinarski: Racun 
	{
		public override int Uvecaj() { return 20 * base.Uvecaj(); }
	}
	
	public class Devizni : Dinarski 
	{
		public override int Uvecaj() { return 50 + base.Uvecaj(); }
	}
		
	public static void Main()
	{
		Racun r = new Racun();
		Racun rDin = new Dinarski();
		Racun rDev = new Devizni();
		
		Console.WriteLine(r.Uvecaj());
		Console.WriteLine(rDin.Uvecaj());
		Console.WriteLine(rDev.Uvecaj());
	}
}

111.
using System;
					
public class Program
{
	public class KlasaA 
	{
		public virtual int Metod() { return 10; } 
	}
	
	public class KlasaB : KlasaA 
	{
		public override int Metod() { return 20; } 
	}
	
	public class KlasaC : KlasaB 
	{
		public new int Metod() { return 30; } 
	}
		
	public static void Main()
	{
		KlasaA a = new KlasaA();
		KlasaB b = new KlasaB(); 
		KlasaA bb = new KlasaB(); 
		KlasaC c = new KlasaC(); 
		KlasaB cc = new KlasaC(); 
		KlasaA ccc = new KlasaC();
		
		Console.WriteLine(a.Metod());
		Console.WriteLine(b.Metod());
		Console.WriteLine(bb.Metod());
		Console.WriteLine(c.Metod());
		Console.WriteLine(cc.Metod());
		Console.WriteLine(ccc.Metod());
	}
}

112.
using System;
					
public class Program
{
	public class Roditelj 
	{
		public virtual void Poruka1() { Console.WriteLine("R1"); }
		public void Poruka2() { Console.WriteLine("R2"); }
	}
	
	public class Dete: Roditelj 
	{
		public override void Poruka1() { Console.WriteLine("D1"); }
		public new void Poruka2() { Console.WriteLine("D2"); }
	}
		
	public static void Main()
	{
		Dete x = new Dete();
		Roditelj y = new Dete();
		
		x.Poruka1();
		x.Poruka2();
		y.Poruka1();
		y.Poruka2();
	}
}