predavanje1 novo

31
Programiranje 1 Predavanja prof. dr. sc. Alen Lovrenčić [email protected]

Upload: ddomjani

Post on 08-Feb-2016

35 views

Category:

Documents


0 download

DESCRIPTION

programiranje

TRANSCRIPT

Page 1: Predavanje1 Novo

Programiranje 1

Predavanjaprof. dr. sc. Alen Lovrenčić[email protected]

Page 2: Predavanje1 Novo

Literatura B. Motik, J. Štibar: Demistificirani C+

+, Element 1997 N. Lipljin: Programiranje/1, TIVA/FOI

2004

Page 3: Predavanje1 Novo

Tko sudjeluje na predmetu Predavanja i auditorne vježbe

prof. dr. sc. Alen Lovrenčić Laboratorijske vježbe

doc.dr.sc. Danijel Radošević Mario Konecki, mag. inf. Robert Kudelić, mag. inf.

Page 4: Predavanje1 Novo

Kako doći do ocjeneIći na

predavanjai vježbe

Bio na60%

predavanja

Bio na100%labosa

ne

da

1da

Izostaos 3 ili manjelabosa

ne

ne

Nadoknadelabosa

Nadoknadio

labose

da

neda

Page 5: Predavanje1 Novo

Kako doći do ocjene1

Sakupio51 od 100

bodova

Ispit

neZadovoljan

socjenom

Pisanjeseminara

ne

Upis ocjene

da

RiješioVježbu 11

da

da

ne Bodovna skala:

• 0-49 – izlazak na ispit• 50-59 – dovoljan(2)• 60-74 – dobar(3)• 75-89 – vrlo dobar(4)• 90-100 – izvrstan(5)

Page 6: Predavanje1 Novo

Što raditi i ne raditi? Tražiti objašnjenje

u literaturi Tražiti objašnjenje

na Internetu Tražiti objašnjenje

na konzultacijama Tražiti objašnjenje

od kolege Naučiti

programirati

Prepisati rješenje iz literaturePrepisati rješenje s InternetaPrepisati rješenje od kolege

Naučiti varati

Page 7: Predavanje1 Novo

Uvod

Page 8: Predavanje1 Novo

Što je programiranje Programiranje je jedna od

najtemeljnijih informatičkih disciplina

Programiranje se bavi osmišljavanjem i izradom računalnih programa

Svaki informatičar mora znati programirati

Page 9: Predavanje1 Novo

Što je programiranje

Top

Down

od ideje

do programa

Page 10: Predavanje1 Novo

Od ideje do programa

Problem

Algoritam

Program

Page 11: Predavanje1 Novo

Problem Problem je zadatak koji trebamo

riješiti pomoću računala Treba biti zadan općenito Treba biti zadan jasno Treba obuhvaćati sve moguće slučajeve

Kako zadati problem Detaljni opis ulaznih podataka Opis rezultata i njegove veze s ulaznim

podacima

Page 12: Predavanje1 Novo

Problem Problem izračuna aritmetičkih

operacija

ULAZ: Dva decimalna broja A i B i aritmetička operacija

IZLAZ: A B

Page 13: Predavanje1 Novo

Algoritam Algoritam je postupak kojim

rješavamo problem 0 ili više ulaza 1 (ili više) izlaza Determinantnost Efektivnost Konačnost

Page 14: Predavanje1 Novo

Algoritam Načini zapisivanja algoritma

Prirodni jezik Pseudokod Programski jezik

Page 15: Predavanje1 Novo

Algoritam1. Upiši decimalni broj A2. Upiši decimalni broj B3. Upiši operator Theta4. Ako je Theta5. +: Ispiši A+B6. -: Ispiši A-B7. *: Ispiši A*B8. /: Ispiši A/B

Page 16: Predavanje1 Novo

Algoritam#include <iostream>int main () {

float A,B;char Theta;std::cin >> A >> B;std::cin >> Theta;switch (Theta) {

case '+': std::cout << A+B; break;case '-': std::cout << A-B; break;case '*': std::cout << A*B; break;case '/': std::cout << A/B;

}return 0;

}

