Számítógépes Hálózatok. 1. Gyakorlat

Hasonló dokumentumok
Számítógépes Hálózatok. 1. gyakorlat

Számítógépes Hálózatok GY 1.hét

Imperatív programozás

Bevezetés a Python programozási nyelvbe

PYTHON. Avagy hosszú az út a BioPythonig

Adattípusok, vezérlési szerkezetek. Informatika Szabó Adrienn szeptember 14.

Ismerkedés a Python programnyelvvel. és annak micropython változatával

A Python programozási nyelv

Szkriptnyelvek. 1. UNIX shell

Imperatív programozás

Python tanfolyam Python bevezető I. rész

Smalltalk 2. Készítette: Szabó Éva

A Python programozási nyelv

1. Egészítsük ki az alábbi Python függvényt úgy, hogy a függvény meghatározza, egy listába, az első n szám faktoriális értékét:

2018, Diszkrét matematika

Hálózatok építése és üzemeltetése

Programozási nyelvek Python

2018, Diszkrét matematika

Operációs Rendszerek II. labor. 2. alkalom

Java és web programozás

2016, Diszkrét matematika

Ismerkedés a Python programnyelvvel. és annak micropython változatával

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

Python I. Vincze Dávid Miskolci Egyetem, IIT

2018, Diszkre t matematika. 8. elo ada s

Vezérlési szerkezetek Vezérlési szerkezetek: feltételes elágazás és ciklusok

2018, Diszkrét matematika

Számítógépes Hálózatok GY 4.hét

Gyakorló feladatok Gyakorló feladatok

2018, Diszkrét matematika

ANGOL NYELVI SZINTFELMÉRŐ 2014 A CSOPORT

Fordított és szkript nyelvek összehasonlító elemzése. Sergyán Szabolcs

Számítógépes Hálózatok GY 9.hét

1. Alapok. #!/bin/bash

AWK programozás, minták, vezérlési szerkezetek

2019, Diszkrét matematika. 1. el adás

Komputeralgebra Rendszerek

1. Feladat: beolvas két számot úgy, hogy a-ba kerüljön a nagyobb

Számítógépes Hálózatok

Programozási nyelvek II. JAVA EA+GY 1. gyakolat

Python bevezető foglalkozás Python bevezető foglalkozás

BASH script programozás II. Vezérlési szerkezetek

Programozási nyelvek JAVA EA+GY 1. gyakolat

8. Laboratóriumi gyakorlat: Bevezetés a reguláris kifejezések használatába

AWK programozás, minták, vezérlési szerkezetek

Szoftvertervezés és -fejlesztés I.

2016, Diszkrét matematika

Gyakorló feladatok az 1. nagy zárthelyire

2015, Diszkrét matematika

PHP. Telepítése: Indítás/újraindítás/leállítás: Beállítások: A PHP nyelv

Imperatív programozás

Kifejezések. Kozsik Tamás. December 11, 2016

Programok értelmezése

S z á m í t ó g é p e s a l a p i s m e r e t e k

Matematikai alapok. Dr. Iványi Péter

Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása

2015, Diszkrét matematika

Változók és adattípusok Változók és adattípusok

2018, Diszkre t matematika. 10. elo ada s

S z á m í t ó g é p e s a l a p i s m e r e t e k

A C# programozási nyelv alapjai

Programozási nyelvek II. JAVA EA+GY 1. gyakolat

Számítógépes Hálózatok GY 8.hét

Programozás alapjai gyakorlat. 4. gyakorlat Konstansok, tömbök, stringek

2018, Diszkrét matematika

A függvény kód szekvenciáját kapcsos zárójelek közt definiáljuk, a { } -ek közti részt a Bash héj kód blokknak (code block) nevezi.

C# gyorstalpaló. Készítette: Major Péter

Számítógépes Hálózatok. 3. gyakorlat

Számítógépes Hálózatok GY 3.hét

Bevezetés a programozásba I.

Bevezetés a programozásba I.

Szoftvertechnológia alapjai Java előadások

A PROGRAMOZÁS ALAPJAI 3. Készítette: Vénné Meskó Katalin

2019, Funkcionális programozás. 2. el adás. MÁRTON Gyöngyvér

Informatika terméktervezőknek

file./script.sh > Bourne-Again shell script text executable << tartalmat néz >>

A JavaScript főbb tulajdonságai

Webprogramozás szakkör

3D-s technológiák a játékfejlesztésben UDK bevezetés

Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o

PyS60....avagy Python a mobilon

2016, Diszkrét matematika

Számítógépes Hálózatok. 4. gyakorlat

Occam 1. Készítette: Szabó Éva

SZÁMÍTÓGÉPES PROBLÉMAMEGOLDÁS

Programozás II. 2. Dr. Iványi Péter

Programozási nyelv Java

Tudományos Ismeretterjesztő Társulat

