Tutoring System for Distance Learning of Java Programming

Download Report

Transcript Tutoring System for Distance Learning of Java Programming

Petak: I čas: 17:40 – 18:25 II čas: 18:35 - 19:20 III čas: 19:30 – 20:15

Primena integrisanih razvojnih alata

Dejan Sredojević

Konsultacije: petak 15:40-17:40, kabinet 4 e-mail: [email protected]

Primena integrisanih razvojnih alata     Fond časova: 3+3 Broj ESPB: 7 Ocena znanja (max. broj poena je 100) Minimum bodova za prolaz: 35+15

Predispitne obaveze Projekat Aktivnost na predavanjima Aktivnost na vežbama Prisustvo 55 (minimum 35) 5 5 5 Ispit 30 (minimum 15) 2

Literatura

    Materijal sa predavanja i vežbi na sajtu Škole Lemay L., Cadenhead R.,

Java Naučite za 21 dan,

Kompjuter, biblioteka Eckel B.,

Thinking in Java

Dokumentacija (tutoriali) sa sajta http://www.netbeans.org/

3

Tehnologije

 Programski jezik: Java  Razvojni alat: NetBeans 7.0

 XAMPP paket koji u sebi ima MySql server

4

Programski jezik Java

 U jesen 1995. godine Sun Microsystems prvi put je predstavio programski jezik Java  Java je objektno-orijentisani, nezavistan od platforme (mogućnost programa da se izvršava bez modifikacija u okviru različitih radnih okruženja)  Nekoliko popularnih razvojnih okruženja: JBuilder, Eclipse, NetBeans

5

Programski jezik Java

 Opšta sintaksa samostalne aplikacije u Javi:

class { public static void main(String args[]){ izrazi; ————————; ————————; } } 6

Primer Java programa

 Program koji ispisuje “Hello World”

class HelloWorldApp { public static void main(String[] args) { // ispis stringa.

System.out.println("Hello World!"); } } 7

Osnovni elementi

 Osnovni elementi Jave pomoću kojih se komponuju složenije konstrukcije jezika:  Identifikatori   Literali Specijalni simboli  Rezervisane reči

8

Identifikatori

   Koriste se za označavanje različitih konstrukcija programa: promenljivih, metoda, klasa, interfejsa, metoda,...

Niz slova i/ili cifara koji počinje slovom i razlikuje se od svake rezervisane reči   Slova su sva slova, “$” i “_” Cifre su 0,1,2,...,9 Primeri:  ime_i_prezime, temp, var2sp, upisiBroj

9

Literali

 Literale u Javi čine:      Brojevi   234 3.14

 4.0E-74 znakovne konstante  ‘h’ stringovske konstante  “Novi Sad” logičke konstante

true

konstanta

null

i

false 10

Specijalni simboli

> < !

~ ?

== <= >= * - + != && || ++ / & veće manje negacija negacija nad bitovima uslovni operator jednako manje ili jednako veće ili jednako nejednako uslovna konjukcija uslovna disjunkcija povećanje vrednosti za jedan smanjenje vrednosti za jedan sabiranje ili predznak oduzimanje ili predznak množenje deljenje konjunkcija i konjunkcija nad bitovima | ^ % << >> >>> = += -= *= /= &= |= ^= %= <<= >>= disjunkcija i disjunkcija nad bitovima eksluzivna disjunkcija ostatak pri deljenju pomeranje bitova u levo pomeranje bitova u desno pomeranje bitova u desno operator dodele dodela sa prethodnim sabiranjem dodela sa prethodnim oduzimanjem dodela sa prethodnim množenjem dodela sa prethodnim deljenjem dodela sa prethodnom primenom & dodela sa prethodnom primenom | dodela sa prethodnom primenom ^ dodela sa prethodnom primenom % dodela sa prethodnom primenom << dodela sa prethodnom primenom >>

Rezervisane (ključne) reči

 Koriste se za opis naredbi programa i imaju tačno određeno značenje

