Docsity
Docsity

Pripremite ispite
Pripremite ispite

Studirajte zahvaljujući brojnim resursima koji su dostupni na Docsity-u


Nabavite poene za preuzimanje
Nabavite poene za preuzimanje

Zaradite bodove pomažući drugim studentima ili ih kupite uz Premium plan


Školska orijentacija
Školska orijentacija

39658680 c srpski uvod, Rezime od Programiranje

programiranje C

Tipologija: Rezime

2014/2015

Učitan datuma 06.07.2015.

zoran.vasic.1001
zoran.vasic.1001 🇸🇷

3 dokumenti

Delimični pregled teksta

Preuzmite 39658680 c srpski uvod i više Rezime u PDF od Programiranje samo na Docsity! C# SADRŽAJ VEŽBI I C# JEZIK 1. UVOD U C# (MICROSOFT VISUAL C# 2010 EXPRESS) 2. TIPOVI PODATAKA, PROMENLJIVE, OPERATORI 3. KONTROLA TOKA PROGRAMA (GRANANJE I CIKLUSI) 4. FUNKCIJE 5. NIZOVI I STRUKTURE 6. KLASE, METODE I OBJEKTI 7. NASLEĐIVANJE, POLIMORFIZAM 8. DODATNE TEHNIKE OOP II WINDOWS PROGRAMIRANJE 9. OSNOVNO WINDOWS PROGRAMIRANJE (DUGMIĆI, LABELE, TEXTBOX, ...) 10. NAPREDNE WINDOWS FORME (MENIJI, TOOOLBAR, KREIRANJE APLIKACIJA I KONTROLA) III PRISTUP PODACIMA 11. RAD SA FAJLOVIMA 12. LINQ PAGE \* MERGEFORMAT 14 Nastanak C# C# je jednostavan objektno-orijentisan programski jezik opšte namene. Razvio ga je Microsof tim koji je vodio Andres Hejlsberg. Poslednja verzija C# je 4.0 koja je završena 12. Aprila 2010. god. Prva verzija (C# 1.0) se pojavila 2001.godine, pa su se ubrzo pojavljivale nove verzije ovog programskog jezika. Pošto je naslednik C i C++ jezika, dobio je ime sharp po inspiraciji muzičke notacije i znači da se napisana nota izvodi za pola koraka više. C# je naprednija verzija C++ (C++++). Fajlovi pisani u ovom jeziku imaju ekstenziju cs. Šta je .NET Framework? NET Framework je revulucionarna platofrma koju je kreirao Microsoft za razvoj aplikacija. To je takva platforma na kojoj mogu raditi različite vrste aplikacija (Windows aplikacije, Web aplikacije, Web servisi...). NET Framework je dizajniran tako da može koristiti bilo koji programski jezik kao što su C++, Visual Basic, Jscript, čak i ranije verzije Cobol. Takođe je moguće da se kombinuju pojedini delovi koda iz različitih programskih jezika. Npr. kod napisan u C# se može kombinovati sa kodom iz Visual Basica. NET Framework sadrži veliku biblioteku koda koji može da koristi klijentski jezik (kao što je C#) koristeći tehnike objektno-orijentisanog programiranja. Ova biblioteka se sastoji od različitih modula, pri čemu je moguće koristiti pojedine delove u zavisnosti od potrebe. Tako npr. neki moduli sadrže blokove za kreiranje windows aplikacija, drugi deo za mrežno programiranje, a neki drui za Web razvoj. Neki moduli su podeljeni u neke specifičnije pod module. Objektno - orijentisano programiranje (Klase, objekti i metode) Objekat je primerak (instanca) klase. Klasa predstavlja skup podataka i instrukcija koje se izvode na nekim podacima. Klasa je skup pravila koji određuju kako će se formirati neki objekat. Svaka klasa ima svoje članove i to su podaci i kod. Podaci koji se definišu u klasi obično se nazivaju polja (fields). Ovde se koriste termini kao što su funkcija (metoda) koja predstavlja kod programa koji se izvršava nad podacima. Metodi su ustvari podprogrami i oni mogu imati svojstva, događaje i konstruktore. Metodi se izvršavaju nad poljima koja su definisana u klasi. Ključne reči u C# abstract as base bool break byte case catch char checked class const continue decimal default delegate do double else enum event explicit extern false finally fixed float for foreach goto if implicit in in (generic modifier) int interface internal is lock long namespace new null object operator out out (generic modifier) override params private protected public PAGE \* MERGEFORMAT 14 Komentari se koriste da bi aplikaciju razumeli oni koji ne znaju šta taj program radi. Može se odnositi na više linija koda ili na jednu liniju. Zbog toga se koriste komentari za blokove ili linijski komentari. Komentari za blok instrukcija se pišu tako što počinju sa "/*" nakon čega sledi tekst komentara, a završavaju se sa"*/". Ovakvi komentari se obično pišu u više redova. Ukoliko se komenar piše u jednom redu, on počinje sa "//" a završava se sa enterom. Osnovna njihova namena je da objasne deo koda koji se nalazi u toj liniji, pa se zato nazivaju linijski komentari. Komentari u C# su obično obojeni zeleno. Primer 3. Primena komentara u konzolnoj aplikciji. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { double prviBroj, drugiBroj;//realne promenljive string korisnickoIme;//string koji se unosi Console.WriteLine("Unesi svoje ime:"); korisnickoIme = Console.ReadLine();/* sa metodom ReadLine() se unosi prvi string koji ne stoji kao argument*/ Console.WriteLine("Zdravo {0}!", korisnickoIme);/* {0} oznacava mesto gde ce se stampati sadržaj promenljive korisnickoIme*/ Console.WriteLine("Unesi prvi broj:"); prviBroj = Convert.ToDouble(Console.ReadLine());/*konvertuje string u double tip */ Console.WriteLine("Unesi drugi broj"); drugiBroj = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Zbir broja {0} i {1} je {2}.", prviBroj, drugiBroj, prviBroj + drugiBroj); /*sa {0}, {1} i {2} su predstavljena mesta za tri promenljive*/ Console.WriteLine("Razlika {0} i {1} je {2}.", drugiBroj, prviBroj, prviBroj - drugiBroj); Console.WriteLine("Proizvod {0} i {1} je {2}.", prviBroj, drugiBroj, prviBroj * drugiBroj); Console.WriteLine("Kolicnik {0} i {1} je {2}.", prviBroj, drugiBroj, prviBroj / drugiBroj); Console.WriteLine("Ostatak deljenja {0} i {1} je {2}.", prviBroj, drugiBroj, prviBroj % drugiBroj); Console.ReadKey(); } } } Promenljive i tipovi podataka Promenljive se moraju na početku deklarisati pre upotreba. Tipovi podataka u C# su dati u tabeli 1. Tabela 1. Tipovi podataka u C# Tip Značenje bool Predstavlja true/false vrednosti byte 8-bitni pozitivna celobrojna vrednost char Znakovne vrednosti decimal Numerički tip vrednosti za finansijske obračune PAGE \* MERGEFORMAT 14 double Realne vrednosti dvostruke preciznosti float Realne vrednosti int Celobrojne vrednosti (32 bitne) long Celobrojne vrednosti većeg opsega (64 bitne) sbyte 8-bitna celobrojna označena (+ i -) vrednost short 16-bitna celobrojna vrednost uint Neoznačena celobrojna vrednost ulong Neoznačena celobrojna vrednost većeg opsega ushort Neoznačena celobrojna vrednost manjeg opsega Operatori mogu biti: unarni - izvršavaju se na jednom operandu (promenljivoj) binarni - koriste se u kombinaciji sa dva operanda tenarni - koristi se u kombinaciji sa tri operanda (kondicionalni operator a:b?c) Konvertovanje promenljivih Tipovi konverzije promenljivih mogu biti: Implicitna konverzija-konverzija iz tipa I u tip II je moguća u svim slučajevima, i pravila izvođenja konverzije su jednostavna. Eksplicitna konverzija-konverzija iz tipa I u tip II je moguća samo u određenim slučajevima ili su pravila za konverziju prilično komplikovana. Tabela 2. Implicitna konverzija tipova u C# Tip Konverzija sbyte short, int, long, float, double ili decimal byte short, ushort, int, uint, long, ulong, float, double ili decimal short int, long, float, double ili decimal ushort int, uint, long, ulong, float, double ili decimal int long, float, double ili decimal uint long, ulong, float, double ili decimal long float, double ili decimal char ushort, int, uint, long, ulong, float, double ili decimal float double ulong float, double ili decimal Tabela 3. Eksplicitna konverzija tipova u C# Tip Konverzija sbyte byte, ushort, uint, ulong ili char byte sbyte ili char short sbyte, byte, ushort, uint, ulong ili char ushort sbyte, byte, short ili char PAGE \* MERGEFORMAT 14 int sbyte, byte, short, ushort, uint, ulong ili char uint sbyte, byte, short, ushort, int ili char long sbyte, byte, short, ushort, int, uint, ulong ili char ulong sbyte, byte, short, ushort, int, uint, long ili char char sbyte, byte ili short float sbyte, byte, short, ushort, int, uint, long, ulong, char ili decimal double sbyte, byte, short, ushort, int, uint, long, ulong, char, float ili decimal decimal sbyte, byte, short, ushort, int, uint, long, ulong, char, float ili double PAGE \* MERGEFORMAT 14 Console.WriteLine("Faktorijel je " + fact); } } } while ciklus Ovaj ciklus se koristi u slučaju kada je nepoznat broj iteracija (ponavljanja) ciklusa. Opšti oblik while ciklusa je: while(uslov) izraz; Primer 5. Napisati konzolnu aplikaciju za unos nekog celog broja i ispisivanje stepena od 1 do n zadatog broja. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class MainClass { public static void Main() { int i, e, n, broj; int rezultat; Console.WriteLine("Uneti broj ciji se stepen trazi "); broj = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Uneti stepen koji se trazi "); n = Convert.ToInt32(Console.ReadLine()); for (i = 0; i < n; i++) { rezultat = 1; e = i; while (e > 0) { rezultat *= broj; e--; } Console.WriteLine(broj + " na " + i + " je " + rezultat); } } } } do while ciklus do-while ciklus se mora izvršiti bar jednom. Opšti oblik ovog ciklusa je: do { izrazi; } while(uslov); Primer 6. Napisati konzolnu aplikaciju na primeru proračuna broja godina do koje treba određeni ulog banke da naraste. using System; PAGE \* MERGEFORMAT 14 using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { double ulog, kamatnaStopa, krajnjiUlog; Console.WriteLine("Koliki je vas ulog u banci?"); ulog = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Kolika je kamatna stopa (u %)?"); kamatnaStopa = 1 + Convert.ToDouble(Console.ReadLine()) / 100.0; Console.WriteLine("Do koje vrednosti uloga zelite da dodjete?"); krajnjiUlog = Convert.ToDouble(Console.ReadLine()); int ukupnoGodina = 0; do { ulog *= kamatnaStopa; ++ukupnoGodina; } while (ulog < krajnjiUlog); Console.WriteLine("Za {0} god. ulog ce dostici {1}.",ukupnoGodina, ulog); Console.ReadKey(); } } } Primer 7. Napisati konzolnu aplikaciju za unos celog broja i ispisivanje tog broja u inverznom poretku. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class MainClass { public static void Main() { int broj; int sledecibroj; Console.WriteLine("Uneti broj"); broj = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Uneti broj je: " + broj); Console.Write("Broj u inverznom poretku je: "); do { sledecibroj = broj % 10; Console.Write(sledecibroj); broj = broj / 10; } while (broj > 0); Console.WriteLine(); } } } PAGE \* MERGEFORMAT 14 foreach ciklus foreach ciklus se koristi za adresiranje svakog elemena u nizu koristeći sledeću sintaksu: foreach (<osnovni tip> <ime> in <niz>) { može se koristi <ime> za svaki element } Ovaj ciklus ide kroz svaku promenljivu i postavlja je u promenljivu <ime>. Ne mora se voditi računa koliko je elemenata u nizu npr.: Primer 8. Napisati konzolnu aplikaciju za primenu foreach ciklusa.. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Ciklusi { class Program { static void Main(string[] args) { string[] imenaGlumaca = { "Matthew McConaughey", "Brus Willis", "Al Pacino"}; Console.WriteLine("Ovo su {0} moja omiljena glumca:", imenaGlumaca.Length); foreach (string imeGlumca in imenaGlumaca) { Console.WriteLine(imeGlumca); } Console.ReadKey(); } } } Funkcije Kada je reč o funkcijama prvo treba objasniti funkciju Main(). Ova funkcija kao rezultat vraća void ili int, a može se uključiti string[] args parametar, pa su moguće sledeće verzije ove funkcije: static void Main() static void Main(string[] args) static int Main() static int Main(string[] args) Opcionalni parametar args u Main() funkciji obezbeđuje način za dobijanje informacija izvan aplikacije. Funkcije u C# predstavljaju blokove koda koji se mogu izvršavati u bilo kom delu aplikacije. Kod OOP funkcije se nazivaju metode, ali taj termin će se kasnije koristiti kod klasa. Tako na primer, ako se u traži ispis nekog teksta, može se pozvati funkcija u bilo kom delu aplikacije, a dovoljno je samo jednom da se napiše. Funkcije utiču na čitljivost koda. Definicija i poziv funkcije PAGE \* MERGEFORMAT 14
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved