Forum Komputerowe E-comp Strona Główna
FAQ :: Szukaj :: Użytkownicy :: Grupy :: Rejestracja :: Zaloguj

Poprzedni temat «» Następny temat
Podstawy programowania - Blitz Basic
Autor Wiadomość
Pigmej 
Support
Zrzęda ;]




Wiek: 16
Dołączył: 09 Lis 2006
Posty: 136
Skąd: z Kochłowic
Wysłany: 2007-11-30, 23:02 Podstawy programowania - Blitz Basic


Obiecalem Michalowi, ze cos stworze – a ostatnio leniwa ma dusza, wiec padlo na temat sielankowy. Blitz Basic, prosciutka odmiana BASICA, to cos dla nowych adeptow programowania. Kompilator napisany jest pod specyficznym katem. Otoz zostal on specjalnie przygotowany, by usprawnic tworzenie gier. Jego mozliwosci, sa spore, choc oczywiscie oferuje duzo mniejsza wydajnosc niz powszechnie uzywane jezyki. Nauka wymaga minimum wysilku pamieciowego, a pomaga przyswoic sobie takie pojecia jak petla, funkcja, zmienna, algorytm etc. Jak przystalo na jezyk skryptowy – zapis jest maksymalnie uproszczony, poslugujemy sie niemal wylacznie szeregiem funkcji wbudowanych. Dla ewentualnych chetnych, bedzie to bardziej zabawa anizeli programowanie, ale od czegos w koncu zaczac trzeba.. : ) To tyle, jezeli o moj skromny wstep chodzi.

Demowke kompilatora pobieramy z tej strony. Wazy nieduzo, ograniczona jest (niemal) tylko brakiem mozliwosci tworzenia plikow wykonywalnych (*.exe). Obsluga bardzo intuicyjna – menu to praktycznie okrojona wersja Worda z innymi ikonkami. Do standardowego asortymentu, dochodza jeszcze typowe dla kompilatorow narzedzia – Debugowanie i oczywiscie testowanie tworzonego programu. Zapisywanie kodu nastepuje tradycyjnie – linijka po linijce, rygory w szyku dochodza dopiero kiedy zaczynami uzywac typow czy funkcji – na razie niewazne. Dla przykladu, zrobmy to, co wszyscy inni na starcie – Hello World!

Kod

Print ”Hello World!”
WaitKey
End


Testujemy - klawisz F5, lub z gornego menu Program/Run Program. Jak widac powyzej – nic oryginalnego. Print drukuje – wyswietla ciag znakow na ekranie, WaitKey() to f. wbudowana, ktora zamraza dzialanie programu, i czeka na reakcje uzytkownika a end nie musze chyba nikomu tlumaczyc. ;-) (ta linijka nie jest obowiazkowa, jej brak spowoduje, ze kompilator wyswietli niepotrzebny komunikat informujacy nas, ze program zakonczyl dzialanie).

Taki kod, powinna zrozumiec nawet osoba, nie majaca stycznosci z programowaniem na co dzien – wystarcza podstawowa znajomosc j. Ang.

Zajmijmy sie czyms ambitniejszym – na dobry poczatek zmienne. Dla nieswiadomych: Zmienna to zarezerwowany przez program fragment pamieci, ktory mozna wykorzystac do przechowywania danych podczas dzialania programu. Zmienne moga zawierac liczby, znaki(i ich lancuchy) a takze obrazki, czy nawet cale obiekty trojwymiarowe. Z reguly, zmienne definiuje sie w inicjacyjnej czesci programu(definicja zmiennej, to informacja dla kompilatora, zawiera na ogol typ i przypisanie – wartosc zmiennej), acz w BB nie jest to wymagane. Ponizej przyklad praktyczny:

Kod

txt$ = Input(”Wpisz cos.”)
Print txt
WaitKey
End


Dzialanie tego przykladu jest rownie proste jak poprzednio: Wyswietli komunikat, pobierze informacje od uzytkownika a nastepnie wyswietli wprowadzone znaki. Od strony technicznej, calosc wyglada niewiele trudniej – pierwsza linijka, jest zarazem definicja zmiennej i jej przypisaniem. „txt” to nazwa zmiennej, do ktorej przypisana zostaje wartosc zwracana przez funkcje wbudowana Input, o ktorej napomkne za momencik. Wczesniej, trzeba zwrocic jeszcze uwage na sama zmienna – gdy po raz pierwszy pojawila sie w kodzie, nastapil po niej znak „$”. To nie blad – to czesc definicji. Domyslnie, wszystkie zmienne sa definiowane jako typ liczbowy – integer. My zas, potrzebowalismy przechowac ciag nieokreslonych znakow, dlatego nalezalo wymusic zmiane typu zmiennej. Temu wlasnie sluzy ow znak – informuje kompilator o tym, ze nowa zmienna, ma zostac zapamietana jako typ string. Istnieja rozne typy zmiennych w BB, nam wystarcza na razie te dwa – temat bede rozwijal w miare potrzeb. Wrocmy teraz do przypisania. Jak juz wczesniej wspominalem, zmienna txt przyjmie wartosc zwrocona przez funkcje „Input”. Jej dzialanie jest banalnie proste i zapewne wiekszosc czytajacych juz sie go domyslila. To przydatne narzedzie, wyswietla komunikat i zwraca ciag znakow wprowadzony przez uzytkownika. Pozwoli nam ona na pobieranie nieokreslonych natura programu danych, ogolnie rzecz biorac – interakcje z uzytkownikiem.

