slide1
Download
Skip this Video
Download Presentation
Algoritmusok

Loading in 2 Seconds...

play fullscreen
1 / 19

Algoritmusok - PowerPoint PPT Presentation


  • 131 Views
  • Uploaded on

Algoritmusok. Algoritmus : Folyamatok elemi részekre bontása. Utasítások véges számú és pontos leírása Utasítások meghatározott sorrendben legyenek. Algoritmus leíró eszközök:. Mondattal (szöveges) Mondatszerűen (vázlat jellegű) Pszeudokód Grafikus (rajzos, képek)

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Algoritmusok' - darby


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


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

Algoritmus:

  • Folyamatok elemi részekre bontása.
  • Utasítások véges számú és pontos leírása
  • Utasítások meghatározott sorrendben legyenek
slide3

Algoritmus leíró eszközök:

  • Mondattal (szöveges)
  • Mondatszerűen (vázlat jellegű) Pszeudokód

Grafikus (rajzos, képek)

  • Folyamatábrával (különböző geometriai idomok használata)
  • StruktogramAz egész algoritmus egy téglalapban helyezkedik el,

ezen belül az utasítások és vezérlőszerkezetek szintén

téglalapokat foglalnak el. Az ábrát felülről lefelé haladva kell olvasni

slide4

Pl. Szöveges feladat matematika órán

  • Adatok felírása, kigyűjtése
  • Képlet felírása
  • Behelyettesítés a képletbe
  • Elvégezni a műveleteket
  • Szöveges válasz írása, mértékegység jelölése
folyamat bra flowchart
Folyamatábra (flowchart):

Alapelemeit Neumann dolgozta ki. Az egyes szerkezeti elemek között nyilakkal jelöljük a végrehajtási sorrendet.

Folyamatábra alakzatok:

  • Téglalap: Valamilyen értékadó utasítás, vagy eljárás.
  • Rombusz, vagy lapos hatszög:Egy, vagy többágú kiválasztás.
  • Paralelogramma: Adatáramlás.
  • Kör: Vezérlő utasítások.
slide6

Folyamatábra részei

Program kezdete

Program vége

Műveletvégzés

Eldöntés, elágazás

Adat bemenet és kimenet

Szekvencia (műveletek egymás után)

struktogramm
Struktogramm:

Az egyes szerkezeti elemeket különböző téglalapba foglalható ábrákkal jelöljük.

A szerkezetek egymásba ágyazhatók, de vonalaik nem keresztezhetik egymást.

az algoritmus utas t sok le r eszk zei
Az algoritmus utasítások leíró eszközei
  • Szekvencia: sorban egymás után való végrehajtás.
  • Elágazás (szelekció): elágazik, de továbbra is előre megy.
  • Ciklus (iteráció): elágazik, és ismétli a ciklusmagban megadott tevékenységet.
szekvencia
Szekvencia:

sorban egymás után való végrehajtás

Cél

Rajt

Utasítás 2

Utasítás n

Utasítás 1

el gaz s szelekci
Elágazás (szelekció):

elágazik, de továbbra is előre megy.

A feltételtől függően (igaz, hamis) folytatódik tovább az algoritmus: ha igaz a feltétel akkor végrehajtja az IGAZ-ágat, ha nem, akkor ha nincs KÜLÖNBEN-ág, akkor a következő utasításra lép, ha van KÜLÖNBEN ág, akkor a HAMIS-ágat hajtja végre. Az egyik ág végrehajtása után a program végrehajtása az elágazás utáni utasításon folytatódik.

Elágazás ha nincs KÜLÖNBEN-ág:

Feltétel

HAMIS

Utasítás 1

Utasítás 2

Utasítás (ha)

IGAZ

slide11

Elágazás ha van KÜLÖNBEN-ág:

HAMIS

Utasítás (különben)

Feltétel

Utasítás 1

Utasítás 2

Utasítás (ha)

IGAZ

HA feltétel AKKORutasítás 1 …utasítás 1n[KÜLÖNBENutasítás 2… utasítás 2n]ELÁGAZÁS VÉGE

k t g d nt s
Kétágú döntés

CLS

INPUT „Írd be a korodat:", kor

IF kor > 18 THEN

PRINT "Már nagykorú vagy!"

ELSE PRINT "Még fiatalkorú vagy!"

END IF

igaz

hamis

Feltétel

A tevékenység

B tevékenység

C tevékenység

t bb rt k k z li v laszt s
Több érték közüli választás

CLS

INPUT "add meg az osztályzatod:", osztalyzat

CLS

SELECT CASE osztalyzat

CASE 1

PRINT „megbuktál!!"

CASE 2

PRINT "elégséges"

CASE 3

PRINT "közepes"

CASE 4

PRINT "jó"

CASE 5

PRINT "jeles"

END SELECT

Feltétel 1

A tevékenység

Feltétel 2

B tevékenység

Feltétel 3

C tevékenység

D tevékenység

ciklus iter ci
Ciklus (iteráció):

elágazik, és ismétli a ciklusmagban megadott tevékenységet.

Elöltesztelő:

Feltétel

HAMIS

Utasítás 1

Utasítás 2

Ciklusmag

IGAZ

Ha a feltétel igaz akkor végrehajtódik a ciklusmag és visszalép a feltételhez az algoritmus, ha nem, akkor kilép a ciklusból és a következő utasításra lép.

(A ciklusmagnak kell olyan tevékenységet tartalmaznia, mely hatással van a feltételre, különben „végtelen” ciklussá válhatna.)

CIKLUS AMÍG feltétel ciklusmagCIKLUS VÉGE

DO WHILE feltételciklusmagLOOP

el l tesztel s ciklus
Elöl tesztelős ciklus

REM "addig kér számokat, míg a számok összege nem lesz nagyobb 1000-nél"

CLS

szam = 0

osszeg = 0

DO WHILE osszeg < 1000

CLS

INPUT "Adj meg egy számot:", szam

osszeg = osszeg + szam

LOOP

PRINT "A számok összege:", osszeg

END

ciklus iter ci1
Ciklus (iteráció):

elágazik, és ismétli a ciklusmagban megadott tevékenységet.

Hátultesztelő:

IGAZ

Feltétel

Utasítás 1

Ciklusmag

Utasítás 2

HAMIS

Végrehajtódik a ciklusmag és ha hamis a kilépési feltétel akkor visszalép a feltételhez az algoritmus, ha igaz, akkor kilép a ciklusból és a következő utasításra lép.

Legalább egyszer végrehajtódik a ciklusmag.

A ciklusmagnak kell olyan tevékenységet tartalmaznia, mely hatással van a feltételre, különben „végtelen” ciklussá válhat.

CIKLUS ciklusmagAMÍG feltétel CIKLUS VÉGE

DO ciklusmagLOOP UNTILfeltétel

h tul tesztel s ciklus
Hátul tesztelős ciklus

REM "addig kér számokat, míg 0-át nem írunk, kiszámítja a beírt szamok átlagát"

CLS

szam = 0

darabszam = 0

osszeg = 0

DO

INPUT "Add meg a következő számot:", szam

darabszam = darabszam + 1

osszeg = osszeg + szam

LOOP UNTIL szam = 0

darabszam = darabszam - 1

atlag = osszeg / darabszam

PRINT "A beírt számok átlaga:", atlag

ciklus iter ci2
Ciklus (iteráció):

elágazik, és ismétli a ciklusmagban megadott tevékenységet.

Számlálásos:

CIKLUS cv:=ké-TŐL vé-IG [lk-ZEL] ciklusmagCIKLUS VÉGE

FOR cv=ké TO vé [STEP lk]ciklusmagNEXT cv

IGAZ

Cv=vé?

Cv:=ké, vé, lk

Ciklusmag

Utasítás

HAMIS

Az elöltesztelős ciklus egy speciális esete a számlálásos ciklus, ahol a belépési feltétel a végrehajtási darabszámtól függ.

A változó felveszi a kezdeti értéket, majd ellenőrzi, hogy túllépte e a végértéket, ha nem akkor végrehajtja a ciklusmagot. A ciklus vége növeli lépésköznyivel a ciklusváltozó értékét. Ha nem érte el a végértéket, akkor újra végrehajtódik a ciklusmag, ha igen akkor kilép a ciklusból és a következő utasításra lép. A lépésköz lehet negatív is.

rövidítések:

cv=ciklus változó, ké=kezdeti érték, vé=végérték, lk=lépésköz.

sz ml l s n vekm nyes ciklus
Számlálós (növekményes) ciklus

Kiíratjuk a számokat 1-100-ig 10-es lépésközzel (tízesével)

CLS

FOR i = 1 TO 100 STEP 10

PRINT i

NEXT i

Egymásba ágyazott ciklus

Teleíratjuk a képernyő első 20 sorát # karakterekkel!

CLS

FOR i = 1 TO 20

LOCATE i, 1

FOR j = 1 TO 80

PRINT ’’# ”;

NEXT j

NEXT i

5-15 sorok, 20-60 oszlopok által határolt téglalapot kitöltjük # karakterrel

CLS

FOR i = 5 TO 15

FOR j = 20 TO 60

LOCATE i, j

PRINT "#"

NEXT j

NEXT i

ad