Синтакса наредбе if


Програми које смо до сада користили имали су линијску структуру. Код таквих програма наредбе се углавном извршавају редом, онако како су написане, једна за другом, од почетка до краја, с тим да се свака наредба изврши једном. Након једне наредбе прелази се на следећу и тако редом до краја програма. Међутим, некад је неопходно променити ток извршавања програма, јер се често долази у ситуацију да ток програма зависи од одређеног услова. Помоћу наредби if и switch можемо управљати током извршавања кода.


У зависности од тога да ли је услов испуњен извршаваће се једна или више наредби. Ако услов није испуњен, тада се те наредбе неће извршавати или се може извршавати други блок наредби (блока наредби ћемо се подсетити касније). Наредба if омогућава испитивање логичког Boolean услова у програму. Ако је тај услов true, тј. тачан, извршава се код који се налази у тој грани. if наредба се може употребити за обављање једносмерног тестирања, двосмерног, вишесмерног, или угњежденог тестирања.

Извођење једносмерних тестирања


Синтакса наредбе if изгледа:



  if (uslov)
{
naredba
}

Дати дијаграм илуструје једноставно једносмерно тестирање:
Ако је испуњен логички израз Uslov (вредност израза је true) тада се извршава наредба Naredba и прелази се на следећу наредбу, а ако услов није испуњен (резултат израза је false) тада се наредба Naredba прескаче и одмах се прелази на следећу наредбу. Слика 6.1. Дијаграм једносмерног тестирања


Следећи пример показује како се дефинише једносмерно тестирање у VISUAL C#-у:

Пример 1. Написати програм који за унети број испитује да ли је он негативан и исписује поруку ако јесте.

Решење :



Правимо форму облика:
Преименујемо label-e и button1

Слика 6.2. Почетни изглед форме

Слика 6.3. Изглед форме након преименовања компоненти

Кликом на дугме, програм трба у лабели label3 да нам испише поруку да ли је наш унети број негативан. У супротном, ако је број позитиван или једнак нули, програм ће исписивати само поруку Kraj! у другој лабели, label4.


private void button1_Click(object sender,  EventArgs e)
{   
    //Promenljiva koju koristimo
    double x;  
    x = double.Parse(textBox1.Text);                                       
    //Ispitujemo da li je x manje od 0                          
    if (x < 0)                                                              
        //Ako jeste, ispisujemo poruku                    
        label3.Text = "Uneti broj je negativan! ";
    label4.Text = "Kraj! ";                                      
}

Иза кључне речи if налази се израз слова, између малих заграда (мале заграде су обавезне). Ако се израчунавањем израза услова добије вредност тачно, извршава се следећа наредба - биће приказана порука Broj je negativan!. Обратимо пажњу на то да ће се порука Kraj! увек извршавати, без обзира на исход тестирања, због тога што се она налази изван if-тела.
Покренемо програм и проверимо (за конкретну вредност x) :

Слика 6.4. Изглед форме након покретања програма

Напомена: Иза затворене мале заграде у if-тесту не ставља се знак тачка зарез. Једна од најчешћих грешака у програмирању у програмском језику VISUAL C# јесте када се тај знак омашком, ипак стави:
                                     
//Primetite podmetnuti znak tacka zarez                         
if (x < 0);                                                             
//Ovaj iskaz odgovara sledecoj naredbi, koja priznacete, nije bas ono sto smo hteli  
if (x < 0)                                
//Prazno if-telo - ne raditi nista ako je broj < 0 
;


Подсетимо се шта је то блок...

Блок је група наредби која се налази између витичастих заграда ({}). Једну наредбу можемо заменити блоком. Ево како то можемо урадити у малопређашњем примеру:

private void button1_Click(object sender,  EventArgs e)
{   
    //Promenljivu koju koristimo
    double x;  
    x = double.Parse(textBox1.Text);                                       
    //Ispitujemo da li je x manje od 0                          
    if (x < 0)
    {                                                           
        //Ako jeste, ispisujemo poruku                  
        label3.Text = "Uneti broj "; 
        label4.Text = "je negativan!! "; 
    }                                    
}

Сада имамо две наредбе у оквиру једног блока (додали смо витичасте заграде), па ће наш програм исписивати исту поруку, иако мамо две наредбе, само што ће се порука Uneti broj исписати у једној лабели, а je negativan у другој.


Савет
Добра програмерска пракса је да се блокови користе чак и када је у питању само једна наредба. На овај начин, ако желимо да додамо још једну наредбу, већ имамо блок на правом месту. Да нисмо имали блок, могли бисмо да направимо грешку, тако што би додали нову наредбу, а заборавили да додамо заграде за блок.

Извођење двосмерних тестирања


Синтакса наредбе if изгледа:



  if (uslov) 
  {
naredbe1
}
else {
naredbe2
}

Дати дијаграм илуструје једноставно двосмерно тестирање:

Слика 6.5. Дијаграм двосмерног тестирања


Следећи пример показује како се дефинише двосмерно тестирање у VISUAL C#-у:

Пример 2. Написати програм који за унета два броја враћа њихову разлику.

Решење :


За почетак, потребно је испитати који је број већи, па затим од вечег одузети мањи број како бисмо добили разлику. Испитивање ћемо обавити помоћу наредбе if.

Правимо форму облика: Преименујемо label-e и button1
Слика 6.6. Почетни изглед форме
Слика 6.7. Изглед форме након преименовања компоненти

Од корисника се очекује да преко textBox-ова унесе два броја и кликом на дугме, у label-и испише њихову разлику.

private void button1_Click(object sender,  EventArgs e)
{   
    //Promenljive koje koristimo
    double x, y, razlika;  
    x = double.Parse(textBox1.Text); 
    y = double.Parse(textBox2.Text);                                       
    //Ispitujemo da li je x manje od y                          
    if (x < y)
    { 
       //Racunamo razliku, ako je vece y
       razlika = y - x;
    } 
    //U suprotnom, racunamo razliku ako je vece x
    else
    {
       razlika = x - y;
    }
       //Ispisujemo rezultat u labelu
       label4.Text = "Razlika je " + razlika; 
}


Покренемо програм и проверимо (за конкретне вредности x и y) :

Слика 6.8. Изглед форме након покретања програма

Извођење вишесмерних тестирања

Вишеструко условно гранање омогућава испитивање више услова. Зависно о испуњењу постављених услова изводи се одговарајући блок наредби.


Синтакса вишеструког гранања наредбе if изгледа:



  if (uslov1)
  {
naredbe1
}
else if (uslov2) {
naredbe2
}
else if(uslov3) {
naredbe3
}
else {
naredbe4
}

Ако је вредност првог услова true, изводи се први блок наредби naredbe1. Након његовoг завршетка извођење се наставља од прве наредбе иза задњег блока наредби. Ако је вредност првог услова false, проверава се други услов. Ако је вредност другог услова true, изводи се други блок наредби. Након његова завршетка извођење се наставља од прве наредбе иза задњег блока наредби naredbe2. Ако је вредност другог услова false, проверава се трећи услов. Провере се тако редом настављају све до наредбе else. Ако до тада нити један од услова није имао врeдност true, извршиће се задњи блок наредби који се налази иза наредбе else, блок naredbe4 .


Дата шема илуструје вишесмерно тестирање у виду дијаграма тока:

Слика 6.9. Дијаграм вишесмерног тестирања



A ево како то изгледа у реалном животу...

Sorry, the GeoGebra Applet could not be started. Please make sure that Java 1.4.2 (or later) is installed and active in your browser (Click here to install Java now)
Анимација 6.1. Наредба if у употребљена на реалној ситуацији

