plik
download
A - Programy napisane w "Visual Basic for Application"

Skok do programów napisanych w VB

Zamieszczone poniżej programy powstawały z potrzeby poszukiwania pewnych rozwiązań programistycznych w języku VBA. Wielokrotnie znajdowały one potem zastosowanie w mojej pracy zawodowej. Niektóre programy napisane były jako narzędzia np. do obliczeń danych dla wykonania modeli w języku VRML. Oczywiście prezentuję tu tylko najciekawsze, najbardziej efektowne rozwiązania. Należy zaznaczyć, iż kody zaprezentowanych programów powstawały często jako wynik poszukiwań analogicznych rozwiązań w internecie i literaturze. Nie wnoszę więc zastrzeżeń co do ich wykorzystania, wręcz przeciwnie, będę wielce usatysfakcjonowany jeżeli będą one inspiracją zwłaszcza dla początkujących programistów w języku Visual Basic for Application.



Program "Proporcjonalny podział ruchu - model" został napisany, aby graficznie zobrazować algorytm podziału całkowitego ruchu telefonicznego w zadanych proporcjach pomiędzy czterech operatorów telefonicznych. Algorytm zapewnić powinien w każdym momencie rozdziału ruchu, jego podział jak najbliższy założonym proporcjom. Powyższy warunek jest wypełniany dokładnie, gdy wielkość ruchu w danym momencie jest wielokrotnością 100, ogólnie - dokładność rośnie wraz ze wzrostem liczby połączeń. Szczegółowa analiza kodu tego programu pozwoli także zrozumieć sposób realizacji animacji ruchu oraz zastosowania dźwięku. W programach realizujących długie pętle czasowe należy zapewnić możliwość wyjścia z pętli i zakończenia działania programu, w VBA realizowane jest to specjalną komendą "DoEvents" wstawioną do wnętrzu pętli. W tym programie podczas wykonywania tej komendy, sterowanie przekazywane jest do systemu operacyjnego, co umożliwia obsługę klawisza "PRZERWANIE". W pliku (*.zip) umieszczony jest plik dźwiękowy, który należy umieścić w tym samym katalogu co plik (*.xls).

proporc. podział ruchu


   plik - nowa wersja
download

"Koń szachowy" jest dość prostym w swojej konstrukcji programem usiłującym w sposób losowy wypełnić wszystkie pola planszy śladami skoków konia szachowego. W programie zastosowano pętle zagnieżdżone, sprawdzające po każdym skoku, otoczenie aktywnego pola i spośród dostępnych (pustych) pól (poprzez losowanie) wybierane jest pierwsze wolne, zgodnie z kierunkiem wskazówek zegara - po prawej na rysunku. Sprawdzane jest także czy "koń" nie wyskakuje poza planszę, dlatego plansza z każdej strony otoczona jest dwoma rzędami "nie pustych" pól. Na rysunku poniżej zielone pole "O" wyznaczone przed uruchomieniem programu jest początkiem; pole czerwone "O" jest końcem, gdy koń nie ma już wyboru. W programie zastosowałem alternatywnie opóźnienie czasowe aby lepiej śledzić kolejne skoki "konia". Kwadratowa plansza może mieć różne wymiary (w tej konfiguracji 64 pola). Skoki są liczone i na koniec podawana jest ich liczba, w tym przykładzie to 51, w tym dwie pozycje - poczatkowa i koncowa.

koń szachowy


   plik - pierwsza wersja
download

