• Prva verzija C# 1.0 objavljena je 2002. godine (Microsoft)
• Neprestan razvoj, redovno održavanje, slobodan za upotrebu • Osnovna namena: industrijski razvoj softver • Omogućava pisanje konzolnih aplikacija, Windows aplikacija, aplikacija za Web itd. • Objektno orijentisani programski jezik – bazira se na objektima i njihovoj međusobnoj komunikaciji C# Elementi programskog jezika • Azbuka - mala i velika slova engleskog alfabeta, cifre, specijalni znaci (+ - / > itd.) i razdelnici (. : , itd.) • Promenljive - svaka promenljiva mora da se deklariše pre upotrebe (naziv, tip, opciono početna vrednost, vidljivost/prava pristupa (ako je promenljiva članica neke klase) - CaSe sEnSiTiVe • Rezervisane reči • Konstante C# Hello world program • Sve naredbe moraju stajati u klasama - class ime_klase - u primeru cela klasa HelloWorld ima jednu naredbu Console.WriteLine(“”) - klase služe kao kontejneri za podatke i metode za obradu podataka - Svaki C# program mora da ima bar jednu klasu! • using System; - omogućava korišćenje biblioteke System bez eksplicitnog navođenja reči System - klasa Console sa metodama za rad sa konzolom poziva se sa: Console.Writeline(“”) umesto sa System.Console.WriteLine(“”) Pokušajte da obrišete liniju using System! C# Biblioteka System • Sadrži razne klase kao što su -> Console – u njoj se nalaze metode za ispis na konzolu i učitavanje sa konzole) -> Math – u njoj su definisane osnovne matematičke konstante i implementirane matematičke funkcije) C# Hello world program • Ime klase koja sadrži program ne mora da bude isto ili slično imenu datoteke u koju smo smestili klasu - klasa HelloWorld - datoteka main.cs • Da bi program mogao da se izvrši, klasa u koju je smešten mora da sadrži specijalni metod koji se zove Main (razlika u odnosu na main u C) • Od metoda Main program kreće sa izvršavanjem • Main() – metod bez argumenata • void – metod Main ne vraća operativnom sistemu nikakvu vrednost • Metod Main – statički i dinamički Primer 1.
Koristiti samo jedan
metod za ispis! Primer 1.Rešenje
Ono što je u C ____________ , to je u C# metod WriteLine
Primer 1.Rešenje
Ono što je u C funkcija printf , to je u C# metod WriteLine
Primer 2. • string ime; - deklaracija promenljive tipa string - najavili smo kompajleru da ćemo imati promenljivu tipa string koja će se zvati ime - računar u memoriji rezerviše prostor za promenljivu koja se zove ime i u koju može da se smesti neki niz slova - Tip promenljive objašnjava računaru koliko memorije da zauzme za tu promenljivu, kao i to koje operacije se mogu izvoditi sa vrednostima koje su smeštene u promenljivoj. • Console.WriteLine(…) - tekst između navodnika ispisuje na monitoru u jednom redu • ime=Console.ReadLine(); - učitava niz simbola koje unosi korisnik - unos je završen kada korisnik stisne Enter Primer 2. Naredba WriteLine • Oblik naredbe: Console.WriteLine(format, promenljive); ➢format - string koji sadrži tekst i plejs-holdere - plejs-holder ima oblik {0}, {1}, {2}, … i označava prvu, drugu, treću, ... promenljivu sa spiska - indeksi svih nizova u jeziku C# počinju od nule, pa zato {0} označava prvu promenljivu na spisku Write & WriteLine
Koja je razlika između
naredbi Write i WriteLine? Write & WriteLine
Jedina razlika izmedu naredbi Write i WriteLine
je u tome što WriteLine nakon ispisanog teksta pređe u novi red na konzoli, dok Write to ne čini. Primer 3. Primer 3. Rešenje Primer 4. Zbir dva cela broja C# Učitavanje podataka a=int.Parse(Console.ReadLine()); ➢Dve faze: - učitavanje niza simbola - parsiranje učitanog niza Parsiranje je proces kojim se proverava da li je dati niz simbola formiran prema odgovarajućim pravilima. Ako je niz simbola formiran ispravno, metod int.Parse potom određuje mašinsku reprezentaciju tog niza simbola. Ako je korisnik umesto razumne vrednosti uneo neku besmislicu ovaj metod će se pobuniti i generisati izuzetak (engl. exception). Izuzetak ! Zadatak 1. Obim kruga Na programskom jeziku C# napisati program koji za unetu vrednost poluprečnika kruga računa i ispisuje obim tog kruga. Obim kruga se računa prema sledećoj formuli:
NAPOMENA! Koristiti unapred definisanu konstantu PI iz klase