*У случају да се анимација не приказује, притиснути дугме Прикажи слику





Пример 3. Написати програм који за унети број исписује да ли је он већи, мањи или једнак 100.

Решење :


Правимо форму облика:
Преименујемо label-e и button1
Слика 6.10. Почетни изглед форме
Слика 6.11. Изглед форме након преименовања компоненти

Од корисника се очекује да преко textBox-а унесе број и кликом на дугме, у label-и испише поруку о томе да ли је унети број већи, мањи или једнак 100.

private void button1_Click(object sender,  EventArgs e)
{   
    //Promenljiva koju koristimo
    double x;  
    x = double.Parse(textBox1.Text);                                       
    //Ispitujemo da li je x jednako 100                          
    if (x == 100)
    { 
         //Ako jeste, ispisujemo poruku u labeli
         label3.Text = "Unet je broj 100 i on je paran. "; 
    } 
    //U suprotnom, pitamo da li je manji od 100
    else if (x < 100)
         label3.Text = "Uneti broj je manji od 100. ";  
    //I na kraju, ukoliko je veci od 100
    else
         label3.Text = "Uneti broj je veci od 100. "; 
}


Покренемо програм и проверимо (за конкретну вредност броја) :

Слика 6.12. Изглед форме након покретања програма

Напомена: Између кључних речи else и if постоји размак, зато што су то две засебне кључне речи.

Извођење угњеждених тестирања

Наредбу if можемо ставити унутар друге наредбе if. За унутрашњу наредбу if каже се да је угњеждена унутар друге. Угњеждене наредбе if омогућавају праћење врло компликованих логичких услова коришћењем једноставних наредби if.


Следећом синтаксом приказана је угњеждена наредба if.



 if (uslov1)
 {
naredbe1
}
else {
if (uslov2) {
naredbe2
}
else {
naredbe3
}
}
Ако је услов uslov1 true, извршава се блок naredba1. Ако је услов uslov2 true, онда се извршава блок naredbe2. Ако су и услов uslov1 и услов uslov2 false, онда се извршава блок naredbe3.


Дата шема илуструје угњеждено тестирање у виду дијаграма тока:


Слика 6.13. Дијаграм угњежденог тестирања

Пример 4. Написати програм који за унети број исписује да ли је он већи, мањи или једнак 100, као и да ли је паран или непаран.

Решење :


Правимо форму облика:
Преименујемо label-e и button1
Слика 6.14. Почетни изглед форме
Слика 6.15. Изглед форме након преименовања компоненти

Од корисника се очекује да преко textBox-а унесе број и кликом на дугме, у label-и испише поруку о томе да ли је унети број већи, мањи или једнак 100, као и да ли је број паран или непаран.

private void button1_Click(object sender,  EventArgs e)
{   
    //Promenljivu koju koristimo
    double x;  
    x = double.Parse(textBox1.Text);                                       
    //Ispitujemo da li je x jednako 100                          
    if (x == 100)
    { 
        //Ako jeste, ispisujemo poruku u labeli
        label3.Text = "Unet je broj 100 i on je paran. "; 
    } 
    //U suprotnom, pitamo da li je manji od 100
    else if (x < 100)
    {
         //Sada da vidimo da li je paran ili neparan
         if (x % 2 == 0)
             label3.Text = "Uneti broj je manji od 100 i on je paran. "; 
         else
             label3.Text = "Uneti broj je manji od 100 i on je neparan. "; 
    }
    //I na kraju, ukoliko je veci od 100
    else
    {
         if (x % 2 == 0)
             label3.Text = "Uneti broj je veci od 100 i on je paran. "; 
         else
             label3.Text = "Uneti broj je veci od 100 i on je neparan. "; 
    }
}

Покренемо програм и проверимо (за конкретну вредност x) :

Слика 6.16. Изглед форме након покретања програма

Коришћење логичких оператора у наредби if