Trochę z nudów zmodyfikowałem w sierpniu 2024 roku program "Koń szachowy". Stało to się możliwe, gdy udało mi się zdobyć Microsoft Office Excel 203 (11.5612.5606) w edycji "portable" (przenośny). Rozpakowałem go na dysku D: USB. Dzieki temu stało się możliwe uruchamianie wielu różnych programów z czasów gdy jeszcze pracowałem. Uruchamiałem z wielkim sentymentem wiele programóe Visual Basic.
Zacząłem od przypomnieniu sobie i zrozumieniu kodu programu, okazało się to nie takie łatwe. Uświadomiłem sobie teraz jaką wiedzę informatyczną i jaki "lotny" umysł miałem 15 lat temu. Temat "Skoków konia szachowego" rozwinąłem tworząc dodatkowo dwa arkusze Excela'a i tworząc dla nich dwa zmodyfikowane oprogramowania. Drugi arkusz "plansza 225 pól" jest bardzo podobny do arkusza "plansza 64 pola", ale nie zawiera konwersji tablicy ze współrzędnymi i losuje ze zmiennej liczby możliwości odpowiadających zapisach w tablicy współrzednych. W trzecim arkuszu dodałem procedurą budowy prawie dowolnej wielkości planszy w ramach arkusza .
Wszystkie 3 arkusze mają możliwość opóżniania skoków - ułatwia to śledzenie ruchów konia. Wewnątrz programu można odblokować funkcję wyłączenia odświerzania ekranu ("Application.ScreenUpdating = False" - przyspiesza się program) - po skończeniu programu pokaże się gotowy wynik działania.
Poniżej widać dwa przykłady planszy ( 225 pól) Na pierwszej koń wykonał 22 skoki - ostatni skok -na czeronym polu; na drugiej koń wykonał 162 skoki - ostatni skok -na czeronym polu. Widać jak od 22 lub 162 kaskadowych losowań różnią się wypełnienia pól na planszy. W katalogu "inne" w katalogu głównym "zjakub Offline" można znaleźć jeszcze inne pliki związzane z koniem szachowym.

koń szachowy


   plik min-max
download

Zmodyfikowany program "Koń szachowy" pracuje w "pętli" w określonym przez użytkownika czasie, rejestrując na planszach poniżej i obok maksymalną i minimalną liczbę pól szachowych na których zdołał stanąć koń. W polu wyboru (u góry okna) można wyłączyć odświeżanie, co wyłączy miganie ekranu, przyśpieszając tym samym działanie programu. Program można przerwać klawiszem u góry okna.

koń szachowy



Poniższa plansza dowodzi, że jeżeli wykona się dostatecznie wiele prób (30 sek. - około 450 pętli przy zamrożonym ekranie) , to: z jednej strony - koń może stanąć na wszystkich polach szachownicy, z drugiej strony - po trzecim skoku koń już nie ma alternatywy.
Do zbadania pozostaje, czy istnieją inne konfiguracje skoków prowadzące do zaprezentowanego wyniku. .

koń szachowy


   plik
download

Obliczenie pola powierzchni figury płaskiej nieregularnej oraz jej środka ciężkości jest celem działania tego programu (arkusz - Rys_z_pliku). Przy założeniu jednorodnej struktury i określonej masy tej powierzchni, środek ciężkości jest punktem podparcia w którym pozostanie ona w równowadze. Współrzędne wierzchołków figury zapisane są w pliku tekstowym w postaci pary liczb. Pojedyncza, pierwsza liczba w pliku to liczba wierzchołków. Plik tekstowy wybierany jest za pomocą klasycznego okna dialogowego. Wraz z plikiem "Środek ciężkości powierzchni.xls" do pliku (*.zip) załączone zostały 3 przykładowe pliki tekstowe.
W arkuszu zatytułowanym: Zapis_do_pliku, znajduje się przykład "zdejmowania" konturu z podkładowego rysunku. Do pliku tekstowego zapisywane są kolejno współrzedne wszystkich wierzchołków oraz ich ogólna liczba. Plik tekstowy zostanie zapisany w tym samym katalogu co plik excel'owy.

środek ciężkości


   plik
download

Program "Labirynt" losowo rysuje w formie labiryntu ścieżkę na planszy . Działa on podobnie jak program "Koń szachowy". Na końcu narysowanej losowo długiej linii, sprawdzane jest otoczenie tego końca i losowo wybierany jest kierunek następnego odcinka i jego długość. W określonych warunkach program rysuje odgałęzienia. Rysowanie trwa tak długo aż zabraknie możliwości narysowania kolejnego odcinka. Kod tego programu nie był optymalizowany i wydaje się, że można zwiększyć liczbę dodatkowych uwarunkowań by wykorzystać maksymalnie przestrzeń planszy.

labirynt


   plik
download

Program "Animacja korba" został napisany jako ćwiczenie mające na celu narysowanie krzywej (kolor czerwony) będącej wynikiem ruchu odcinka po dwóch okręgach. W chwili obecnej trudno mi przypomnieć sobie do czego miało to służyć, zapewne do jakiegoś programu VRML-owego. Jeszcze jeden przykład animacji graficznej w VBA.

Animacja korba


   plik
download

