Dostałem takie zadanie w szokle do wykonania. Mam nadzieję, że komuś się przyda.
Język programowania: AutoIT
Strona producenta: Znajdźcie w googlach "AutoIT v3" :D
Program + tłumaczenie po średniku; (autoit ignoruje to co jest po średniku)
#include <GUIConstants.au3> ;dołączenie dodatkowych funkcji do programu Graphical User Interface
#include <Array.au3> ;Obsługa Tablic
#include <EditConstants.au3>
#NoTrayIcon ;schowanie ikonki w tray'u
$Form1 = GUICreate("Maski - satan1944", 497, 208, 193, 115) ;główna część naszego GUI - całe okienko
$Label1 = GUICtrlCreateLabel("Do podanego prefixu, podaj maskę podsieci w postaci dziesiętnej.", 88, 22, 350, 17)
$Label11 = GUICtrlCreateLabel("Przykładowa maska może wyglądać tak: 255.255.192.0", 88, 40, 350, 17)
$Label2 = GUICtrlCreateLabel("Prefix", 56, 80, 51, 28)
GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif")
$aprefix = GUICtrlCreateInput("generuj", 120, 80, 57, 21, $ES_READONLY)
$Label3 = GUICtrlCreateLabel("Maska podsieci", 56, 128, 119, 24)
GUICtrlSetFont(-1, 13, 400, 0, "MS Sans Serif")
$maska = GUICtrlCreateInput("", 184, 128, 185, 21)
$Button1 = GUICtrlCreateButton("Generuj prefix", 184, 80, 89, 25, 0)
$Button2 = GUICtrlCreateButton("Sprawdź", 376, 128, 105, 25, 0)
$Napiscagiva = GUICtrlCreateLabel("Created by satan1944", 360,195,150,17)
$Napis = GUICtrlCreateLabel("Dobrze", 56, 160, 40,17)
$Napis2 = GUICtrlCreateLabel("Źle", 56, 183, 40,17)
$data = ""
$fdata = ""
$Passlicz = Guictrlcreateinput("", 96, 160, 25, 17, $ES_READONLY)
$Faillicz = Guictrlcreateinput("", 96, 183, 25, 17, $ES_READONLY)
GUISetState(@SW_SHOW) ;wyświetlenie programu na ekranie
global $maskatrue[33] ; tablica 34 elementowa (licząc z zerem)
;$maskatrue[0] = "0.0.0.0"
$maskatrue[1] = "128.0.0.0"
$maskatrue[2] = "192.0.0.0"
$maskatrue[3] = "224.0.0.0"
$maskatrue[4] = "240.0.0.0"
$maskatrue[5] = "248.0.0.0"
$maskatrue[6] = "252.0.0.0"
$maskatrue[7] = "254.0.0.0"
$maskatrue[8] = "255.0.0.0"
$maskatrue[9] = "255.128.0.0"
$maskatrue[10] = "255.192.0.0"
$maskatrue[11] = "255.224.0.0"
$maskatrue[12] = "255.240.0.0"
$maskatrue[13] = "255.248.0.0"
$maskatrue[14] = "255.252.0.0"
$maskatrue[15] = "255.254.0.0"
$maskatrue[16] = "255.255.0.0"
$maskatrue[17] = "255.255.128.0"
$maskatrue[18] = "255.255.192.0"
$maskatrue[19] = "255.255.224.0"
$maskatrue[20] = "255.255.240.0"
$maskatrue[21] = "255.255.248.0"
$maskatrue[22] = "255.255.252.0"
$maskatrue[23] = "255.255.254.0"
$maskatrue[24] = "255.255.255.0"
$maskatrue[25] = "255.255.255.128"
$maskatrue[26] = "255.255.255.192"
$maskatrue[27] = "255.255.255.224"
$maskatrue[28] = "255.255.255.240"
$maskatrue[29] = "255.255.255.248"
$maskatrue[30] = "255.255.255.252"
$maskatrue[31] = "255.255.255.254"
$maskatrue[32] = "255.255.255.255"
While 1=1 ;instrukcja while wykonuje się dopóki nie zostanie spełniony warunek -> w tym przypadku 1=1 spełnione jest zawsze
$nMsg = GUIGetMsg() ;tu program wykonuje czynności zlecone przez użytkownika np. zamknięcie programu, generowanie prefiksu
Switch $nMsg
Case $GUI_EVENT_CLOSE ;Case - w przypadku gdy $GUI_EVENT_CLOSE -> użytkownik wciśnie "krzyżyk" program ma się wyłączyć
Exit
Case $Button1
$random = Random(1,32,1)
GUICtrlSetData($aprefix,$random)
Case $button2
$sprawdz = GUICtrlRead($maska)
$checkpref = GuiCtrlRead($aprefix)
Select
Case ($sprawdz = $maskatrue[1]) and ($checkpref = 1)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[2]) and ($checkpref = 2)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[3]) and ($checkpref = 3)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[4]) and ($checkpref = 4)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[5]) and ($checkpref = 5)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[6]) and ($checkpref = 6)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[7]) and ($checkpref = 7)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[8]) and ($checkpref = 8)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[9]) and ($checkpref = 9)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[10]) and ($checkpref = 10)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[11]) and ($checkpref = 11)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[12]) and ($checkpref = 12)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[13]) and ($checkpref = 13)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[14]) and ($checkpref = 14)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[15]) and ($checkpref = 15)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[16]) and ($checkpref = 16)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[17]) and ($checkpref = 17)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[18]) and ($checkpref = 18)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[19]) and ($checkpref = 19)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[20]) and ($checkpref = 20)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[21]) and ($checkpref = 21)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[22]) and ($checkpref = 22)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[23]) and ($checkpref = 23)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[24]) and ($checkpref = 24)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[25]) and ($checkpref = 25)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[26]) and ($checkpref = 26)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[27]) and ($checkpref = 27)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[28]) and ($checkpref = 28)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[29]) and ($checkpref = 29)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[30]) and ($checkpref = 30)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[31]) and ($checkpref = 31)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case ($sprawdz = $maskatrue[32]) and ($checkpref = 32)
Msgbox(0,"Wynik","Dobrze! Wygeneruj kolejny prefix")
$data = $data + 1
GUICtrlSetData($passlicz, $data)
GUICtrlSetData($maska,"")
Case Else
msgbox(64,"Wynik","Błąd w adresie maski podsieci")
$fdata = $fdata + 1
GUICtrlSetData($faillicz, $fdata)
ContinueLoop
EndSelect
EndSwitch
WEnd
; z każdym case'm program sprawdza czy wprowadzona przez nas wartość jest taka sama jak w podanej tablicy
; program w całości jest wykonany przeze mnie.