S z á m í t ó g é p e s a l a p i s m e r e t e k

length (s): Az s karaklerlánc hossza, substr(s,m,n): Az s mezőben levő karakterláncnak az m-edik karakterétől kezdődő, n darab karaktert vágja ki.

ANGOL NYELVI SZINTFELMÉRŐ 2008 A CSOPORT

SZERVER OLDALI JAVASCRIPT. 3. hét Javascript nyelvi elemek

Logikai programozás ADMINISZTRATÍV KÉRDÉSEK KÖVETELMÉNYRENDSZER FŐBB PONTOK NÉHÁNY BIZTATÓ SZÓ

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra

Bevezetés a Python programozási nyelvbe

Számítógépes Hálózatok GY 3-4.hét

AWK programozás Bevezetés

Listák, szótárak, fájlok Listák, szótárak, fájlok

(Asking for permission) (-hatok/-hetek?; Szabad ni? Lehet ni?) Az engedélykérés kifejezésére a következő segédigéket használhatjuk: vagy vagy vagy

Programozás I. Első ZH segédlet

Átírás:

Számítógépes Hálózatok 1. Gyakorlat

Elérhetőségek gyakvez: Dr. Laki Sándor honlap: http://lakis.web.elte.hu/ email: lakis@inf.elte.hu szoba: 2.506 (déli tömb) Számítógépes Hálózatok Gyakorlat 1 2

Követelmények Maximum 4 hiányzás Minden óra elején pár kérdéses teszt Jegy összetétele: 50% SocketZH félév végén 25% Teszt óra elején (TAO szerver) 25% Órai feladatmegoldás / házi feladat Számítógépes Hálózatok Gyakorlat 1 3

Órai / Házi feladatok 1. Fizikai kódolás 2. CDMA 3. Bit / Byte beszúrás, hiba felismerés 4. CRC 5. CSMA + 5 db Mininetes feladat Számítógépes Hálózatok Gyakorlat 1 4

Minden óra elején teszt Elérés: http://oktnb16.inf.elte.hu Számítógépes Hálózatok Gyakorlat 1 5

Ponthatárok Jegy= (szerzettteszt / maxteszt) *0,25 + (megoldotthf / maxhf) * 0,25 + (szerzettzh / maxzh) * 0,5 Százalék Érdemjegy 0-49 % Elégtelen (1) 50-59 % Elégséges (2) 60-74 % Közepes (3) 75-84 % Jó (4) 85 100 % Jeles (5) Számítógépes Hálózatok Gyakorlat 1 6

Tematika 1. Bevezető, követelmények, TAO szerver ismertetése, Python 2. Socket alapok I. 3. Socket alapok II., Fizikai kódolás 4. CDMA 5. Bit / Byte beszúrás, hiba felismerés 6. CRC 7. CSMA szimulálása ------ Mininet ------ 8. Bevezetés, topológia építés, Ping, sebesség számolás 9. TCPDump, Wireshark 10. Iptables, NAT, Tunnel, portforwarding, fragmentació 11. 1X. ZH Számítógépes Hálózatok Gyakorlat 1 7