Był czas gdy interesowałem się grą w brydża, wówczas to postanowiłem napisać program do rozdawania kart i obliczania podstawowej punktacji. Możliwość ukrywania kart przeciwników i partnera, dodatkowo pozwalała na analizę licytacji a także rozgrywki. Oczywiście w środowisku Visual Basic nie sposób napisać nawet najprostszego programu rozgrywającego, wiec prócz wymienionych funkcji na arkuszu zamieściłem uproszczoną tabelę punktacji brydżowej.

Brydż


   plik
download

Program "Tryb - obliczenia" jest typowym przykładem posiłkowania się Excel-em do wyliczenia współrzędnych wierzchołków konstrukcji przestrzennych projektowanych w VRML. W tym przypadku kod programu pozwala - po uwzględnieniu podstawowych parametrów - wyliczyć dane i narysować tryb o zębach prostych i uproszczonych kształtach, wystarczająco dokładnie jak dla potrzeb VRML-a. Zazwyczaj koła zębate o różnej średnicy współpracują ze sobą więc kształty ich zębów powinny być takie same, program ten pozwala na właściwe obliczenie ich kształtów. Możliwości Excela pozwalały także na formatowanie zestawu danych, gdzie dla potrzeb VRML-a należy używać przecinków jako separatorów liczb nie zaś odznaczenia części ułamkowej liczby. Rysowanie kształtu koła zębatego w tym przypadku ma tylko znaczenie poglądowe, pozwala na wizualną ocenę możliwie wiarygodnego kształtu trybu.

Tryb



   plik
download

Wprawdzie od czasu przejścia na emeryturę niewiele zajmowałem się programowaniem w VBA, ale zdarzało się odświeżyć wiedzę na ten temat gdy kolega z pracy podesłał jakiś problem do rozwiązania, lub gdy znalazłem gdzieś w internecie szczególnie ciekawe rozwiązanie jakiegoś zagadnienia. Ostatnio trafił mi się Excelowy przykład graficznej płaskiej i przestrzennej konstrukcji labiryntu. Ponieważ dotykałem już wcześniej tej tematyki, postanowiłem bliżej zapoznać się z tym programem. Sama plansza labiryntu wykonana jest estetycznie, a procedura jego rysowania jest o tyle ciekawa, że tworzy się go poprzez odbarwienie korytarzy pozostawiając wzdłuż nich przegrody(murki). Labirynt w formie płaskiej planszy w całości widocznej, nie daje złudzenia rzeczywistego labiryntu, w którym w zasięgu wzroku są tylko najbliższe punkty wyboru kierunku podczas jego penetrowania. Rozpatrywany program potrafi także zasymulować trójwymiarowy widok labiryntu, gdzie widoczny jest tylko fragment najbliższego otoczenia aktualnego miejsca pobytu.
Zupełnie inny jest stopień trudności w pokonaniu trasy od startu do mety dla labiryntu płaskiego i trójwymiarowego. Analiza wzrokowa całej planszy ułatwia znalezienie drogi dzięki wykluczaniu ewidentnych widocznych ślepych zaułków. W prawdziwym labiryncie - zwłaszcza gdy jego korytarze i ściany nie dają szans na jakąkolwiek orientację w przestrzeni - podczas wyboru kolejnych kierunków marszu, o odnalezieniu drogi do mety decyduje wyłącznie los. Konstrukcje planszowych labiryntów zasadniczo są bardzo podobne, różnią się tylko skomplikowaniem i długością ścieżek, a także liczbą kierunków do wyboru z danego miejsca. Ten drugi parametr dla labiryntów tworzonych komputerowo zawiera się zazwyczaj w granicach od 1 do 4 (od 0 do 3). W innych labiryntach może wynosić nawet kilkanaście.
Opis programu:
Program rozpoczyna działanie od wylosowania i zaznaczenia miejsca startu w górnym wierszu planszy. W następnym kroku wchodzi w główną procedurę losowania kierunku odbarwiania następnej komórki labiryntu. Po wyznaczeniu tego kierunku dokonywane są dwa sprawdzenia: 1) czy w następnym kroku nie wyjdzie się poza planszę lub czy wyczerpało się negatywnym wynikiem sprawdzenie drugie; 2) czy wybrana sąsiednia komórka nie jest już odbarwiona. Negatywny wynik pierwszego sprawdzenia powoduje wejście w pętlę poszukiwania następnej komórki, z której można kontynuować proces budowy labiryntu. Negatywny wynik drugiego sprawdzenia powoduje zmianę kierunku dalszej budowy labiryntu (maksymalnie 4 kierunki wybierane kolejno aż do pozytywnego rezultatu, przeciwnie do kierunku wskazówek zegara), w przypadku negatywnego rezultatu wszystkich tych prób włącza się sprawdzenie pierwsze. Upraszczając nieco dalszy opis można powiedzieć, iż wymienione decyzje powtarzane są dla każdej kolejnej komórki tworzącej labirynt. Wygenerowany labirynt charakteryzuje się tym, że nie posiada enklaw do których nie byłoby dostępu z miejsca startu a to z kolei powoduje, że miejsce mety może być w dowolnym miejsca na obwodzie planszy. Dla uproszczenia programu, po zakończeniu budowy labiryntu autor wstawił procedurę losowania mety tylko w dolnym wierszu planszy. Oczywiście w szczegółach program jest bardziej skomplikowany, dla tych którzy chcieli by prześledzić kolejne kroki jego działania dopisałem odpowiednie komentarze w kodzie programu.
Załączam plik Excelowy zawierający opisany labirynt.

