osnove programiranja - cpp i vbafmpe.edu.ba/images/nastava/948/informacioni... · fzf travnik...
TRANSCRIPT
Osnove programiranja
prof.dr. Džemal Kulašin
Kiseljak, juni 2018.
Fakultet za menadžment i poslovnu ekonomijuKatedra za menadžment i IS
Svaki akademski obrazovani korisnik trebao bipoznavati barem osnove programiranja i...
...biti sposoban za korištenje barem jednogjezika za razvoj programa i/ili njihovemodifikacije.
C++... C#... PHP... Java... VB(A)...
Uvod
Fakultet za menadžment i poslovnu ekonomijuKatedra za menadžment i IS
Programski jezik je alat pomoću kojegprogramer kreira sopstvene programe,generirajući posebne instrukcije koje računar"razumije“.
Program je skup instrukcija programskogjezika.
Programski jezici
Fakultet za menadžment i poslovnu ekonomijuKatedra za menadžment i IS
Temeljni programski jezici su C/C++.
C++ je programski jezik koji se koristi kako zarazvoj aplikacija, tako i za razvoj operativnihsistema.
Poseban kvalitet ovog jezika je mogućnostkorištenja komandi jezika visokog nivoa uzistovremenu mogućnost pristupa hardverskimkomponentama.
Osnove jezika C/C++
Fakultet za menadžment i poslovnu ekonomijuKatedra za menadžment i IS
Jezik C++ spada u jezike visokog nivoa, i u tzv.kompajlerske jezike.
Osnove jezika C/C++
Kompajlerski jer...
...program se iz programskog jezika višeg nivoakompajlira (prevodi) do mašinskog jezika, tj.jezika računara!
Faze u programiranju
� Programiranje je zahtjevno, jer računar insistira na jasnoći!?!
� Algoritam!
� Dijagrama toka!
� Naredne faze?
Fakultet za menadžment i poslovnu ekonomijuKatedra za menadžment i IS
Opće faze u razvoju programa su:
- Algoritam
- Dijagram toka
***************************************************************
- Kodiranje (Izvorni program, Source code)
- Prevođenje (Kompajliranje, Compiling)
- Rješenje (Izvršni program, Execute program)
Faze u programiranjuRazrada problema
Fakultet za menadžment i poslovnu ekonomijuKatedra za menadžment i IS
No, da bi uopće pristupili pisanju programskogkoda, potreban je odgovarajući software .
Najbolje je koristiti razvojna okruženja (IDE)pojedinih programskih alata.
IDE - Integrated Development Environment
- Za C/C++ možemo koristiti Dev C++:
Osnove jezika C/C++
IDE jezika C/C++
Fakultet za menadžment i poslovnu ekonomijuKatedra za menadžment i IS
Pored ostalog, podrazumijeva se...
- Poznavanje tipova podataka,
- Deklaracije varijabli, konstanti...
- Korištenje naredbi učitavanja, ispisa...
- Korištenje naredbi za ponavljanje... itd.
Osnove jezika C/C++
Predstavljanje cjelobrojnih podataka:
- int – cjelobrojni podatak - 16 ili 32 bita
- char – mali cjelobrojni podatak (veličina 1 bajt)
Predstavljanje realnih vrijednosti:
- float – realni podatak u jednostrukoj tačnosti (32 bita)
- double – realni podatak u dvostrukoj tačnosti (64 bita)
Osnovni tipovi podataka jezika C/C++
• Rezultati su, takođe, numeričkog tipa
• Operatori inkrementiranja (++) i dekrementiranja (--)
• Operatori osnovnih operacija *, /, %
Osnovni aritmetički operatori
Ovoj grupi operatora pripadaju:
< (manje),
<= (manje ili jednako),
> (veće),
>= (veće ili jednako),
== (jednako),
!= (različito).
Relacioni operatori
Operator dodjele
Operator proste dodjele je = (ne treba ga miješati sa relacionim operatorom ==)
Lijevi operand ovog operatora je lijeva vrednost (ime promenljive), a desni operand je proizvoljni izraz.
Bitno pravilo:
Prvo se izračunava izraz na desnoj strani. Nakon toga se dobijena vrijednost upisuje u memorijsku lokaciju koja je rezervirana za čuvanje te promenljive.
Općenito, program predstavlja skup definicija:
- promjenljivih,
- simboličkih konstanti,
- tipova i
- funkcija.
Obavezan dio svakog C/C++ programa je funkcija main, i svaki program sadrži tačno jednu definiciju funkcije main.
Main poziva operativni sistem u trenutku poziva programa.
Struktura C/C++ programa
Opći oblik deklaracije promjenljive je:
Tip ime_varijable;
Primjeri:
int a, b;
long int i;
double zapremina;
Varijable (Promjenljive)
Opći oblik deklaracije konstante je:
Const Tip_konstante = izraz;
Primjeri:
const int a=3, b=5;
const float Pi=3.14;
Konstante
• scanf i printf (u C),
• cin i cout (u C++)
• Deklaracije funkcija za upravljanje ulaznim/izlaznim resursima nalaze se u bibliotekama
• stdio.h i iostream
• Važno: Za uključivanje se koristi pretprocesorska direktiva include
Naredbe ulaza i izlaza
Format include direktive:
#include <ime_fajla>
Dakle, kada se u programu koriste funkcije ulaza i izlaza,
treba navesti sljedeće:
#include <stdio.h> (u C)
ili #include <iostream> (u C++)
Naredbe ulaza i izlaza
Naredba IF implementira osnovni tip selekcije (grananja)
Dijagram toka ove strukture:
izraz
Naredba 1 Naredba 2
FT
Naredbe selekcije - IF
Ekvivalentan kod je:
if (<izraz>)
<naredba1>
else
<naredba2>
Programske petlje omogućavaju višestruko ponavljanje određenog dijela programa u toku njegovog izvršavanja.
U programskom jeziku C postoje tri vrste programskih petlji:
1) for
2) while
3) do-while
Programske petlje
Programske petlje - FOR
FOR (izraz1; izraz2; izraz3) {
naredba }
Pri tome, argumenti su:
izraz1 – početno stanje kontrolne varijable izraz2 – uvjet
izraz3 – prirast kontrolne varijable
naredba
izraz
da
ne
While petlja omogućava ponavljanje naredbe programa dok je definirani uvjet zadovoljen
Ekvivalentan kod je:
WHILE (izraz) {
naredba }
Programske petlje - While
Razlika: Uvjet za ponavljanje petlje u kodu nalazi se iza tijela, te se naredba mora izvršiti barem jednom!
naredba
izraz
da
ne
Ekvivalentan kod je:
DO {
naredba }
WHILE (izraz);
Programske petlje – DO - WHILE
FZF Travnikpredmet: INFORMATIKA
Napraviti programsko rješenje kvadratne jedna čine u jeziku C++
Moramo početi od teorije:
- Opći oblik jednačine?
- Kakva su rješenja kvadratne jednačine?
- Razrada na plo či: koeficijent a, D, rješenja...
Primjer rješenja uz C++
FZF Travnikpredmet: INFORMATIKA
Kvadratna funkcija i njezin graf nalaze se u mnogim naučnim područjima. Oblik parabole može opisivati mnoge pojave u prirodi poput gibanja tijela izbačenog horizontalno ili pod uglom. Poznati su mnogi građevinski objekti poput mostova ili lukova paraboličnog oblika. Ovakav oblik pojavljuje se i u poslovnim izračunima profita i u raznim drugim područjima života. Kvadratna se funkcija koristi u izračunu kvadratnih površina i drugih geometrijskih problema kao i u statističkim analizama...
Značaj kvadratne funkcije
FZF Travnikpredmet: INFORMATIKA
Testne vrijednosti:
a=1 b=-8 c=12 ... (D>0)
a=1 b=-6 c=10 ... (D<0)
a=1 b=4 c=4 ... (D=0)
a=0 - poruka da se ne radi o kv. jednacini!
Primjer rješenja uz C++
Fakultet za menadžment i poslovnu ekonomijuKatedra za menadžment i IS
Podvarijanta jezika VB je VBA, čije je razvojno okruženje prisutno na svakom računaru!
Pokretanje VBA okruženja:
Developer: Visual Basic
ili: Alt + F11
Programski jezik VB(A)
Fakultet za menadžment i poslovnu ekonomijuKatedra za menadžment i IS
Pozivamo novi modul:
Insert – Module
Desni dio ekrana je prostor za kodiranje, tj. pisanje programskog koda
Fakultet za menadžment i poslovnu ekonomijuKatedra za menadžment i IS
Kodirati programsko rješenje u VBA koje konvertuje rezultate testova u slovne
ocjene (5/F, 6/E itd.)
Kriterij pretvorbe je aktuelna skala ocjenjivanja!
Primjer rješenja uz VBA
Function SlovnaOcjena(Rezultat As Integer) As String
Select Case Rezultat
Case Is < 55
SlovnaOcjena = "5/F"
Case Is < 65
SlovnaOcjena = "6/E"
Case Is < 75
SlovnaOcjena = "7/D"
Case Is < 85
SlovnaOcjena = "8/C"
Case Is < 95
SlovnaOcjena = "9/B"
Case Is <= 100
SlovnaOcjena = "10/A"
End Select
End Function
Nastavna jedinka: