SHARE
TWEET

Untitled

a guest Jun 18th, 2017 94 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/usr/bin/perl
  2. use strict; # Pouzitie Var. Typu Strict
  3.  
  4. my $iNumber1; #V Tejto Premmenej Bude Ulozene Prve Cislo s Prikladu na Overenie
  5. my $iNumber2; #V Tejto Premmenej Bude Ulozene Druhe Cislo s Prikladu na Overenie
  6. my $iUserNum; # Tu sa nacita Vstup Od Usera
  7. my $iTestType; # Tu sa neskor vygeneruje cislo a podla v rozsahu od 1 - 4 ( 1 - Krat; 2 - Deleno; 3 - Plus ; 4 - Minus)
  8. my $iWhile=1; # Premenna Pre While Cyklus
  9. my $iCorrectAns; # Tu budeme Ukladat pocet spravnych odpovedi
  10. my $iVysledok;
  11.  
  12. # Uvitacia Sprava
  13. print "Ahoj, Ja som Bot Ktory Zisti ci si clovek alebo moj druh ... Blablbal Uvodna Spravicka\n";
  14. print "\t Test bude prebiehat nasledovne :\n";
  15. print "\t\t Dostanes 5 Matematickych prikladov, ja ti ich skontrolujem,a pokial budu aspon 4 spravne, tak... \n\n\n\n";
  16.  
  17. SKUSANIE: # Toto je Tkzv Navestie, alebo po EN. myslim sa v programovani pouziva LABEL
  18.  
  19. $iCorrectAns = 0; # Pocet Spravnuch odpovedi dame na 0, pretoze pokial by sa test opakoval tak by tram zostala stara hodnota
  20. $iWhile= 1; # Nadstavenie iWhile na 1 ..
  21. # Cyklus ..
  22. while($iWhile<=5){ # Pokial $iWhile nebude 5 tak sa bude opakovat nasledujuci cyklus  
  23.  
  24.     $iTestType = int(rand(4))+1; # Vygenerovanie cisla 1 - 4 pre nahodnost typu prikladu
  25.  
  26.     # Pokial bude $iTestType == 1 tak sa vygeneruju cisla vhodne pre Nasobenie
  27.     if($iTestType == 1){
  28.  
  29.         $iNumber1 = int(rand(10)); #Vygenerovanie Prveho Cisla
  30.         $iNumber2 = int(rand(10))+1; #Vygenerovanie Druheho Cisla
  31.         print "\n Question $iWhile : $iNumber1*$iNumber2 = ";
  32.         chomp  ($iUserNum = <STDIN>); # Pouzitie chomp na odstranenie pripadnych \n a nacitanie hodnoty od usera
  33.  
  34.         if($iNumber1*$iNumber2==$iUserNum){#Pokial bude Odpoved spravna tak ..
  35.             $iCorrectAns ++;# Pricitame k hodnote $iCorrectAns 1
  36.         }
  37.  
  38.     }
  39.  
  40.  
  41.     # Pokial bude $iTestType == 2 tak sa vygeneruju cisla vhodne pre Delenie
  42.     if($iTestType == 2){
  43.  
  44.         $iNumber1 = int(rand(10))+1; #Vygenerovanie Prveho Cisla - Bude pouzite ako vysledok
  45.         $iNumber2 = int(rand(10))+1; #Vygenerovanie Druheho Cisla
  46.         print "\n Question $iWhile : ".$iNumber1*$iNumber2."/$iNumber2 = ";
  47.         chomp  ($iUserNum = <STDIN>); # Pouzitie chomp na odstranenie pripadnych \n a nacitanie hodnoty od usera
  48.  
  49.         if($iNumber1*$iNumber2/$iNumber2==$iUserNum){#Pokial bude Odpoved spravna tak ..
  50.             $iCorrectAns ++;# Pricitame k hodnote $iCorrectAns 1
  51.         }
  52.     }
  53.  
  54.  
  55.     # Pokial bude $iTestType == 3 tak sa vygeneruju cisla vhodne pre Scitovanie
  56.     if($iTestType == 3){
  57.         $iNumber1 = int(rand(10)); #Vygenerovanie Prveho Cisla
  58.         $iNumber2 = int(rand(10))+1; #Vygenerovanie Druheho Cisla
  59.         print "\n Question $iWhile : $iNumber1+$iNumber2 = ";
  60.         chomp  ($iUserNum = <STDIN>); # Pouzitie chomp na odstranenie pripadnych \n a nacitanie hodnoty od usera
  61.  
  62.         if($iNumber1+$iNumber2==$iUserNum){#Pokial bude Odpoved spravna tak ..
  63.             $iCorrectAns ++;# Pricitame k hodnote $iCorrectAns 1
  64.         }
  65.     }
  66.    
  67.    
  68.     # Pokial bude $iTestType == 4 tak sa vygeneruju cisla vhodne pre Odcitovanie
  69.     if($iTestType == 4){
  70.  
  71.         $iNumber1 = int(rand(10))+1; #Vygenerovanie Prveho Cisla - Bude pouzite ako vysledok
  72.         $iNumber2 = int(rand(10)); #Vygenerovanie Druheho Cisla
  73.         $iVysledok= $iNumber1+$iNumber2;
  74.         print "\n Question $iWhile : $iVysledok-$iNumber2 = ";
  75.         chomp  ($iUserNum = <STDIN>); # Pouzitie chomp na odstranenie pripadnych \n a nacitanie hodnoty od usera
  76.  
  77.         if($iVysledok-$iNumber2==$iUserNum){#Pokial bude Odpoved spravna tak ..
  78.             $iCorrectAns ++;# Pricitame k hodnote $iCorrectAns 1
  79.         }
  80.     }
  81.  
  82.     $iWhile ++; # Pricitame k hodnote $iWhile 1
  83.  
  84. }
  85. # Koniec Cyklusu
  86.  
  87.  
  88. # Vypisanie Vysledku
  89. if($iCorrectAns>=4){#Pokial bude pocet odpovedi dostatocny,vypisesa tato sprava
  90.     print "\n \n Vas pocet spravnych odpovedi je : $iCorrectAns . Gratulujem , Uspeli Ste!\n";
  91. }else{#Pokial nebude pocet odpovedi dostatocny vypise sa nasledujuca sprava
  92.     print "\n \n Vas pocet spravnych odpovedi je : $iCorrectAns . Lutujem , ale Vas pocet odpovedi neni dostatocny!\n";
  93.  
  94.     print "Pokial si prajete pokracovat napiste 1 ,pokial si prajete skoncit napiste 2 : ";
  95.     chomp  ($iUserNum = <STDIN>); # Pouzitie chomp na odstranenie pripadnych \n a nacitanie hodnoty od usera
  96.     if($iUserNum==1){# Pokial User zada 1 tak sa zacne znovu testovanie
  97.         sleep 3; # Pozastavenie na 3 Sekundy
  98.         goto SKUSANIE; # presunutie sa na Label - Skusanie
  99.     }
  100. }
  101. print "Dakujeme za Skusku CaptchaBota";
  102. sleep 3; # Pozastavenie na 3 Sekundy
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top