oktatas:linux:perl_programozas
Tartalomjegyzék
Perl nyelv
- Szerző: Sallai András
- Copyright © 2019, Sallai András
- Szerkesztve: 2019
- Licenc: CC BY-SA 4.0
- Web: https://szit.hu
Helló világ
nano hello.pl
Adjunk rá futtatási jogot:
chmod +x hello.pl
./hello.pl
Kivitel
Készítsük el a kivitel.pl fájlt:
nano kivitel.pl
Kifejezések
Készítsünk egy kif.pl nevű fájlt:
nano kif.pl
A fájl tartalma:
Változók
Készítsünk egy valt.pl fájlt:
nano valt.pl
A fájl tartalma:
Az operátorok és a változók között lehetnek szóközök és tabulátorok.
#!/usr/bin/perl my $a = 35; print $a , "\n";
De írhatjuk egybe:
my $a=35;
String
my $str1 = "alma"; my $str2 = 'alma';
Készítsünk egy scriptet:
touch szoveg.pl chmod +x szoveg.pl nano szoveg.pl
Konkatenálás
A konkatenálás a szöveg összefűzése. Perl nyelven ezt pont (.) operátorral csináljuk.
my $str1 = "bármi"; my $str2 = "akármi"; my $str3 = $str1.$str2;
touch konkat.pl chmod +x konkat.pl nano konkat.pl
Véletlen szám
touch vel.sh chmod +x vel.sh nano vel.sh
Kockapóker
Amire szükségünk van: 5 véletlen szám egymás mellé írva, szóközzel tagolva.
touch poker.pl chmod +x poker.pl nano poker.pl
Függvények
- poker.pl
#!/usr/bin/perl sub dobasok { my $k1 = int(rand(6))+1; my $k2 = int(rand(6))+1; my $k3 = int(rand(6))+1; my $k4 = int(rand(6))+1; my $k5 = int(rand(6))+1; } dobasok(); print "$k1 $k2 $k3 $k4 $k5\n";
Póker újra:
- poker2.pl
#!/usr/bin/perl my $k1; my $k2; my $k3; my $k4; my $k5; sub dobasok { $k1 = int(rand(6))+1; $k2 = int(rand(6))+1; $k3 = int(rand(6))+1; $k4 = int(rand(6))+1; $k5 = int(rand(6))+1; } print "Név: "; my $nev = <STDIN>; chomp($nev); dobasok(); print "$nev: $k1 $k2 $k3 $k4 $k5\n"; dobasok(); print "Számítógép : $k1 $k2 $k3 $k4 $k5\n";
Bekérés
Bekérni a következő formában lehet:
my $nev = <STDIN>;
... print "Név: "; my $nev = <STDIN>; chomp($nev); my $nevMeret = length $nev; print $nevMeret . "\n"; dobasok(); print "$nev: $k1 $k2 $k3 $k4 $k5\n"; ...
Ékezetek rendezése:
#!/usr/bin/perl use utf8; binmode(STDIN, ":utf8"); binmode(STDOUT, ":utf8");
Szelekció
- szelekt.pl
#!/usr/bin/perl print "Dobjunk újra? (i/n): "; my $valasz = <STDIN>; chomp($valasz); if ($valasz eq "i") { print "Jöhet a dobás...\n"; }
Mégsem ág használata:
- szelekt.pl
#!/usr/bin/perl print "Dobjunk újra? (i/n): "; my $valasz = <STDIN>; chomp($valasz); if ($valasz eq "i") { print "Jöhet a dobás...\n"; }else { print "Nem dobunk.\n"; }
Többágú szelekció
- tobbagu.pl
#!/usr/bin/perl print "Melyik számot szeretnéd újradobni? (1, 2, 3, 4, 5): "; my $valasz = <STDIN>; chomp($valasz); if ($valasz eq "1") { print "Első szám újradobás jön...\n"; } elsif($valasz eq "2") { print "Második szám újradobás jön...\n"; } elsif($valasz eq "3") { print "Harmadik szám újradobás jön...\n"; } elsif($valasz eq "4") { print "Negyedik szám újradobás jön...\n"; } elsif($valasz eq "5") { print "Ötödik szám újradobás jön...\n"; }else { print "Nem dobunk.\n"; }
Ciklus
Számok 0-tól 9-ig:
- dobasok.pl
#!/usr/bin/perl for($i=0; $i<5; $i++) { dobas(); } print "\n"; sub dobas { print int(rand(6))+1 . " "; }
while ciklus
do-while
- dowhile.pl
#!/usr/bin/perl my $szam; do { print "Szám: "; $szam = <STDIN> } while ($szam != 0);
oktatas/linux/perl_programozas.txt · Utolsó módosítás: 2023/08/20 23:13 szerkesztette: admin