Download
t1 vadas n.
Skip this Video
Loading SlideShow in 5 Seconds..
T1. Įvadas PowerPoint Presentation
Download Presentation
T1. Įvadas

T1. Įvadas

249 Vues Download Presentation
Télécharger la présentation

T1. Įvadas

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. T1. Įvadas Algoritmai ir objektinis programavimas

  2. T1 Struktūrinio programavimo samprata. Algoritmai ir objektinis programavimas

  3. T1 • Programavimokalba turi įtakos programos struktūrai, tačiau yra nusistovėję bendri reikalavimai rašomos programos struktūrai • Programoje galima skirti dvi griežtas dalis: • naudojamų priemonių aprašymas, • veiksmus aprašantys sakiniai. Algoritmai ir objektinis programavimas

  4. T1 Pradžia Aprašai Veiksmai Pabaiga Konstantos, duomenų tipai, kintamieji, paprogramės Veiksmus aprašantys sakiniai (pagrindinė programa) Paskalio kalba rašomoms programoms galioja griežta taisyklė: naudojamos priemonės jau turi būti aprašytos Algoritmai ir objektinis programavimas

  5. T1 Pradžia Aprašai Veiksmai Pabaiga Tiek mokantis programuoti, tiek rašant taikomąsias programas, naudinga laikytis griežtų reikalavimų programos struktūrai, nes: • programa lengviau skaitoma, ją lengviau taisyti, derinti, keisti, papildyti; • lengviau nagrinėti ir suprasti kitų parašytas programas • lengviau ir greičiau galima suprasti programavimo pradmenis Algoritmai ir objektinis programavimas

  6. T1 program Pirmoji; var x, y : integer; begin Write('x = '); ReadLn(x); Write('y = '); ReadLn(y); WriteLn('Suma = ', x + y); Readln; end. Pradžia Aprašai Veiksmai Pabaiga x = 5 y = 12 Suma = 17 Algoritmai ir objektinis programavimas

  7. T1 Programavimo stilius, kultūra Algoritmai ir objektinis programavimas

  8. T1 Visame tekste laikomasi vienodų ir aiškių teksto išdėstymo taisykliųKintamųjų vardai ir kiti vardai visoje programoje rašomi vienodu stiliumiPrograma parengta laikantis struktūriškumo – uždavinio sprendimas suskaidytas į atskirų veiksmų grupes Algoritmai ir objektinis programavimas

  9. T1 Laikomasi vaizdžiųteksto skyrybos taisyklių: po skyrybos ženklų paliekamas tarpas, operacijųženklai atskiriami tarpais ir pan.Komentuojamos esminės teksto vietos, veiksmų grupės, kintamieji, nusakoma procedūrų bei funkcijų paskirtis Algoritmai ir objektinis programavimas

  10. T1 Programavimo technologijos reikalavimai • atskiros veiksmų grupės užrašomos procedūromis (funkcijomis); • iš procedūros (funkcijos) antraštės (pavadinimo, faktinių ir formaliųjų parametrų, komentarų) yra visiškai aiški procedūros (funkcijos) paskirtis ir atliekami veiksmai; • blokai (programos, funkcijos, procedūros) be būtino reikalo nėra labai ilgi (jie turėtų tilpti į vieną–du ekranus); Algoritmai ir objektinis programavimas

  11. T1 Programavimo technologijos reikalavimai • tame pačiame bloke nėra skirtingų veiksmų grupių (pvz. negerai, jei vienoje procedūroje, duomenys rikiuojami ir spausdinamas surikiuotas sąrašas); • gebama išvengti nereikalingų globaliųjų parametrų: procedūros bei funkcijos gauna duomenis ir grąžina rezultatus naudojant parametrus; Algoritmai ir objektinis programavimas

  12. T1 Programavimo technologijos reikalavimai • Kintamieji, skirti saugoti duomenims ir rezultatams, gali būti globalūs • Parinktos tinkamos duomenų struktūros; jos aprašomos programos teksto pradžioje ir galioja visoje programoje; nėra lokaliųjų duomenų struktūrų; Algoritmai ir objektinis programavimas

  13. T1 Algoritmų išraiškos būdai. Struktūrogramos (Nassi-Shnaiderman diagrams) Algoritmai ir objektinis programavimas

  14. T1 Veiksmų seka gali būti pateikiama labai skirtingais būdais Žodiniu pasakojimu, laisvos formos aprašymu Matematinėmis išraiškomis Schemomis, paveikslais Recepto forma Simbolinėmis schemomis (“blokinės” schemos) Struktūrogramomis Diagramomis Algoritmai ir objektinis programavimas

  15. T1 1973 m. I.Nassi ir B.ShneidermanNassi-Shneiderman diagrams Europoje paplitęs pavadinimas struktūrogramos Tai grafinis veiksmų sekos aprašymo būdas, tenkinantis struktūrinio programavimo reikalavimus I.Nassi and B.Shneiderman. Flowchart Techniques for Structured Programming. ACM, 1973 August, vol. 8, Num. 8. 12-26 p.p. Algoritmai ir objektinis programavimas

  16. Ta + b > cN d := a + b d := a / b kol x < b Skaičiavimai x := x + h x := a, b Skaičiavimai T1 x := a + b Priskyrimo veiksmas Alternatyva (if sakinys) Ciklas kol (while) Ciklas dėl (for) Algoritmai ir objektinis programavimas

  17. T1 Baziniai duomenų tipai Sveikieji skaičiai integer15 -25 365 Realieji skaičiai real12.456 -2.456 Simboliai char’A’ ’s’ Loginiai booleantrue false Algoritmai ir objektinis programavimas

  18. T1 Kintamieji Skelbiami prieš programą ir galioja nuo aprašymo vietos iki programos pabaigos var x, y : integer; a, b, c :real; sim : char; yra : boolean; Kintamieji skirti duomenims saugoti Gali saugoti tik tokią reikšmę, kokia nurodyta kintamojo apraše Visi kintamieji gauna vietą kompiuterio atmintinėje reikšmei saugoti Algoritmai ir objektinis programavimas

  19. T1 Bazinės Paskalio konstrukcijos (priskyrimas, sąlygos operatorius, ciklas) Algoritmai ir objektinis programavimas

  20. T1 Programos struktūra program Vardas; begin end. FreePascal programos trafaretas program Bevarde1; begin WriteLn('Labas'); Readln; end. Algoritmai ir objektinis programavimas

  21. T1 x := a + b Priskyrimo veiksmas var x : integer; y : real; a : char; b : boolean; x := 15; y := x + 2.56; a := ’B’; b := true; Algoritmai ir objektinis programavimas

  22. T1 x := a + b Priskyrimo veiksmas x := x + 15; var x : integer; x 36 Atmintinėje kintamasis turi reikšmę 36 Algoritmai ir objektinis programavimas

  23. T1 x := a + b Priskyrimo veiksmas x := x + 15; var x : integer; x 36 Atliekama dviejų skaičių sudėtis: 36 + 15 Gaunamas rezultatas 51 Algoritmai ir objektinis programavimas

  24. T1 x := a + b Priskyrimo veiksmas x := x + 15; var x : integer; x 3651 Atliekama dviejų skaičių sudėtis: 36 + 15 Gaunamas rezultatas 51 Rezultatas 51 užrašomas į kompiuterio atmintinę Algoritmai ir objektinis programavimas

  25. Ta + b > cN d := a + b d := a / b T1 if a + b > c then d := a + b else d := a / b; Algoritmai ir objektinis programavimas

  26. Ta + b > cN d := a + b T1 if a + b > c then d := a + b; Algoritmai ir objektinis programavimas

  27. Ta + b > cN d := a / b T1 if a + b > c then else d := a / b; Algoritmai ir objektinis programavimas

  28. x := a kol x < b x := x + sin(x + a) x := x + h x := a, b y := (a + x) / b Spausdinti ’y= ’, y T1 x := a; while x < b dobegin x := x + sin(x + a); x := x + h; end; for x := a to b do begin y := (a + x) / b; WriteLn(’y= ’, y); end; Algoritmai ir objektinis programavimas

  29. T1 Elementarūs algoritmai(pavyzdžiai) Algoritmai ir objektinis programavimas

  30. Pradžia Kvadratai a := 10, 20 Spausdinti a*a Pabaiga T1 Suskaičuoti skaičių nuo 10 iki 20 kvadratus program Kvadratai; var a : integer; begin for a := 10 to 20 do WriteLn(a * a); ReadLn; end. Algoritmai ir objektinis programavimas

  31. T1 Suskaičuoti skaičių nuo 10 iki 20 kvadratus program Kvadratai; var a : integer; begin for a := 10 to 20 do WriteLn(a, ’ ’, a * a); ReadLn; end. Algoritmai ir objektinis programavimas

  32. T1 Suskaičiuoti skaičių nuo 10 iki 20 kvadratus program Kvadratai; var a : integer; begin WriteLn(’ a a*a’); for a := 10 to 20 do WriteLn(a, ’ ’, a * a); ReadLn; end. Algoritmai ir objektinis programavimas

  33. T1 Suskaičiuoti skaičių nuo 10 iki 20 kvadratus program Kvadratai; var a : integer; begin WriteLn(’ a a*a’); WriteLn(’----------- ’); for a := 10 to 20 do WriteLn(a, ’ ’, a * a); ReadLn; end. Algoritmai ir objektinis programavimas

  34. Pradžia Funkcija Įvesti a Spausdinti lentelės antraštę x := 1, 6 y := a * x Spausdinti x, y Spausdinti lentelės pabaigą Pabaiga T1 Skaičiuoti y = a * x, kai x = 1, 2, . . ., 6 program Funkcija; var a, x, y : integer; begin Write('a = '); ReadLn(a); WriteLn('-----------------'); WriteLn(' x y '); WriteLn('-----------------'); for x := 1 to 6 do begin y := a * x; WriteLn(' ', x, ' ', y); end; WriteLn('-----------------'); Readln; end. Algoritmai ir objektinis programavimas

  35. T1 Skaičiuoti y = a * x, kai x = 1, 2, . . ., 6 program Funkcija; var a, x, y : integer; begin Write('a = '); ReadLn(a); WriteLn('-----------------'); WriteLn(' x y '); WriteLn('-----------------'); for x := 1 to 6 do begin y := a * x; WriteLn(' ', x, ' ', y); end; WriteLn('-----------------'); Readln; end. Algoritmai ir objektinis programavimas

  36. T1 Skaičiuoti y = a * x, kai x = xp, xp+1, . . ., xg program Funkcija; var a, xp, xg, x, y : integer; begin Write(' a = '); ReadLn(a); Write('xp = '); ReadLn(xp); Write('xg = '); ReadLn(xg); WriteLn('-----------------'); WriteLn(' x y '); WriteLn('-----------------'); for x := xp to xg do begin y := a * x; WriteLn(' ', x, ' ', y); end; WriteLn('-----------------'); Readln; end. Algoritmai ir objektinis programavimas

  37. T1 Skaičiuoti y = a * x, kai x = xp, xp+1, . . ., xg program Funkcija; var a, xp, xg, x, y : integer; begin Write(' a = '); ReadLn(a); Write('xp = '); ReadLn(xp); Write('xg = '); ReadLn(xg); WriteLn('-----------------'); WriteLn(' x y '); WriteLn('-----------------'); for x := xp to xg do begin y := a * x; WriteLn(x:4, ' ', y:5); end; WriteLn('-----------------'); Readln; end. Algoritmai ir objektinis programavimas

  38. T1 Jūsų klausimai Algoritmai ir objektinis programavimas