Pobawmy sie jeszcze chwile zmiennymi – czas wprowadzic ciapke matematyki. A tak powazniej, po prostu kazda - nawet tak prozaiczna wiedze, w programowaniu trzeba utrwalac, wykorzystujac ja w praktyce,

Kod

liczba1 = Input(”Wprowadz liczbe: ”)
liczba2 = Input(”Wprowadz druga liczbe: ”)
Print ”Suma tych liczb wynosi: ” + (liczba1 + liczba2)
Print ”Roznica tych liczb wynosi: ” + (liczba1 – liczba2)
Print ”Iloczyn tych liczb wynosi: ” + (liczba1 * liczba2)
Print ”A iloraz jest rowny: ” + (liczba1 / liczba2)
WaitKey()
End


Ze zrozumieniem tego kodu, nie powinno byc trudnosci – pobiera od uzytkownika 2 liczby, a nastepnie wykonuje na nich kilka obliczen, i wyswietla ich wyniki. Nalezy zwrocic uwage, ze w wypadku dzialan, konieczna jest obecnosc nawiasow – osoby ciekawe, moga sprobowac uruchomic program bez nich, efekt jest specyficzny. ;-)

Poki co – na tym koncze. Jezeli pojawi sie choc minimalne zainteresowanie, dojda kolejne czesci. Kilka osob wprowadzalem w programowanie wlasnie poprzez BB, wiec wszelakich przykladow mam na peczki a wklad tekstowy jak widac w bardzo podstawowej formie, to i wysilek niewielki. : )

Ps. Jezeli ktos sie bedzie ew. bawil i pojawia sie problemy, chetnie pomoge na forum/pw.

edit.: Najmocniej przepraszam za wszelkie bledy - z kilku powodow nie zdaze dokonczyc korekty dzisiaj - poprawie jutro. Dobranoc. :P
_________________
"Don't take life too seriously... You won't escape it alive anyway." [;

Postaw piwo autorowi tego posta
 
 
 
delTORO
User



Dołączył: 01 Lut 2007
Posty: 10
Wysłany: 2007-12-01, 22:43 Re: Podstawy programowania - Blitz Basic


Pigmej napisał/a


Kod

txt$ = Input(”Wpisz cos.”)


Kod

liczba1 = Input(”Wprowadz liczbe: ”)


Mam pytanko: raz tekst raz liczba, interpreter sam dokona konwersji?
delTORO
Postaw piwo autorowi tego posta
 
 
Pigmej 
Support
Zrzęda ;]




Wiek: 16
Dołączył: 09 Lis 2006
Posty: 136
Skąd: z Kochłowic
Wysłany: 2007-12-02, 10:32 


Pisalem o definicjach wczesniej. Jezeli nie okreslimy zmiennej - zostanie automatycznie zapamietana jako typ integer. Natomiast w pierwszym wypadku, po nazwie znajduje sie znak - "$" - ktory zmienia domyslny typ zmiennej na inny - string, a ten sluzy przechowywaniu lancuchow dowolnych znakow.
_________________
"Don't take life too seriously... You won't escape it alive anyway." [;

Postaw piwo autorowi tego posta
 
 
 
michaelxp91 
Administrator
Master of Puppets




Wiek: 17
Dołączył: 11 Cze 2006
Posty: 2687
Otrzymał 4 piw(a)
Skąd: Ruda Śląska
Wysłany: 2007-12-02, 22:03 


A jak jest z innymi typami zmiennych, tablicami?
_________________
Postaw piwo autorowi tego posta
 
 
 
Pigmej 
Support
Zrzęda ;]




Wiek: 16
Dołączył: 09 Lis 2006
Posty: 136
Skąd: z Kochłowic
Wysłany: 2007-12-09, 11:04 


Spokojnie, dojdziemy do tego. Toz pisalem ze to ledwie wstep jest ;)

Cierpliwosci, wlasnie zabralem sie za kontynuacje...
_________________
"Don't take life too seriously... You won't escape it alive anyway." [;

Postaw piwo autorowi tego posta
 
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Nie możesz ściągać załączników na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group
Template eGris created by INIM & Bonus. Done by Forum Komputerowe.
Forum Akwarystyczne Aqua-NetAkwarystyka roślinnaForum KomputerowePolskie Centrum phpBB - ephpBB.euphpBB3 Styles
Harmonijka ustnaForum dyskusyjnePraca i życie w HolandiiKalkulator the crimsAMX-Board - polski support AMX i AMXX
Forum reklamowe