Excel_maze



Wielki powrót do Microsoft Excel 2003

Jest wiosna 2023 roku. Siadam do Calc Open Office by jeszcze raz spróbować poprawić makra uruchamiane w plikach ze statystyką za prąd, gaz i wodę. Open Office ma swój własny język makr i tylko w jakimś niewielkim zakresie rozumie makra Microsoft Excel, zwłaszcza te stare. Zirytowało to mnie i zacząłem szukać starych, bezpłatnych obecnie Microsoftowych edycji EXCEL-a. Znalazłem nawet cały Pakiet Office 2003 jeszcze dodatkowo "Portable" - bez instalacji. Sprawdziłem, i cały pakiet działa bez zarzutu w zakresie, który jest ważny dla mnie (dość niespodziewanie okazało się, że w wersji "portable" brak bibliotek obsługujących komendy tekstowe np. Str()). EXCEL 2003, mój stary dobry VBA z przed 20 lat, w którym wykonałem zawodowo i prywatnie może nawet ponad 1000 programów jest znowu do mojej dyspozycji. Powróciły miłe wspomnienia i chęć do programowania w Visual Basicu w ogóle. Zawsze byłem entuzjastą Bill'a Gates'a, genialnego twórcy, który spowodował że prawdopodobnie miliony zapaleńców programowania takich jak ja, rozpoczęło tę fantastyczną przygodę, poznając prosty, lecz równocześnie bogaty w możliwości język programowania. Teraz, w połowie czerwca 2024 już napisałem w VBA dwa programiki i poprawiłem niektóre stare programy.
- Uzupełniam więc podstronę EXCEL'a tą radosną informacją. Pakiet ten zaimplementowałem (bo nie instalowałem) na karcie mikro SD na dodatkowym dysku D:\ mojego komputera, także na pendrivie z kopią moich najważniejszych zbiorów dołożę tam także plik uruchomieniowy "Microsoft Office 2003 Portable PL.exe". Swoją drogą zastanawiam się jak długo środowisko Windows (obecnie już 11) będzie tolerować takie aplikacje?

Nachodzi mnie na koniec refleksja dotycząca celowości kontynuacji mych pasji, to co robię bedąc 80-cio latkiem jest bez zewnetrznego zainteresowania kogokolwiek, nikt tego nie doceni, nikt nie zainteresuje się wynikami mich obecnych prac (wcześniejszymi także niebardzo się interesowano). Całe szczęście że mój genom zawiera gen popędu do aktywnego szukania dla siebie różnych "problemów" do rozwiązania: w malarstwie, elektronice (obecnie ARDUINO), programowaniu (VB i VBA), technice domowej i w każdej innej dziedzinie, która mi przyjdzie na myśl, zwłaszcza w polityce. Mądrzy ludzie twierdzą, że ćwiczenie umysłu w podeszłym wieku opóźnia nadejscie demencji czy sklerozy - i to mnie pociesza, choć doświadczam pomału ubytków pamięci. Szczęściem, że jest internet i można się wspomóc wiedzą zawartą w sieci lub w chmurze. Doświadczam obecnie wielkiej pomocy z sieci, programując właśnie w VBA. Wystarczy wpisać jakieś hasło czy zwrot skojarzony z potzebnym słowem języka programu lub działaniem potrzebnej funkcji - i naogół po kilku próbach znajduje się to co trzeba.