Раније смо видели три логичка оператора &&(и), ||(или) и !(не). Ове операторе можемо користити у изразу који представља услов наредбе if.

Пример 5. Написати програм који за унети број испитује да ли је позитиван паран број.

Решење :


private void button1_Click(object sender,  EventArgs e)
{   
    //Promenljiva koju koristimo
    double x;  
    x = double.Parse(textBox1.Text);                                        
    //Ispitujemo i da li je x pozitivno i da li je parno                          
    if (x >= 0 && x % 2 == 0) 
        label3.Text = "Uneti broj je pozitivan paran broj."; 
    //Ano nije
    else
        label3.Text = "Uneti broj nije ili pozitivan ili paran broj."; 
}

Логички израз који се користи у наредби if је x >= 0 && x % 2 == 0. Ово значи да и израз x >= 0 и израз
x % 2 == 0 морају бити true, да би цео услов био true и да би се извршио први блок наредби.

Примери

Пример 6. Написати програм који за унете коефицијенте линеарне једначине враћа њено решење.

Решење :
Посматрајмо линеарну једначину a*x+b=0. Када она има решење?
Ако је a различито од 0, онда једначина има јединствено решење и оно је –b/a.
У супротном ако је a=0, онда посматрамо b.
Ако је b=0 онда једначина има бесконачно много решења.
Ако је b различито од 0 онда једначина нема решење.


Правимо форму облика:Слика 6.17. Почетни изглед форме
Преименујемо label-e и button1Слика 6.18. Изглед форме након преименовања компоненти

Кликом на дугме, програм треба да нам врати решење линеарне једначине, за коефицијенте које смо унели. Да би се то остварило потребно је да функцију дугмета повежемо са подацима које уносимо. Реализација функције дугмета постиже се писањем одговарајућег кода у делу програма које се отвара двоструким кликом на дугме (button1) :

private void button1_Click(object sender,  EventArgs e)
{   
    //Promenljive koje koristimo
    double a, b;  
    a = double.Parse(textBox1.Text);                                       
    b = double.Parse(textBox2.Text);
    //Ispitujemo da li je a razlicito od 0                          
    if (a != 0)                                                             
    {  
        //Ako jeste resenje je -b/a
        double resenje = -b / a; 
        //Ispisujemo resenje                              
        label4.Text = "Linearna jednacina ima jedinstveno resanje :" + resenje; 
    }  
    //U suprotnom ako je a jednako 0
    else                                                                    
    { 
        //Ako je i b jednako 0  
        if (b == 0)  
            //Ispisujemo resenje                                    
            label4.Text = "Linearna jednacina ima beskonacno mnogo resenja"; 
        //U suprotnom b je razlicito 0
        else 
            //Ispisujemo resenje                                                          
            label4.Text = "Ne postoji resenje";                                    
    }
}

Покренемо програм и проверимо (за конкретне вредности а и b) :

Слика 6.19. Изглед форме након покретања програма

Пример 7. Написати програм који враћа решење система од две линеарне једначине са две непознате.

Решење :
Посматраћемо систем од две линеарне једначине са две непознате у општем облику :
a1*x+b1*y=c1 и a2*x+b2*y=c2.
За налажење решења применићемо методу детерминанти. Тада је :

Где се D назива детерминанта система.
Ако је детерминанта система D различита од 0 систем има јединствено решење.
Ако је детерминанта система D једнака 0 и бар једна од детерминанти по x или по y различита од 0 систем је немогућ, у супротном је неодређен.


Правимо форму облика:Слика 6.20. Почетни изглед форме
Преименујемо label-e и button1Слика 6.21. Изглед форме након преименовања компоненти

Кликом на дугме, програм треба да нам врати решење система од две линеарне једначине са две непознате, за коефицијенте које смо унели. Да би се то остварило потребно је да функцију дугмета повежемо са подацима које уносимо. Реализација функције дугмета постиже се писањем одговарајућег кода у делу програма које се отвара двоструким кликом на дугме (button1) :