abstract boolean break byte default do double else if implements import instanceof package private protected public this throw throws transient case try extends const int for return new switch null strictfp continue catch while final goto interface synchronized short void super char class finally float long native static assert volatile 12

Pravila imenovanja:

    Nazivi promenljivih : sadrže slova, brojeve, ‘$’ (simbolom dolara), ili ‘_’ (donjom crtom); ne smeju početi sa cifrom Nazivi metoda : glagoli zapisani sa malim početnim slovom, svaka naredna reč naziva se piše velikim početnim slovom  Primer: promeniBojuOkvira() Nazivi klasa i interfejsa : Opisni nazivi sa velikim početnim slovom Nazivi konstanti : Velikim slovim  Primer: Font.BOLD, Font.ITALIC

13

Komentari

 Delovi programa koji ne utiču na smisao i suštinu programa i zenemaruju se prilikom prevođenja

Simboli // /* ————— */ /** —————*/ Upotreba

Od simbola do kraja reda pretvara u komentar komentar na proizvoljnom mestu u kodu Komentar za automatsko generisanje dokumentacije programa

14

Prosti tipovi podataka

    Celobrojni   int short   long byte Realni brojevi   float double Znakovni  char Logički  boolean

15

Prosti tipovi podataka

Prosti tip boolean char byte short int long float double void Veličina

— 16-bit 8-bit 16-bit 32-bit 64-bit 32-bit 64-bit —

Minimum

— Unicode 0 -128 -2 15 - 2 31 -2 63 IEEE754 IEEE754 —

Maximum

— Unicode 2 16 - 1 +127 +2 15 —1 +2 31 —1 +2 63 —1 IEEE754 IEEE754 —

16

Deklaracija promenljivih

Deklaracija promenljivih: Primer:

int num1;

Inicijalizacija promenljivih: < tip podataka > < naziv promenljive > = vrednost Primer:

double num2 = 3.1419; float initVal; int pom, index = 2; double gamma = 1.2, brightness; boolean valueOk = false; 17

Deklaracija promenljivih

int index = 2; double fiveFourths = 5 / 4;

naziv tipa naziv promenljive vrednost

Boolean prekinut = false; 18

Deklaracija promenljivih

int index = 1.2; // greška boolean retOk = 6; // greška double fiveFourths = 5 / 4; // nema greške float ratio = 5.8f; // ispravno double fiveFourths = 5.0 / 4.0; // ispravno

  1.2f predstavlja float vrednost sa tačnošću od 7 decimala 1.2 predstavlja double vrednost sa tačnošću od 15 decimala

19

Naredba dodele

int x = 5; int y = 2; int z = 4; z = z/y; x = x*y + z; y = x*(y + z); System.out.println(z); System.out.println(x); System.out.println(y); 20

Primer

Napisati program koji izračunava zbir dva broja public class AddTwoInts { public static void main(String[] args) { int prviBroj = 7; int drugiBroj = 8; int suma; suma = prviBroj + drugiBroj; System.out.print("Rezultat je: " +suma); } }

21

Naredba dodele

Napisati program koji štampa istinitosnu vrednost izraza: 2 + 2 = 4

public class Demo { public static void main (String[] arg) { boolean b; b = (2 + 2 == 4); System.out.println(b); } } 22

Primer programa

Napisati program koji ispisuje trenutni datum i vreme