Python történelem Guido Van Rossum, 1989 karácsonya Van Rossum írta 96-ban: Over six years ago, in December 1989, I was looking for a "hobby" programming project that would keep me occupied during the week around Christmas. My office... would be closed, but I had a home computer, and not much else on my hands. I decided to write an interpreter for the new scripting language I had been thinking about lately: a descendant of ABC that would appeal to Unix/C hackers. I chose Python as a working title for the project, being in a slightly irreverent mood (and a big fan of Monty Python's Flying Circus). Számítógépes Hálózatok Gyakorlat 1 8

Python tulajdonságok Könnyű tanulásra lett tervezve Tiszta, egyszerű szintaxis, kevés kulcsszó Hordozható Majdnem minden elfut Szóközöket használ program blokkok elkülönítéséhez Egy jó programozó amúgy is használná, akkor a nyelv miért ne? A változókat nem szükséges deklarálni Ettől még nem típus-független nyelv! Számítógépes Hálózatok Gyakorlat 1 9

Python parancssor (Python 2.7!!!!) #python python> import this python> echo "Hello world!" python> user_name="jozsi" python> print "Hello " + user_name python> user_age=25 python> print "You are " + str(user_age) + " years old." Számítógépes Hálózatok Gyakorlat 1 10

Egyszerű számítások Python>10+2 12 Python>2*2 4 Python>3**2 9 Python>10%2 0 Számítógépes Hálózatok Gyakorlat 1 11

Változók Python> a = 42 Python> b = 32 Python> c = a + b Python> print(c) 74 Python> c = 'valami' Python> print(a+c) ERROR Számítógépes Hálózatok Gyakorlat 1 12

String műveletek Python>print 'alma'.upper() ALMA Python>print( "LO" in "Hello".upper() ) True Python>print "Decimal Number: %d, Float: %f, String: %s" % (12,33.4,"almafa") Decimal Number: 12, Float: 33.400000, String: almafa Számítógépes Hálózatok Gyakorlat 1 13

Listák Python> players = [12,31,27,'48',54] Python> print players [12, 31, 27, '48', 54] Python> players[0] 12 Python> players[-1] 54 Python> players + [22, 67] [12, 31, 27, '48', 54, 22, 67] Python> print len(players) 5 Számítógépes Hálózatok Gyakorlat 1 14

Listák Python> players = [12,31,27,'48',54] Python> players.append(89) Python> print len(players) 6 Python> players[2:] [27, 48, 54, 89] Számítógépes Hálózatok Gyakorlat 1 15

Halmazok Python> mylist = [8,3,2,3,2,4,6,8,2] Python> myset = set(mylist) Python> print mylist [8, 3, 2, 3, 2, 4, 6, 8, 2] Python> myset = {8,3,2,3,2,4,6,8,2} # alternative Python> print myset set([8, 2, 3, 4, 6]) Python> type(myset) <type 'set'> Python> mysortedlist = sorted(mylist) Python> print mysortedlist [2, 2, 2, 3, 3, 4, 6, 8, 8] Számítógépes Hálózatok Gyakorlat 1 16

Szótár Python> team = { 91: "Ayers, Robert", 13: "Beckham Jr,", 3: "Brown, Josh", 54: "Casillas, Jonathan", 21: "Collins, Landon } Python> len(team) 5 Python> team[3] = "Chihiro" Python> print team.has_key(91) True Python> print team.has_key('alma') False Számítógépes Hálózatok Gyakorlat 1 17

Szótár Python> team = { 91: "Ayers, Robert", 13: "Beckham Jr,", 3: "Brown, Josh", 54: "Casillas, Jonathan", 21: "Collins, Landon"} Python> print team.keys() [91,13,3,54,21] Python> print team.values() Számítógépes Hálózatok Gyakorlat 1 18

Elágazások if 100 in team: print 'Yes, 100 is in the team' elif 76 in team: print '100 is not in the team, but 76 is in it...' else: print 'Both 100 and 76 are not in the team' Számítógépes Hálózatok Gyakorlat 1 19

Ciklus mylist = [3,65,2,77,9,33] for i in mylist: print 'Element:', i Írassuk ki a lista elemeit növekvő sorrendben! for i in xrange(2,10,2): #2-től 9-ig 2-esével print i Számítógépes Hálózatok Gyakorlat 1 20

Ciklus for i in range(5): print "Number" + str(i) for (k,v) in team.iteritems(): print "Player name: %s; #: %d" % (v,k) Player name: Brown, Josh; #: 3 Player name: Nassib, Ryan; #: 12 i=1 while i<10: print i i+=1 Számítógépes Hálózatok Gyakorlat 1 21

Python script futtatása #vi test.py env #!/usr/ bin /python x = 1 for i in range(1,5): x+=i print x,i,'alma', 'x*x = %d' % (x*x) print(str(i) + " alma") #python test.py #chmod +x test.py &&./test.py Számítógépes Hálózatok Gyakorlat 1 22

Függvények #!/usr/ env /python bin def is_even(num): if (num % 2) == 0: return True else: return False for i in range(1,10): if (is_even(i)): print("szam:"+str(i)) print("vege") Számítógépes Hálózatok Gyakorlat 1 23

Feladat 1. Írjunk függvényt ami megadja egy bemenetben kapott évszámról, hogy szökőév-e. Egy év szökőév, ha osztható néggyel, de akkor nem, ha osztható százzal, hacsak nem osztható négyszázzal. Példák: 1992,1996,2000,2400 szökőév, de 1993, 1900 nem. Számítógépes Hálózatok Gyakorlat 1 24

Feladat 2. A hét napjait jelöljük 0-6-ig (Hétfő,,Vasárnap). Írjunk egy függvényt, ami megadja mikor kell kelnünk az adott napon (hétköznap 7:00 hétvégén 10:00 ), kivéve ha vakációzunk, mert akkor hétköznap 10:00 hétvégén OFF alarm_clock(1, False) '7:00' alarm_clock(6, False) '10:00' alarm_clock(0, True) '10:00 alarm_clock(6, True) OFF' Számítógépes Hálózatok Gyakorlat 1 25

Feladat 3. Írjunk függvényt ami megadja az n. fibonacci számot fibonacci(0) -> 0 fibonacci(1) -> 1 fibonacci(2) -> 1 fibonacci(3) -> 2 fibonacci(n) -> fibonacci(n-2) + fibonacci(n-1) Számítógépes Hálózatok Gyakorlat 1 26

VÉGE KÖSZÖNÖM A FIGYELMET! Számítógépes Hálózatok Gyakorlat 1 27