Page 17: Predavanje1 Novo

Programski jezici

Page 18: Predavanje1 Novo

Progamski jezik Progamski jezik je formalni jezik kojim

se u računalu opisuju algoritmi Algoritam zapisan u programskom

jeziku naziva se računalni program.

Page 19: Predavanje1 Novo

Razvoj programskih jezika

1950 1960 1970 1980 1990 2000 2010

Page 20: Predavanje1 Novo

Razvoj programskih jezika

1950 1960 1970 1980 1990 2000 2010

1949 Asembler (John Mauchly)

1957 Fortran (IBM) FLOW-MATIC (UNIVAC)1958 ALGOL (Miting u Zurichu)1959 COBOL (Short Term Commitee)

Page 21: Predavanje1 Novo

Razvoj programskih jezika

1950 1960 1970 1980 1990 2000 2010

Fortran ALGOL COBOL

1960 1961 196219631964 BASIC (Dortmauth Uni)19651966196719681969

Page 22: Predavanje1 Novo

Razvoj programskih jezika

1950 1960 1970 1980 1990 2000 2010

Fortran ALGOL BASIC COBOL1970 1971 Pascal (Niklaus Wirth)1972 C (Dennis Ritchie – Bell)19731974 197519761977 Modula 2 (Niklaus Wirth)19781979

Page 23: Predavanje1 Novo

Razvoj programskih jezika

1950 1960 1970 1980 1990 2000 2010

Fortran Pascal Modula 2 BASIC C COBOL1980 198119821983 1984 C++ (Bjarne Stroustrup – Bell) 1985198619871988 Oberon (Niklaus Wirth)1989

Page 24: Predavanje1 Novo

Razvoj programskih jezika

1950 1960 1970 1980 1990 2000 2010

Fortran Pascal Modula 2 Oberon BASIC C C++ COBOL1990 Visual Basic (Microsoft)1991199219931994 Java (Sun)1995 Delphi (Anders Hejlsberg – Borland)199619971998 1999

Page 25: Predavanje1 Novo

Razvoj programskih jezika

1950 1960 1970 1980 1990 2000 2010

Fortran Pascal Modula 2 Oberon Delphi BASIC Visual Basic C C++ Java COBOL

200020012002 C# (Anders Hejlsberg – Microsoft)20032004 2005200620072008 2009

Page 26: Predavanje1 Novo

Razvoj programskih jezika

1950 1960 1970 1980 1990 2000 2010

1943. Godine Konrad Zuse je u svojoj doktorskoj disertaciji objavio svoj programski jezik koji se

zvao Plankalkül. Jezik se pokretao na računalima koje je on sam napravio. Jezik je imao petlje,

polja, matematičke izraze. Nažalost njegov rad bio je izgubljen sve do 70-tih godina.

Page 27: Predavanje1 Novo

Klasifikacija programskih jezika

Strukturnoprogramiranje

ObjektnoOrijentiranoprogamiranje

Proceduralnoprogamiranje

Funkcijskoprogramiranje

Logičkoprogramiranje

CPascal Fortran

BASIC C++

Oberon

SQL

Prolog Datalog

Daplex

Flora

MLLisp

Page 28: Predavanje1 Novo

Naš izbor:

Programski jezik C++

Page 29: Predavanje1 Novo

Zašto C++? Nudi moderne koncepte kao što je

objektni pristup Prema posljednjim istraživanjima blizu

70% programskog koda u SAD napisano je u jednom od jezika iz obitelji C (C, C++, Java)

Page 30: Predavanje1 Novo

C – Dennis Ritchie - 1972 Programski jezik relativno niske razine Prvenstveno osmišljen za izradu

sistemskog softvera, no sadrži sve komponente potrebne za opću namjenu

Brz je Strukturan je

Page 31: Predavanje1 Novo

C++ – Bjarne Stroustrup - 1984 Izravni nasljednik programskog jezika

C Sadrži sve mogućnosti programskog

jezika C Omogućava objektni pristup

programiranju