import java.util.*; public class HelloDate { public static void main(String[] args) { System.out.println(“Pozdrav, sad je: "); System.out.println(new Date()); } } 23

Razlika između

i++

i

++i class PrePostDemo { public static void main(String[] args){ int i = 3; i++; System.out.println(i); // "4" ++i; System.out.println(i); // "5" System.out.println(++i); // "6" System.out.println(i++); // "6" System.out.println(i); // "7" } } 24

Izrazi & Blokovi

   Izraz je komanda koja se završava sa “;”:

ime = “Fred”;

Blok je niz izraza koji se nalaze između vitičastih zagrada:

{ ime1 = “Fred”; ime2 = “Rale”; }

Blokovi mogu sadržati druge blokove

25

2. čas Grananje, petlje

Kontrola toka programa

  Java izvršava izraz za izrazom u redu u kojem su zapisani Postoji više Java naredbi koje služe sa kontrolu toka programa: Naredbe grananja: Petlje: Naredbe prekida:

if, if else, switch for, while, do while break, continue, return 27

Kontrola toka programa

Kontrola toka programa:

if – else switch – case return while do – while for break continue

• Naredbe:

try – catch – finally throw 28

if

– naredba grananja

   

if

naredba utvrđuje istinitost izraza u zagradi i ako je tačna izvršavaju se zadate akcije

if ( x < 10 ) x = 10;

Ako je vrednost promenljive x manja od deset tada se promenljivoj dodeljuje vrednost 10 Moguće je zapisati i:

if ( x < 10 ) x = 10;

Ili:

if ( x < 10 ) { x = 10; } 29

== != >= <= > <

Relacioni operatori

jednakost nejednakost veće ili jednako manje ili jednako veće manje

30

if

naredba

 If...else izraz sintaksa:

if(uslov){ izrazi; } else{ izrazi; } 31

if… else

if … else

izraz ispituje tačnost izraza. Izvršava se jedan niz naredbi ako je vrednost

true

ili drugi niz naredbi ako je vrednost

false

.

if (x != oldx) { System.out.print(“x je promenjena”); } else { System.out.print(“x nije promenjena”); } 32

Ugnježdeni

if … else

if ( value1 > 100 ) { if ( value2 == true) { value1 = value1 % 100; } else { value1 = value1 / 100.0; } }else{ System.out.print(“value1 is in range”); } 33

else if

 Koristan za izbor između više mogućnosti:

if ( n == 1 ) { // izvršavanje prvog bloka naredbi } else if ( j == 2 ) { // izvršavanje drugog bloka naredbi } else { //ako ni jedan od predhodnih uslova nije //zadovoljen vrši se izvršavanje trećeg //bloka naredbi } 34

Upozorenje…

Neispravno!

if( i == j ) if ( j == k ) System.out.print(“i je jednako k”); else System.out.print( “i nije jednako j”);

Ispravno !

if( i == j ) { if ( j == k ) System.out.print(“i jednako k”); } else{ System.out.print(“i nije jednako j”); } 35

Primer

if

naredbe

int x = 5; int y = 7; if (x > y){ System.out.println(x + " je veci od " + y); }else{ System.out.println(x + " nije veci od " + y); } 36

Primer

if

naredbe

double vrednostProdaje = 0.0; int brojProdaja = 0; if (vrednostProdaje >= 85000 || brojProdaja > 10){ System.out.println(“Vas bonus je: $2,000."); } if ( brGodina < 19 && ocena >= 3.0 ){ System.out.println(“primljeni ste"); } 37

Primer

if

naredbe

if( grade > 90 ){ System.out.println(“Odlicno!"); }else if( grade > 60 ){ System.out.println(“Vrlo dobro!"); }else{ System.out.println(“Zao nam je, pali ste"); } 38

Uslovni (ternarni) operator

test ? rez1 : rez2; int a, b=3, c=5; a=(b>c)?10:20; int a, b=3, c=5; if(b>c){ a=10; }else{ a=20; } 39

switch

naredba

 Sintaksa switch naredbe:

switch(promenljiva){ // promenljiva ima celobrojnu ili logicku //vrednost case(vrednost1): izrazi; break; case(vrednost2): izrazi; break; ...

default: izrazi; break; } 40

switch

naredba

switch ( n ) { case 1: // izvršavanje prvog bloka naredbi break; case 2: // izvršavanje drugog bloka naredbi break; default: // ako ni jedan od predhodnih uslova //nije zadovoljen vrši se izvršavanje //trećeg bloka naredbi break; } 41

Primer

switch

class SwitchDemo { } public static void main(String[] args) { int month = 8; switch (month) { case 1: System.out.println("January"); break; case 2: System.out.println("February"); break; case 3: System.out.println("March"); break; case 4: System.out.println("April"); break; case 5: System.out.println("May"); break; case 6: System.out.println("June"); break; case 7: System.out.println("July"); break; case 8: System.out.println("August"); break; case 9: System.out.println("September"); break; case 10: System.out.println("October"); break; case 11: System.out.println("November"); break; case 12: System.out.println("December"); break; default: System.out.println("Invalid month."); } }

42

for

petlja

 Sintaksa for petlje:

for(inicijalizacija; uslov; inkrement){ izrazi; } 43

for

petlja

 Izvršavanje n puta

for ( i = 0; i < n; i++ ) { // ovaj deo petlje će se izvršiti n puta // i ide od 0 do n-1 }

 Ugnježdeni for:

for ( j = 0; j < 10; j++ ) { for ( i = 0; i < 20; i++ ){ // ovaj deo petlje će se izvršiti 200 puta } } 44

Primer

for

class ForDemo { public static void main(String[] args){ for(int i=1; i<11; i++){ System.out.println(i); } } } 1 2 3 4 5 6 7 8 9 10 45

Primer for petlja

 Napisati program koji ispisuje sve parne brojeve od 1 do 30

public class parniDo30{ public static void main(String[] args){ System.out.println(“Parni od 1 do 30 su:"); for (int i = 2 ; i <= 30 ; i += 2){ System.out.println(i); } } } 46

while

petlja

 Sintaksa

while

petlje

while(uslov){ izrazi; } 47

Primer

while

class Count { } public static void main(String[] args){ int count = 1; while (count < 11) { System.out.println(count); count++; } } 48

do while

petlja

 Sintaksa

do...while

petlje

do{ izrazi; }while(uslov);

 Primer:

int x = 1; do { System.out.println(x); x++; }while (x<10); 49

break

naredba

break

naredba izvršava bezuslovni izlazak iz

while

,

do

,

for

ili

switch

petlje

for ( int i = 0; i < maxID, i++ ) { if ( userID[i] == targetID ) { index = i; break; } } // program jumps here after break 50

Primer

while

naredbe

Fibonacci:

class Fibonacci { public static void main(String[] arg) { int lo = 1; int hi = 1; System.out.println(lo); while (hi < 50) { System.out.println(hi); hi = lo + hi; lo = hi – lo; } } } 51

Treći čas Metodi i nizovi

Metodi

   Metod predstavlja imenovani segment koda koji se može pokrenuti u drugom delu koda.

Metod preuzima neke parametre, izvršava neka izračunavanja ili akcije i opciono vraća neku povratnu vrednost Pozivi metoda se mogu koristiti kao deo izraza

public float convertCelsius(float tempC) { return( ((tempC * 9.0f) / 5.0f) + 32.0 ); } 53

Metod - sintaksa

 Deklaracija metoda:

{ telo metoda; } 54

Obavezni delovi metode

 Jedini obavezni delovi deklaracije metoda su:   Povratni tip Naziv metode   Par običnih zagrada Telo metode oukvireno vitičastim zagradama primer:

void prikazi (){ telo metoda; } 55

Svih šest komponenata:

      Modifikatori - public, private Povratni tip – tip vrednosti koju metod vraća kao svoj rezultat ili void ako ne vraća nikakvu vrednost Naziv metoda – koje će jasno objasniti funkciju metoda Lista parametara u običnim zagradama, razdvojenih zarezom, predstavljenih tipom i imenom. Ako metod nema parametara ostavljaju se prazne zagrade Lista izuzetaka Telo metode, ograničeno vitičastim zagradama. Sadrži kod metoda zajedno sa deklaracijom lokalnih promenljivih

56

Zaglavlje metoda

 Zaglavlje metoda sadrži:      Naziv metoda.

Tip i naziv svakog argumenta.

Tip promenljive (ili objekta) koju metod vraća kao povratnu vrednost.

Izuzetke koje metod obrađuje.

Modifikatore za određivanje vidljivosti metoda.

public float convertCelsius (float tCelsius ) {} public boolean postavi(int i, int j, String name) throws IndexOutOfBoundsException {} 57

Public/private

   Metode možemo deklarisati kao public ili private u zavisnosti da li želimo da omogućimo njihovo pozivanje u drugim klasama.

Preporuka je:  Da su podaci privatni  Da su metode privatne Dobro definisana komunikacija između klasa pomaže da se eliminišu greške

58

Primer klase i metoda

Class voce{ int grami; int kalorijePoGramu; } int ukupnoKalorija() { return(grami* kalorijePoGramu); } 59

Definisanje metoda

Svaki se metod definiše unutar definicije klase:

public class Film { public static int ocenaFilma(int s, int g, int r) { return s+g+r; } } public class Demo { public static void main (String argv[]) { int scenario = 6, gluma = 9, rezija = 8; prikaziOcenu(scenario, gluma, rezija); } public static void prikaziOcenu(int s, int g, int r){ System.out.print(“Ocena filma je: ”); System.out.println(Film.ocenaFilma(s, g, r)); } } 60

Primer 1

// definicija metoda public int mult(int x, int y) { return x * y; } // deo koda sa pozivom metoda int duzina = 10; int sirina = 5; int area = mult(duzina, sirina); 61

Primer 2

class Bicikl { int godiste = 0; int brzina = 5; int stepenPrenosa = 1; } void postaviGodiste(int novaVrednost) { godiste = novaVrednost; } void promenaStepenaprenosa(int novaVrednost) { stepenPrenosa = novaVrednost; } void povecajBrzinu(int increment) { brzina = brzina + increment; } void smanjiBrzinu(int decrement) { brzina = brzina - decrement; } void stampajStanja() { } System.out.println("godiste: "+godiste); System.out.println("brzina je: "+brzina); System.out.println("stepen prenosa je: "+stepenPrenosa); 62

Primer 3

public int stepen(int a, int b){ int i; int total = 1; for(i = 0; i < b; i++) total = total * a; return total; } int number = 2; int exponent = 4; number = stepen(number, exponent); System.out.println(“nova vrednost je " + number); 63

Primer 4

public class calculation{ int first, answer; public void paint (){ first = 34; calculation(); } } public void calculation (){ answer = first * 2; } 64

Primer 5

public class Area{ public int izracunajPovrsinu(){ int p = duzina * sirina; return p; } } public static void main(String[] args){ int duzina = 10; int sirina = 5; // poziv metoda } int povrsina = izracunajPovrsinu(); System.out.println(povrsina); } 65

Zadatak

Dat je metod:

public int tryPrimitives(int x, int y) { x = x + 10; y = y + 10; return x; }

Koje su vrednosti promenljivih p, q i r nakon izvođenja narednog koda?

int p = 1; int q = 2; int r = 5; r = tryPrimitives(p, q); 66

Nizovi - array

    Niz je lista sličnih elemenata Niz ima fiksirani:   naziv tip  dužinu Ove tri stvari se deklarišu prilikom kreiranja niza Veličina nizova se ne može menjati tokom izvođenja koda

67

Nizovi

mojNiz =

3

0

6

1

3

2

1

3

6

4

3

5

4

6

1

7 mojNiz ima mesta za 8 elemenata  Elementima se pristupa uz pomoć indeksa niza  U Javi, prvi element niza je na nultoj poziciji

68

Deklaracija nizova

int mojNiz[];

Deklaracija niza: brojeva mojNiz kao niz celih

mojNiz = new int[8];

Rezerviše u memoriji 8 mesta za cele brojeve kojima pristupamo sa:

mojNiz[0] do mojNiz[7]

Moguće je i kombinovati prethodna dva izraza u jednom:

int mojNiz[] = new int[8]; 69

Dodeljivanje vrednosti

  Pristupamo elementima niza uz pomoć indeksa da bi im dodelili vrednosti:

mojNiz[0] = 3; mojNiz[1] = 6; mojNiz[2] = 3;

...

Moguće je kreirati niz i stovremeno mu dodeliti vrednosti:

int mojNiz [] = {3, 6, 3, 1, 6, 3, 4, 1}; 70

Iteracije kroz nizove

for

petlja je korisna pri radu sa nizovima:

int a = 5; int mojNiz[] = new int[10]; for (int i = 0; i < mojNiz.length; i++) { mojNiz [i] = a*i; } 71

Primer niza

class ArrayDemo { public static void main(String[] args) { int[] niz; // deklarise niz integera niz = new int[10]; // zauzima memoriju duzine 10 niz[0] = 100; … niz[9] = 1000; System.out.println("Nulti element niza je: " + niz[0]); System.out.println("1. element niza je: " + niz[1]); System.out.println("2. element niza je: " + niz[2]); System.out.println("3. element niza je: " + niz[3]); System.out.println("4. element niza je: " + niz[4]); System.out.println("5. element niza je: " + niz[6]); System.out.println("6. element niza je: " + niz[7]); System.out.println("7. element niza je: " + niz[8]); System.out.println("8. element niza je: " + niz[9]); System.out.println("5. element niza je: " + niz[5]); } }

72

Nizovi objekata

   Elementi nizova ne moraju biti samo prosti tipovi  Integer, double, float, char Moguće je definisati i nizove objekata:  studenata, knjiga, iznajmljivanja Potrebno je uraditi tri koraka

73

Definisanje nizova objekata

1. Deklarisanje nizova 

private Student listaStudenata[];

Ovim se definiše lista studenata 2. Kreira se niz: 

listaStudenata = new Student[10];

Ovim se obezbeđuje 10 mesta u memoriji koji će čuvati reference ka objektima tipa Student 3. Kreiraju se objekti klase Student i dodele se nizu:

listaStudenata[0] = new Student(“Maja", “Perić"); 74

Čitanje podataka sa konzole

  Jednostavno čitanje podataka sa konzole može se obaviti korišćenjem klase Scanner Konstruktor klase Scanner ovu svrhu ima opšti oblik: koji se koristi u  Scanner(InputStream is) Kojim se pravi objekat tipa Scanner koji tok koristi kao izvor podataka.

 is Sledeći iskaz pravi objekat tipa podrazumevano tastatura: Scanner koji podatke čita sa standardnog ulaza, što je

Scanner consoleIn = new Scanner(System.in);

Napomena: System.in

je objekat tipa InputStream .

75

Primer

import java.util.*; class UnosBroja{ public static void main(String args[]){ Scanner konzUlaz=new Scanner(System.in); int broj=0; System.out.println("Unesite broj: "); broj = konzUlaz.nextInt(); System.out.println(“Unet je broj: "+ broj); } } 76

Zadatak Zadatak 1. Napisati program koji izračunava zbir dva broja koje unosi korisnik

public class Zbir{ public static void main (String[] args) { int br1, br2, suma; Scanner consoleIn = new Scanner(System.in); System.out.println("Unesite prvi broj: " ); br1 = consoleIn.nextInt(); System.out.println("Unesite drugi broj:" ); br2 = consoleIn.nextInt(); suma = br1+br2; System.out.println("Zbir je: " +suma); } } 77

Zadaci

Zadatak 2. Napisati program koji izračunava obim i površinu kruga pri čemu korisnik unosi poluprečnik kruga

import java.util.Scanner; public class Krug { } public static void main (String[] vpar) { double poluprecnik; double obim, povrsina; Scanner consoleIn = new Scanner( System.in ); System.out.print("Unesite poluprecnik kruga: "); poluprecnik = consoleIn.nextDouble(); } povrsina = poluprecnik * poluprecnik * Math.PI; obim = 2 * poluprecnik * Math.PI; System.out.println ("Obim kruga iznosi: " + obim); System.out.println("Povrsina kruga iznosi:" + povrsina); 78

Dodatak NetBeans IDE 6.5

Kreiranje novog projekta

 Pokrenite

NetBeans IDE 7.0

.  Odaberite opciju kao na slici 1.

File > New Project

Slika 1. Kreiranje novog projekta

80

Kreiranje aplikacije

 U dijalogu Java New Project wizard, i odaberite otvorite kategoriju Java Application i pritisnite Next Slika 2. Kreiranje aplikacije

81

Kreiranje aplikacije

 Na stranici Name and Location 1.

2.

3.

4.

5.

uradite kao na slici: U polje Project Name unesite HelloWorldApp . Ostavite Use Dedicated Folder for Storing Libraries checkbox neselektovan. U polje Create Main Class helloworldapp.HelloWorldApp

. unesite Selektujte Set as Main Project . Kliknite Finish

82

Kreiranje aplikacije

Slika3. Kreiranje klase

83

Kreiranje aplikacije

 Nakon toga projekat je kreiran i otvoren. Prozor NetBens IDE bi trebao da prikazuje sledeće komponente:  Listu projekata u prozoru komponenti projekta, kao što su fajlovi sa kodom, biblioteke koje se koriste… Projects , koji sadrži stablo svih    Editor koda Source Editor nazivom HelloWorldApp .

sa otvorenim fajlom pod Prozor za navigaciju Navigator , za brzu navigaciju između elemenata selektovane klase Lista sa rezultatima Tasks kompajliranja i druge komentare. (ako se prikazuje moguće je odabrati sa , koji lista greške prilikom Window>Tasks )

84

Kreiranje aplikacije

85

Kreiranje aplikacije

      Pošto smo čekirali prethodno opciju Create Main Class, IDE je kreirao main klasu umesto nas. Na mesto komenatara: // TODO code application logic here Moguće je uneti proizvoljan kod, na primer: System.out.println("Hello World!"); Izmene se čuvaju sa opcijom File > Save .

IDE ima opciju: Compile on Save projekat da bi se pokrenuo.

, te nije potrebno izričito kompajlirati Za pokretanje programa treba odabrati opciju: Run > Run Main Project (F6). Ako program ne sadrži greške rezultat izvođenja ovog programa se prikazuje:

86

Zadaci if

   Napisati program koji traži od korisnika da unese iznos svoje mesečne plate. Ako je plata veća od 75000, program treba da ispiše poruku o bonusu u iznosu od 1000 dinara. Ako je plata manja od 75000, program treba da ispiše poruku o bonusu od 2000 dinara Napisati program koji traži od korisnika da unese dva broja i kao rezultat ispisuje manji od ta dva.

Napisati program koji traži od korisnika da unese ime i godine starosti deteta kao i rezultat testa. Ako je ili broj godina veće od šest ili rezultat testa veći ili jednak od 85, program treba da ispiše poruku da je dete spremno za prvi razred. Inače, treba ispisati poruku da dete treba da pokusa naredne godine

87

Zadaci Switch

  Napisati program koji od korisnika traži unos dva realna broja a zatim obavlja operaciju u zavisnosti od izbora korisnika. Od korisnika se traži izbor jedne od narednih opcija: zbir, razlika, proizvod, količnik. Pomoć: od korisnika se traži unos broja: 1 za zbir, 2 za razliku, 3 za proizvod, 4 za količnik. Potrebno je koristiti promenljivu tipa int koja će primiti odgovarajuću vrednost Napisati program koji učitava godinu studija studenta u obliku celog broja i zatim štampa da li je student brucoš, student druge godine, student treće godine ili apsolvent u zavisnosti da li je unet broj 1, 2, 3 ili 4. ponuditi rešenje uz pomoć if naredbe kao i uz switch.

88