Prvi deo:

  1. Definisati klasu Kompleksni koja omogućava rad sa kompleksnim brojevima,
  2. Definisati podrazumevani konstruktor
  3. Definisati konstruktor koji postavlja vrednosti realnog i imaginarnog dela preko argumenata,
  4. Definisati preklopljeni binarni operator za sabiranje dva kompleksna broja
  5. U glavnom programu koristeći kreirati dva kompleksna broja i prikazati njihov zbir.

class Kompleksni
    {
        private double re;
        private double im;
 
        public Kompleksni()
        {
            re = 0;
            im = 0;
        }
 
        public Kompleksni(double realni, double imaginarni)
        {
            re = realni;
            im = imaginarni;
        }
 
        public static Kompleksni operator +(Kompleksni Z1, Kompleksni Z2)
        {
            Kompleksni Z3 = new Kompleksni();
            Z3.re = Z1.re + Z2.re;
            Z3.im = Z1.im + Z2.im;
            return Z3;
        }
 
        public void Prikaz()
        {
            Console.Write(re);
            if (im > 0)
                Console.WriteLine("+j" + im);
            else
                Console.WriteLine("-j" + -im);
        }
    }
 
    public class Program
    {
        public static void Main(string[] args)
        {
            Kompleksni Z1 = new Kompleksni(2, -5);
            Kompleksni Z2 = new Kompleksni(-3, -3);
 
            Console.Write("Z1 = ");
            Z1.Prikaz();
            Console.Write("Z2 = ");
            Z2.Prikaz();
 
            Kompleksni Z3 = new Kompleksni();
 
            Console.Write("Zbir Z1 i Z2: Z3 = ");
            Z3 = Z1 + Z2;
            Z3.Prikaz();
 
       }
    }


Drugi deo (radimo na času, a učenici koji rade online rade samostalno, kao podzadatak):

  • Kreirati svojstva za realni i imaginarni deo kompleksnog broja.

Rešenje  (dodato 17.11) :

public double Re
{
get { return re; }
set { re = value; }
}

public double Im
{
get { return im; }
set { im = value; }
}

A kako smo to upotrebili u zadatku: promenili smo vrednosti realnog i imaginarnog dela broja Z1:

   Z1.Re = 10;
Z1.Im = 10;
Console.Write("Nova vrednost za Z1 = ");
Z1.Prikaz();

(dodato 17.11) Evo kako na kraju izgleda ceo programski kod: program.cs

Za domaći (za vežbu kod kuće - ne predaje se):

  1. Definisati i ostale aritmetičke operatore i metode za rad sa kompleksnim brojevima (oduzimanje, množenje, deljenje, konjugacija, apsolutna vrednost, argument)


...

Last modified: Tuesday, 17 November 2020, 1:12 PM