B - Programy napisane w "Visual Basic"

Powrót do programów napisanych w VBA

Oprócz programów pisanych w VBA-Excel powstawały także programy napisane w VB3, VB5, a ostatnio w VB6. W czasie pracy z dwoma pierwszymi wersjami Visual Basic miałem dostęp do kompilatora kodu, więc niektóre, zamieszczone poniżej programy są w formie wykonywalnej w środowisku Windows. Od chwili pojawienia się VB6 mam dostęp tylko do wersji Working Model Edition. Jest to wersja darmowa ale bez możliwości kompilacji kodu. Zasadniczo skompilowany kod pod postacią pliku *.exe korzysta po uruchomieniu z bibliotek systemowych środowiska Windows. Są jednak programy napisane z wykorzystaniem bibliotek innych niż systemowe. W VB są to biblioteki typu *.dll lub *.ocx. Często prócz wymienionych bibliotek program musi mieć także pliki graficzne(obrazki), pliki dźwiękowe, pliki tekstowe itp. W środowisku programistycznym VB6 (przed kompilacją) powstają następujące pliki:
  - *.vbp    plik zawierający podstawowe dane projektu programu;
  - *.frm    plik zawierający dane o formie (jest to interfejs widoczny po uruchomieniu programu);
  - *.vbw    plik organizujący przestrzeń edytora programu VB;
  - *.bas    plik zawierający moduły z kodem nie związanym bezpośrednio z formą;
  - *.frx    plik zawierający dane w formacie tekstowym, najczęściej objaśnienia typu Help.





  test ang. - download
PROGRAM DO NAUKI ANGIELSKIGO

Program powstał przy okazji któregoś tam podejścia do nauki angielskiego. Działanie programu polega na losowaniu słowa angielskiego i do niego losowania 3 słów polskich w tym jednego prawidłowego. Program po uruchomieniu pliku "Test angielskiego.exe" instaluje się w formie ukrytej w tzw. traju, jednocześnie ukazuje się pierwszy raz okienko z testem. Po wyborze prawidłowej odpowiedzi okienko testu zostaje ukryte i pojawi się ponownie z nowym losowym kompletem słów po pewnym czasie (repetycja min - max) ustawianym w oknie opcji. Program zlicza ilość wszystkich odpowiedzi i ilość odpowiedzi dobrych. Klawiszem KONIEC odinstalujemy program i jego ikonka znika z trayu. Słowa angielskie i polskie przechowywane są w pliku tekstowym "SLOWNIK.TXT". W oknie opcji, do tego słownika można dodać parę słów i zaakceptować, można także usunąć parę słów - wybierając słowo angielskie i akceptując tę decyzję. Ogólna akceptacja zmian dokonuje sie klawiszem Zapisać. W pierwszym wierszu w pliku ze słownikiem zapisane są kolejno : liczba odpowiedzi dobrych, złych, najkrótszy czas repetycji, najdłuższy czas repetycji. Można dokonać ręcznej edycji pliku zachowując jednak format zapisu danych (także spacji).

W 2018 roku program poprawiłem w zakresie odtwarzania dźwięków i zmodyfikowałem, wyswietlając w oknie 'Opcje' informacje o liczbie słów w słowniku.

Test angielskiego






  bingo - download
GRA BINGO

Gra w bingo dość popularna kilka lat temu sprowokowała mnie do napisania programu pozwalającemu grać w tę grę na komputerze z zachowaniem jej podstawowych zasad. Oczywiście głównie interesowały mnie rozwiązania informatyczne, realizujące funkcje oryginalnej gry. W tym programie istotnymi zagadnieniami do rozwiązania były losowania i prezentacja wyników także w nieoczekiwanych (losowych) miejscach. Rozwiązanie problemu odmierzania czasu losowania numeru oraz czasu na reakcję osoby grającej było także ciekawym zadaniem. Czas pomiędzy kolejnymi losowaniami numeru jest regulowany, co zmienia stopień trudności dla grającego. Dla jego wygody jest także opcja drukowania tabeli bingo na arkuszu papieru i tam zaznaczanie wylosowanego numeru. Po lewej stronie od obrazka z interfejsem gry jest odsyłacz do skompresowanego pliku zawierającego grę w postaci wykonywalnej jak też kodu VB.