private void button1_Click(object sender, EventArgs e)
{
    //Promenljive koje koristimo
    double a1, b1, c1, a2, b2, c2;
    a1 = double.Parse(textBox1.Text);
    b1 = double.Parse(textBox2.Text);
    c1 = double.Parse(textBox3.Text);
    a2 = double.Parse(textBox4.Text);
    b2 = double.Parse(textBox5.Text);
    c2 = double.Parse(textBox6.Text);
    double D, Dx, Dy;
    //D je determinanta sistema
    D = a1*b2 - a2*b1;
    //Kada prvu kolonu zamenimo slobodnim clanovima dobijamo Dx
    Dx = c1 * b2 - c2*b1;
    //Kada drugu kolonu zamenimo slobodnim clanovima dobijamo Dy
    Dy = c1 * a2 - c2 * a1;
    //Ako je D razlicita od 0
    if (D != 0)
    {
        //Racunamo x
        double x = Dx / D;
        //Racunamo y
        double y = Dy / D;
        //Ispisujemo resenje
        label6.Text = "Sistem ima jedinstveno resenje x = " + x + "  i y = " + y;
    }
    //U suprotnom ako je D jenaka 0
    else if (D == 0)
    {
        //Ako je Dx ili Dy razlicito od 0
        if (Dx != 0 || Dy != 0)
            //Imamo deljenje 0, ispisujemo resenje
            label6.Text = "Sistem je nemoguc";
        //U suprotnom ako je Dx ili Dy jedneko nuli
        else
            //Imamo 0/0, ispisujemo resenje
            label6.Text = "Sistem je neodredjen";
    }
}

Покренемо програм и проверимо (за конкретне вредности а1, а2, b1, b2, c1 и c2)

Слика 6.22. Изглед форме након покретања програма

Пример 8.Написати програм који одређује да ли квадратна једначина има реална решења и ако их има да их одреди.

Решење :
Посматрајмо квадратну једначину a*x^2+b*x+c=0.
Погледајмо како се понаша график квадратне функције када мењамо вредности коефицијената a, b и c.

Sorry, the GeoGebra Applet could not be started. Please make sure that Java 1.4.2 (or later) is installed and active in your browser (Click here to install Java now)
Анимација 6.2. График квадратне једначине при промени коефицијената

*У случају да се анимација не приказује, притиснути дугме Прикажи слику






Када квадратна једначина има решење?
Њено решење налазимо помоћу формуле
Природа решења зависи од израза D=b^2-4*a*c, који се појављује под кореном у формули за налажење решења.Израз D назива се дискриминанта квадратне једначине.
Ако је дискриминанта D мања од 0, квадратна једначина нема реална решења.
Ако је дискриминанта D јенака 0, квадратна једначина има једно двоструко реално решење,
облика x=-b/(2*a).
Ако је дискриминанта D већа од 0, квадратна једначина има два разлићита реална решење, облика :

Правимо форму облика:Слика 6.23. Почетни изглед форме
Преименујемо label-e и button1Слика 6.24. Изглед форме након преименовања компоненти

Кликом на дугме, програм треба да нам врати реална решење квадратне једначине, за коефицијенте које смо унели. Да би се то остварило потребно је да функцију дугмета повежемо са подацима које уносимо. Реализација функције дугмета постиже се писањем одговарајућег кода у делу програма које се отвара двоструким кликом на дугме (button1) :