Bingo






  trójkąt - download
ROZWIĄZYWANIE TRÓJKĄTA

Programy zamieszczone poniżej to nie skompilowane pliki, które mogą być uruchomione w środowisku programistycznym VB. Efekty pracy programów uruchomionych w tym środowisku są identyczne jak po uruchomieniu plików wykonywalnych w środowisku Windows.
Poniżej widoczny jest interfejs programu do obliczeń wszystkich możliwych danych geometrycznych związanych z dowolnie zdefiniowanym trójkątem. Wypełniając odpowiednio dane wejściowe uzyskuje się wiele pochodnych danych, widocznych w okienkach obok po prawej stronie. Jak wiadomo trójkąt można jednoznacznie zdefiniować zadając: a) bok i dwa kąty, b) dwa boki i kąt, c) trzy boki. Dla przypadku: dwa boki i kąt mogą być dwa rozwiązania np. dla danych A=30, a=130, b=200. Program skaluje wartości liczbowe boków, tak aby rysunek zmiescił sie w oknie graficznym. Uzyskany rysunek można wydrukować.

Trójkąt






  środek - download
ŚRODEK CIĘŻKOSCI

Program Środek ciężkości jest bliźniaczym rozwinięciem programu napisanego w VBA. Program skanuje punkty(wierzchołki) z aktualnej pozycji kursora myszki, poprzez kliknięcie lewym przyciskiem. Visual Basic pozwolił na wzbogacenie kodu programu o takie możliwości jak: dodanie lub usuniecie punktu wierzchołkowego, numerowanie wierzchołków, zapisywanie i odczyt danych do/z pamięci w formatach: tekstowym lub binarnym, podłożenie tła w postaci jakiejś grafiki. Program należałoby rozbudować o funkcję drukowania.

Środek ciężkości






  grafika - download
GRAFIKA PROGRAMOWALNA

Już w czasach komputera Atari i Commodere bardzo fascynowała mnie grafika komputerowa. Kontynuacją tamtych zainteresowań jest program rysujący figury geometryczne na podstawie wzorów funkcji geometrycznych na płaszczyźnie. Oczywiście parametry funkcji są regulowane a wynik działania w postaci rysunku można kopiować do schowka systemowego aby edytować w jakimś edytorze a następnie drukować.

Grafika geometryczna





  optymalizacja - download
OPTYMALIZACJA

Program widoczny poniżej jest kolejną, nieco inną wersją programów z serii "punkt ciężkości". Różni się od poprzednich tym, że każdemu skanowanemu z planszy graficznej punktowi można dodać "wagę" aby zmienić jego wartość w stosunku do pozostałych punktów. Przedstawiony program posiada następującą interpretację: na planie miejscowości należy wybudować szkołę w optymalnym miejscu przy założeniu, że istnieją aktualne dane i prognozy co do liczby i miejsc zamieszkiwania dzieci w tej miejscowości.

Środkowanie






  smocze - download
SMOCZE FIGURY

Fizyk John E. Heighway jest autorem algorytmu, który można opisać jak grafikę fraktalową. Według tego algorytmu powielana jest pewna założona sekwencja kroków rysujących odcinek tylko w lewo lub prawo Pierwszy krok w budowaniu "smoka" to narysowanie kąta prostego. Jest to smok pierwszego rzędu. Następnie każde z ramin tego kąta zastępuje się nowym kątem prostym o odpowiednio krótszych ramionach i odpowiednio skierowanym. Tak powstaje smok drugiego rzędu. Rysunek poniżej z lewej pokazuje jak można kontynuować ten proces.
W kodzie programu posłużyłem się symbolami L-lewo, P-prawo dla łatwiejszego definiowania podstawowego wzoru do powielania. Program VB umożliwia rysowanie "smoczych figur" przy zmiennych parametrach:
  - stopień powielania umożliwia zmianę rzędu powielania w granicach od 1 do 11 ... 12;
  - długość odcinka podstawowego z którego powstaje "smok";
  - wzór powielany , można eksperymentować np. PLLP, PLLPP, PLLPPL (duże litery).
Gdyby rysunek znikał poza krawędź pola, suwakami można go wycentrować. Gotowy rysunek można wydrukować.

Figury smoczeFigury smocze

Animacja widoczna poniżej obrazuje w jaki sposób tworzą się w kolejnych krokach "smocze figury"

Figury smocze






  Szyfrowanie - download
SZYFROWANIE

Szyfrowanie


Diagram działania programu szyfrującego.

Diagram działania programu szyfrujacego

Program napisany w jezyku Visual Basic 6.0 we wrześniu 2017r.

ASCII (czyt. aski, skrót od ang. American Standard Code for Information Interchange) - siedmiobitowy system kodowania znaków, używany we współczesnych komputerach oraz sieciach komputerowych. W systemie tym najprościej mówiąc, każdemu znakowi alfabetu przypisana jest liczba
np. a - 97, b - 98, A - 65 itp. Na rysunku powyżej widać fragment tabeli z kodami wybranych liter.

Szyfrowane mogą być pliki w formacie tekstowym głównie *.txt, ale także *.ini, *.log i.t.p.
Szyfrowany może być również tekst wpisywany 'ręcznie', lub wklejany ze schowka.
Plik zaszyfrowany lub odszyfrowany zapisywane są odpowiednio w formatach
"....... 'data' 'czas'_SZ.txt" lub "....... 'data' 'czas'_DESZ.txt"
w tym samym katalogu co plik z przed konwersją.
4 - cyfrowy klucz (PIN) do szyfrowania i taki sam do deszyfrowania musi być wpisany w pojawiające się okienko.
Kod do szyfrowania i deszyfrowania "zaszyty" jest w programie "SzyfrDeszyfr.exe", który muszą posiadać
nadawca i odbiorca.
Tekst zaszyfrowany z Okna 2, podobnie jak odszyfrowany z Okna 1, kopiowane są do schowka systemowego komputera
Obok jest link do pobrania pliku "SzyfrDeszyfr.exe" wraz z programem źródłowym Visual Basic 6.0.







  Pralka - download
PRALKA

Pralka


Program napisany w jezyku Visual Basic 6.0 w listopadzie 2021r.

Pod koniec października 2021r. uszkodził się programator w naszej pralce Marki "Polar".
Nie pozostało nic innego jak tylko zakupić nową pralkę, tym razem marki "SAMSUNG".
Jest ona wyposażona raczej w podstawowe oprogramowanie - bez bajerów.
Jej funkcjonalność zainspirowała mnie do napisania programu symulujacego jej działanie. Proces tworzenia animacji rozpoczął się od wygenerowania w edytorze tekstowym OpenOffice 6 obrazków - w oparciu o jeden z symboli (wspólnie z programem ScreenToGif), który był obracany co 30 stopni. Obrazki w odpowiedniej kolejności zostały wczytane do programu Gif Animator (od 1 do 6 - obrót w prawo; od 6 do 1 - obrót w lewo), w programie tym można było ustawić szybkość animacji - np. wirowanie prania: animacja znacznie przyśpieszona. Finalnie powstały 3 animacje: pranie w prawo, pranie w lewo, wirowanie w prawo.



      

Animacja prania - obroty w prawo      Animacja prania - obroty w lewo


Wymienione 3 animacje wykorzystane zostały podczas pisania kodu Visual Basic'a. Oprócz standardowych komponentów umieszczonych na głównej Formie programu, zainstalowane zostały 3 dodatkowe: Timer(), AniGif.ocx, Sleep() - odpowiedzialne za animację. Trudno w tym miejscu szczegółowo opisywać kod programu i jego funkcjonalność - dla zainteresowanych zamieszczam obok skompresowany plik "PRALKA.zip" z zestawem niezbędnych plików przed kompilacją, oraz wykonywalny plik "Pralka.exe", uzyskany po kompilacji. Sam kod - jako dokument tekstowy - zawarty jest w pliku "pralka_próba.frm"


  VB6 portable - download

Programowanie w środowisku VB6

Na koniec zamieszczam zzipowany katalog ze środowiskiem programistycznym VB6.
Oprogramowanie jest w formacie "portable" - nie wymaga instalowania.
Posiada kompilator kodu VB6 - można zatem otrzymać plik wykonywalny typu "exe".
Po rozpakowaniu koniecznie przeczytać plik "Ważne Czytaj.txt" !