private void button1_Click(object sender, EventArgs e)
{
    //Promenljive koje koristimo
    double a, b, c, x, x1, x2;
    a = double.Parse(textBox1.Text);
    b = double.Parse(textBox2.Text);
    c = double.Parse(textBox3.Text);
    //D je disktiminanta
    double D;
    D = b * b - 4 * a * c;
    //Ako je diskriminanta manja od 0
    if (D < 0)
        //Ispisujemo resenje
        label5.Text = "Kvadratna jednacina nema resenja.";
    //U suprotnom ako je diskriminanta jednaka 0
    else if (D == 0)
    {
            //U ovom slucaju kvadratna jednacina ima jedno resenje x
            x = (-b) / (2 * a);
            //Ispisujemo resenje
            label5.Text = "Kvadratna jednacina ima jedno resenje x = " + x;
     }
    //U suprotnom je diskriminanta veca od 0
    else 
    {  
            //U ovom slucaju kvadratna jednacina ima dva resenja x1 i x2
            //Visual C# ima ugradjenu funkciju za racunanje kvadratnog korena Math.Sqrt()
            x1 = (-b + Math.Sqrt(D)) / (2 * a);
            x2 = (-b - Math.Sqrt(D)) / (2 * a);
            //Ispisujemo resenje
            label5.Text = "Kvadratna jednacina ima dva resenja x1 = " + x1 + " i x2 = " + x2;
    }
}

Пример 9. Написати програм који за унете коефицијенте враћа међусобни положај две праве у равни, ако су њихове једначине задате у експлицитном облику.

Решење :
Погледајмо у каквом положају могу бити две праве, када им мењамо коефицијенте.

Sorry, the GeoGebra Applet could not be started. Please make sure that Java 1.4.2 (or later) is installed and active in your browser (Click here to install Java now)
Анимација 6.3. Положај две праве при промени коефицијената

*У случају да се анимација не приказује, притиснути дугме Прикажи слику






Како је y=k*x+n једначина праве у експлицитном облику.
Ако су праве дате у експлицитном облику њихове једначине су:
y=k1*x+n1 и y=k2*x+n2 тада:
Ако је k1=k2 праве су парелелне (нпр. као праве a и b са слике) ,
ако је поред k1=k2 и n1=n2 очигледно се ради о истој правој
(која је такође паралелна сама себи).
Ако је k1 различито од k2 и важи да је 1+k1*k2=0 онда
праве су ортогоналне (као праве c и d).
Ако је само k1 различито од k2 праве се секу
(као праве a и c или a и d или b и c са слике).



Правимо форму облика:Слика 6.25. Почетни изглед форме
Преименујемо label-e и button1Слика 6.26. Изглед форме након преименовања компоненти

Кликом на дугме, програм треба да нам врати међусобни положај две праве, за коефицијенте k и n које смо унели. Да би се то остварило потребно је да функцију дугмета повежемо са подацима које уносимо. Реализација функције дугмета постиже се писањем одговарајућег кода у делу програма које се отвара двоструким кликом на дугме (button1) :

private void button1_Click(object sender, EventArgs e)
{
    //Promenljive koje koristimo
    double k1, k2, n1, n2;
    //Koeficijenti prve prave
    k1 = double.Parse(textBox1.Text);
    n1 = double.Parse(textBox2.Text);
    //Koeficijenti druge prave
    k2 = double.Parse(textBox3.Text);
    n2 = double.Parse(textBox4.Text);
    //Ako su koeficijenti k1 i k2 jednaki
    if (k1 == k2)
    {   
       //Ako su i koeficijenti n1 i n2 jednaki
       if (n1 == n2)
            //Ispisujemo resenje
            label6.Text = "Uneli ste koordinate iste prave.";
       //U suprotnom n1 i n2 su razliciti
       else
            //Ispisujemo resenje
            label6.Text = "Prave su paralelne.";
    }
    //U suprotnom su k1 i k2 razliciti
    else
    {
        //Ako za k1 i k2 vazi da је 1+k1*k2 једнако 0
        if (1 + k1 * k2 == 0)
            //Ispisujemo resenje
            label6.Text = "Prave su ortogonalne.";
        //U suprotnom k1 i k2 su razliciti,ali ne vazi да је 1+k1*k2 једнако 0
        else
            //Ispisujemo resenje
            label6.Text = "Prave se seku.";
    }
}

Покренемо програм и проверимо (нпр. за праве са слике) :

Слика 6.27. Изглед форме након покретања програма

Пример 10. Написати програм који за унете координате тачке враћа у ком квадранту у равни се налази та тачка.

Решење :
Раван је двема ортогоналним правама подељена на четири квадранта. У зависности од знака координата тачке одредићемо њен положај.


Sorry, the GeoGebra Applet could not be started. Please make sure that Java 1.4.2 (or later) is installed and active in your browser (Click here to install Java now)
Анимација 6.4. Положај тачке у квадрантима



Посебно ако унесемо
(0,0) имамо координатни почетак тачка А. Ако нам је координата у=0 а х различито од 0, тачка нам се налази на х оси као тачке В и В1 у зависности да ли је х веће или мање од 0. Или ако нам је координата x=0 а у различито од 0, тачка нам се налази на у оси као тачке С и С1 у зависности да ли је у веће или мање од 0. За х и у веће од 0, тачка се налази у првом квадранту као тачка D. За х мање од 0 и у веће од 0, тачка се налази у другом квадранту као тачка Е. За х и у мање од 0, тачка се налази у трећем квадранту као тачка F. За х веће од 0 и у мање од 0, тачка се налази у четвртом квадранту као тачка G.

*У случају да се анимација не приказује, притиснути дугме Прикажи слику




Правимо форму облика:Слика 6.28. Почетни изглед форме
Преименујемо label-e и button1Слика 6.29. Изглед форме након преименовања компоненти

Кликом на дугме, програм треба да нам врати у ком квадранту нам се налази тачка чије смо координате унели. за коефицијенте које смо унели. Да би се то остварило потребно је да функцију дугмета повежемо са подацима које уносимо. Реализација функције дугмета постиже се писањем одговарајућег кода у делу програма које се отвара двоструким кликом на дугме (button1) :

private void button1_Click(object sender, EventArgs e)
{
    //Promenljive koje koristimo
    double x, y;
    x = double.Parse(textBox1.Text);
    y = double.Parse(textBox2.Text);
    //Ako je koordinata x jednaka 0
    if (x == 0)
    {
        //Ako je i koordinata y jednaka 0
        if (y == 0)
           //Ispisujemo resenje
           label4.Text = "Uneli ste koordinate koordinatnog pocetka";
        //Ako je koordinata y razlicita od 0
        else
            //Ispisujemo resenje
            label4.Text = "Tacka se nalazi na y osi";
    }
    //Ako je koordinata x razlicita od 0
    else
    {
        //Ako je koordinata y jednaka 0
        if (y == 0)
            //Ispisujemo resenje
            label4.Text = "Tacka se nalazi na x osi";
        //Ako je koordinata y razlicita od 0
        else
            //Ako je koordinata y veca od 0
            if (y > 0)
                {
                    //Ako je i koordinata x veca od 0
                    if (x > 0)
                        //Ispisujemo resenje
                        label4.Text = "Tacka se nalazi u prvom kvadrantu";
                    //U suprotnom koordinata x je manja od 0
                    else
                        //Ispisujemo resenje
                        label4.Text = "Tacka se nalazi u drugom kvadrantu";
                }
             //U suprotnom koordinata y je manja od 0
             else
             {
                //Ako je koordinata x veca od 0
                if (x > 0)
                    //Ispisujemo resenje
                    label4.Text = "Tacka se nalazi u cetvrtom kvadrantu";
                //U suprotnom je koordinata x manja 0
                else
                    //Ispisujemo resenje
                    label4.Text = "Tacka se nalazi u trecem kvadrantu";
             }
    }
}

Покренемо програм и проверимо (нпр.за тачке са слике A, B, B1, C, C1, D, E, F, G):

Слика 6.30. Изглед форме након покретања програма