basic.104vbole,
-> #101, imandic> Ima li neko Compiler za QBASIC??!
> Nigde da ga nadjem u dir-u...
> Ako nije dugacak,moze neko da ga ul-uje ovde...?
Kompajler za QB je BC.EXE, 97481 Bytes, treba da je na disku
(cak i piratskom). ;)
Direktno iz QB-a postupak je sledeci:
ALT/R
X
i ulazis u meni za pravljenje EXE-verzije.
bye... vbole
basic.105dejanr,
-> #104, vbole>> Kompajler za QB je BC.EXE, 97481 Bytes, treba da je na disku
>> (cak i piratskom). ;)
Od prošle poruke sam se "dopisivao" sa imandicem, a sad sam i sam
probao... QuickBASIC koji se dobija uz MS DOS *nema* dodatak za
generisanje samostalnog EXE fajla niti odgovarajuće stavke u meniju.
Nigde besplatnog ručka, što rekle amerikanke ;(
basic.107spantic,
Pa dobro. Vide li iko taj MS BASIC 7.1?
basic.108max.headroom,
-> #101, imandic> Ima li neko Compiler za QBASIC??!
Nabavi QBASIC V4.5 koji ima i kompajler i linker.
basic.109imandic,
-> #108, max.headroomIzgleda da cu morati...
basic.110smiloradovic,
Evo nečeg za ljubitelje bejzika, a bogami i raznih pričajućih
programa. Ovaj je pisan (koliko sam video) u spektrum maniru, dakle
malo bejzik malo mašinac. Na malo (stvarno malo!) bržim mašinama govori
kao Paja Patak, al' snaćićete se... Have fun!
Stojan
p.s. koristite basica ili gwbasic, tu provereno radi
talk.arjbasic.111imandic,
Sta je ovo,odem na nedelju dana,vratim se,a ono tema BASIC- prazna?
basic.112janko,
-> #111, imandic
> Sta je ovo,odem na nedelju dana,vratim se,a ono tema
> BASIC- prazna?
I tako treba da ostane! (što reče zna se ko)
(Ma šalim se, nemojte da se mrštite).
Imam čak i pitanje: Da li je neko uspeo sa Visual BASIC-om
(to je ono za Windows) da napravi nešto iole korisno? Ako
jeste, neka se pohvali!
basic.113dusanp,
žemu sluzi onaj runtime modul iz win dira? Mrzi me
da ga dl pa probam.
basic.114bulaja,
-> #113, dusanp│Cemu sluzi onaj runtime modul iz win dira? Mrzi me
│da ga dl pa probam.
└───
Pa ne mozes da ga probas ;). Sluzi za startovanje programa pisanih u
Visual Basicu, a koji se distribuiraju okolo bez tog modula.
basic.115ssokorac,
-> #113, dusanp -=)> žemu sluzi onaj runtime modul iz win dira? Mrzi me
-=)> da ga dl pa probam.
Za korišćenje programa napravljenih u VB-u...
basic.116sasa.m,
-> #112, janko=> Imam čak i pitanje: Da li je neko uspeo sa Visual BASIC-om
=> (to je ono za Windows) da napravi nešto iole korisno? Ako
=> jeste, neka se pohvali!
Ma,kakvi.Ja nisam uspeo ni da ga instaliram :(
Nesto nije u redu.Pokrenem install sa diskete,
hard malo šljaka i onda sve stane.
basic.117sasa.m,
-> #113, dusanp=> žemu sluzi onaj runtime modul iz win dira? Mrzi me
=> da ga dl pa probam.
Služi za neke programčiće koji ga traže jer pravljeni su u
Visual Basicu,a nalaze se u PC.OS::windows
basic.118edelic,
-> #107, spantic"Pa dobro vide li ko taj MS Basic 7.1 ? "
S' obzirom da mi je ovo prvo javljanje u konferenciji o Basic-u dozvolite
mi uzurpaciju par redova više no što je uobičajeno.
Imao sam prilike da se susretnem sa Ms Basicom 7.1, ali koristim verziju
7.0 isključivo iz razloga što za nju imam kompletnu literaturu, a za
programe ovakvog ranga to život znači. Inače, literatura je nešto više
od 1600 stranica, ali korisnicima koji znaju Basic, a radili su malo i
sa klasičnim kompajlerima, korištenje tako obimne literature mislim da
ne predstavlja problem.
Moje mišljenje je da se radi o programskom paketu koji konačno treba da
izliječi sve (ili većinu) kompleksa Basic programera.
MS Basic 7.0 (dodatak "profesional" ne potice iz Microsofta, vjerovatno
mu je to nadimak, ali moj je zakljucak da ga po mnogo cemu zasluzuje)
pored QBX (Extended Quick#┬sici ćĚ║Y..žWľWhćąürĽüZŻ╔ą═ĐąüÜ┘ĽüĺĽ═ŇÁjrse, sadrži
biblioteke za rad sa mišem, prozorima, kreiranje korisničkih
interfejsa sa dopadljivim padajućim menijima, rad sa fontovima, grafikom,
osnovne matrične operacije, operacije za rad sa vremenom (od godina do
sekundi), finansijske funkcije, i kao vrhunac Professional ISAM Support
(e ovdje se javlja ono "profesional" i odnosi se samo na ISAM proširenje).
To je kompleks programa za rad sa bazama podataka, njihovu konverziju i
korištenje iz Basica. S' obzirom da mi baze podataka nisu predmet
interesovanja, to vam ne mogu dati komparativne karakteristike u odnosu
na Cliper, Fox Base i slično, ali ovdje prefiks profesional sigurno nije
samo propagandna caka.
Kompajler i linker pored opcija za kompajliranje programa iz QBX (Extended
Q Basica) imaju sve ono što možete susresti kod PASCAL, FORTRAN i sličnih
kompajlera, a moj utisak je da im je i brzina kompajliranja bliska.
Kombinovano linkovanje programa, podprograma, funkcija i subrutina
napisanih u drugim jezicima (PASCAL, C, FORTRAN, ASEMBLER itd) funkcioniše
bez problema, tako da sve ono što ste vi ili neko drugi ranije uradili ne
pada u vodu. To je pogotovu korisno ako koristite veliki broj fortranskih
rutina koje su testirane i potvrđene, i u koje ne morate sumnjati šta rade,
te se ne morate iscrpljivati praveći programe za odredjivanje determinante
matrice, rješavanje sistema diferencijalnih jednačina i mnoštvo drugih
problema koji su već riješeni. Moj "maternji" jezik je Basic, ali 90%
stvari koje znam raditi u Basicu znam i u PASCALU i FORTRANU. Stoga sam
bio stalno u poziciji da pred starijim kolegama (provjerenim, dokaza-
nim naučnicima - "fortrandžijama") objašnjavam kako BASIC ipak nije samo
igračka, ali kada sam njihove programe potjerao iz BASIC-a, a prethodno
ih "iskitio" korisničkim interfejsom, objašnjavanje je postalo suvišno,
i već ih nekolicina "kombinuje" prednosti MS Basica sa svojim jezicima.
Što je tiče brzine rada programa to je priča za sebe. Jednostavna progra-
mska petlja sa malo računa koju QB 4.5 radi oko 40 sec, na Turbo PASCAL-u
se vrti oko 6.5 sec, u MS Fortranu 5 to traje 15 sec, a MS Basic 7.0 posao
završava za 9.5 sec. Priznat ćete da je rezultat uistinu zavidan. Svjestan
sam da ovaj test ne mora da znači mnogo, ali nešto može da kaže.
Kompajlirani program je nešto veći nego kod navedenih jezika, radi se o
<10%, a ako se kompajlira kao RUNTIME, onda smo tu negdje.
Interpreter u mnogome olakšava programiranje, help je kako smo naučili
urađen maestralno (klasični QB help) i ja ne mogu a da ne kažem da je
uistinu divota kada iz gomile primjer programa iz HELPA običnim COPY/
PASTE izabrani primjer program preďžVŰSô+ő╦šüéŻ┘╔Ýą╣ŇüJüÜ┘ĽübąćĽ┴Ż5provjerimo.
U BIN direktoriju se nalaze još neki pomoćni programi: NMAKE kao olakšica
pri kompajliranju i linkovanju, odlični CodeView, ISAM programi za konve-
rziju baza podataka, HELPMAKE, ali za sada još ne mogu reći mnogo o
njihovim dometima.
S' obzirom da se program bez problema može raditi iz više cjelina, a
potom zajednički linkovati, to se granica maksimalno moguće dužine
programa znatno pomijera na gore, a ako kombinujete više EXE programa
sa razmjenama podataka kroz privremene datoteke, mislim da granica
maksimalne dužine programa (uvažavajući DOS-ova ograničenja) aktuelna
samo za prave akrobate i one koji traže dlake u jajetu. Podržan je i rad
sa COMMON blokovima, tako da razmjena podataka između programskih
segmenata ne mora biti limitirana brzinom rada hard-diska.
Programi koje ja radim nisu nikakve računarske akrobacije, ali znaju
biti dugi i tražiti i sa zahtjevima za povećanom tačnošću i većom brzinom,
prijatnim korisničkim interfejsom, malo grafike i slično. MS Basic je
po tom pitanju uistinu na visini zadatka i ja ga toplo preporučujem.
To što je skuplji od C-a ne mora da znači da je bolji, vjerovatno je
tražio više truda. Microsoft zna šta radi i vjerovatno će prva riječ
is skraćenice BASIC (Beginers) sve viće gubiti na značaju, i ostati
kao relikvija iz dana "gumice", C-64, Amstrada itd.
Ako neko želi komparirati MS Basic sa svojim programima pošaljite uz
poruku svoj test program u Basic-u sa pitanjima šta vam je potrebno,
šaljem vam kompajlirani program pa provjeravajte.
Izvinite zbog opširnosti!!!
basic.119ppekovic,
-> #118, edelic>> Izvinite zbog opširnosti!!!
Mislim da ti većina neće zameriti zbog opširnosti već upravo
suprotno, što nisi napisao još koji redak, jer ako si pročitao malo
starije poruke, video si koliko je Sezam gladan za informacijama o MSC
Basic-u 7.1 (7.0).
Svaka čast za poruku!
Paya
basic.120skoprivica,
-> #118, edelic>-> pored QBX (Extended Quick#┬sici
>-> cĚ║Y..CWľWhcąürĽüZŻ╔ą═ĐąüÜ┘ĽüĺĽ═ŇÁjrse, sadrzi
>-> PASTE izabrani primjer program
>-> preďCVŰSô+ő╦süéŻ┘╔Ýą╣ŇüJüÜ┘ĽübącĽ┴Ż5provjerimo.
Sta je pisalo u ovim redovima ?
>-> Izvinite zbog opsirnosti!!!
Ocemo jos, tj. ako ne mogu da ga vidim volim i da cujem nesto o
njemu...
basic.121skoprivica,
-> #119, ppekovic>-> Svaka cast za poruku!
TAKO JE....
basic.122edelic,
-> #120, skoprivicaMS Basic 7.0
Pisalo je:
Moje mišljenje je da se radi ▀LprogramskomžĐXşWčŇK+Ë╣ů╣Żüó╔Ľëůü"ů5izliječi sve
(ili većinu) kompleksa Basic programera.
MS Basic 7.0 (dodatak "profesional" ne potice iz Microsofta, vjerovatno
mu je to nadimak, ali moj je zakljucak da ga po mnogo cemu zasluzuje)
pored QBX (Extended Quick Basic) interpretera, koji ne koristi sve resu-
rse, sadrži biblioteke za rad sa mišem, prozorima, kreiranje korisničkih
interfejsa sa dopadljivim padajućim menijima, rad sa fontovima, grafikom,
osnovne matrične operacije, operacije za rad sa vremenom (od godina do
sekundi), finansijske funkcije, i kao vrhunac Professional ISAM Support
(e ovdje se javlja ono "profesional" i odnosi se samo na ISAM proširenje).
Interpreter u mnogome olakšava programiranje, help je kako smo naučili
urađen maestralno (klasični QB help) i ja ne mogu a da ne kažem da je
uistinu divota kada iz gomile primjer programa iz HELPA običnim COPY/
PASTE izabrani primjer program prenesemo u radnu površinu i sve lijepo
provjerimo.
(Nadam se da će ovaj put veze biti "na nivou")
JOŠ:
S obzirom da mi je hard disk kapacitivan, to nisam mnogo brinuo koliko
ću morati odvojiti prostora, ali smatram da je značajno napomenuti i
taj podatak: naravno, možete birati pri instalaciji šta vam treba, od
minimuma QBX-a do instalacije i kompletnih biblioteka. Ja sam uzeo sve
što mi je nuđeno u maksimumu i izgubio nešto manje od 9 Mb prostora na
hard disku. Nisam oprobavao "siromašnije" kombinacije, ali mislim
da je ralno očekivati da kod minimalne konfiguracije programa smanjite
potreban prostor za oko 40-tak %. Ovo uistinu nije malo memorije, ali
program nije pisan za one koji vole imati na (svom malom) disku po
piratizovani "primjerak" većine jezika, par tekst procesora, DTP program,
malo grafike, nezaobilazni Windows itd. Kad ulazite u vode ovakvih
programa morate ili raditi generalne čistke diskova, ili dokupiti nešto
kapacitivnije i brže.
U ranijem tekstu sam pomenuo da su padajući meniji dopadljivi, ipak
smatram potrebnim napomenuti da je radna okolina Windowsa (a time i
Visual Basica i drugih Win-aplikacija) prijatnija i ljepša, ali kada
na tas stavite sve ostalo - zna se pobjednik.
Moram da kažem još da su me odgovori na moju prvu poruku malo ohrabrili,
mada sam uvijek mislio da za "mlade hakere" nemam nešto posebno zanimljivo
reći, stvari koje poznajem su u principu jednostavne jer računar mi je
ipak "pomoćna alatka" (naravno i najdraži hobi), ali ako ima nešto
što vas posebno interesuje u vezi MS Basica 7.0 - pitajte.
Pozdrav, Edelić
Ď
basic.123nboskovic,
-> #122, edelic*> (Nadam se da će ovaj put veze biti "na nivou")
A što lepo ne napraviš exec kod kuće pa ga pošalješ
na sezam ? Tada nema frke iako je veza loša.
(c) klap
nikola
basic.124janko,
-> #122, edelic>> -> pored QBX (Extended Quick#┬sici
>> -> cĚ║Y..CWľWhcąürĽüZŻ╔ą═ĐąüÜ┘ĽüĺĽ═ŇÁjrse, sadrzi
>> -> PASTE izabrani primjer program
>> -> preďCVŰSô+ő╦süéŻ┘╔Ýą╣ŇüJüÜ┘ĽübącĽ┴Ż5provjerimo.
> Sta je pisalo u ovim redovima ?
> Pisalo je:
> Moje mišljenje je da se radi
> ▀LprogramskomžĐXşWčŇK+Ë╣ů╣Żüó╔Ľëůü"ů5izliječi sve (ili
> većinu) kompleksa Basic programera.
:)
Sugestija EDeliću: Znate li kako se ostvaruju poruke bez
grešaka? Šaljete ih na Sezam koristeći Exec fajl, pomoću nekog
od protokola. Ako imate PC, skinite SOR, koji će za vas praviti
Exec fajlove, a ako ne, možete ih praviti 'peške.'
basic.125edelic,
-> #124, jankoRekoh u prvoj poruci da sam novi u konferencijama, hvala na sugestiji,
Pozdrav -
edelic
basic.127icke,
HELP!
Ako ima nekog kompetentnog neka gukne. Imali smo kolokvijum iz
programiranja (predmet PJMP1 na ETFu) pa se u jednom test pitanju
pominjala basic naredba CHR$ (brojni izraz).
E sad taj brojni izraz kao rezultat daje realnu vrednost. Pošto je
nama rečeno da možemo (na kolokvijumu) da koristimo sve postojeće
verzije basic-a interesuje me da li postoji verzija u kojoj gore
navedeno ne šljaka tj. da li sve verzije basic-a prihvataju izraz
CHR$(real) ???
P.S. Nađite verziju basic-a u kojoj CHR$(real) vraća grešku i
učinićete mnogo studenata ETFa srećnim ! :)
pozdrav od Ivan-a
basic.128ssokorac,
-> #127, icke -=)> P.S. Nađite verziju basic-a u kojoj CHR$(real) vraća
-=)> grešku i učinićete mnogo studenata ETFa srećnim ! :)
Spectrumov BASIC? ;)
basic.129nkbog,
-> #127, icke>> pominjala basic naredba CHR$ (brojni izraz).
Basic principijelno ne pravi razliku između brojnih podataka:
naime ako neka funkcija koristi cele brojeve, on će realne brojeve
konvertovati u cele, et vice versa. Jedina situacija da ovde ne
mogu da se pojave realni brojevi je kod tzv. "celobrojnih" Basica,
koji PO DEFINICIJI nemaju realnih brojeva, pa se takav problem ni
ne može pojaviti.
NB.
basic.130ztuke,
-> #127, icke> verzije basic-a interesuje me da li postoji verzija u kojoj gore
> navedeno ne šljaka tj. da li sve verzije basic-a prihvataju izraz
> CHR$(real) ???
>
> P.S. Nađite verziju basic-a u kojoj CHR$(real) vraća grešku i
> učinićete mnogo studenata ETFa srećnim ! :)
ZOOM karaktera sa ASCII kodom SQR(-175.68)
┌───────┐
│ĐĐĐĐĐĐĐ│ Dakle ako je BROJ=SQR(-175.68)
│ĐĐĐĐŠŠŠ│ onda će ti PRINT CHR$(BROJ) dati
│ŠŠŠŠŠŠŠ│ ovaj karakter!
│čččččŠĐ│
│ččččččč│
└───────┘
Koja je ovo verzija bejzika ne mogu ti reći zbog
reklame al' javi mi u mail pa ću ti reći! ;)))
ZT
basic.131janko,
-> #128, ssokorac> -=)> P.S. Nađite verziju basic-a u kojoj CHR$(real) vraća
> -=)> grešku i učinićete mnogo studenata ETFa srećnim ! :)
>
> Spectrumov BASIC? ;)
Zlobniče. ;(
Bejzici po definiciji rade sa Real-nim brojevima.
A=1 ili LET A=1 dodeljuje realan broj 1 u promenljivu A.
Spektum je malo pametniji, pa interno ima specijalno kodovanje
za brojeve u opsegu -65535..65535, koje pamti kao intidžere ako
nemaju frakciju, ali to korisnik ne vidi, osim u jednom bagu,
koliko se sećam. Znači, ne primećuješ uopšte tip promenljive,
znaš samo da je u njoj broj.
Ima i puno bejzika koji imaju eksplicitno proglašavanje tipa
integer, ali pošto nemaju deklaracije, to rade ekstenzijom na
ime, pa A%=1 stavlja INTEGER 1 u A% promenljivu.
basic.132ivans,
-> #131, janko* Ima i puno bejzika koji imaju eksplicitno proglasavanje
* tipa integer, ali posto nemaju deklaracije, to rade
* ekstenzijom na ime, pa A%=1 stavlja INTEGER 1 u A%
* promenljivu.
Da, vecina bejzika nema deklaracije... Ali, izuzetaka ipak ima! Najprostiji
primer je GWBASIC... Kod njega postoje i deklaracije tipa DEFINT/SNG/DBL/STR,
kojima se, repsektivno, deklarisu celi brojevi, racionalni jednostruke
preciznodti, racionalni dvostruke preciznosti i stringovi. Naravno, uz sve ovo
vecina bejzika ima i deklaracije nizova ili matrica (DIM) - stavise, cak je i
bejzik "Galaksije" (sta to bese? :) imao neke deklaracije (cini mi se ARR$)...
Dakle, A%=1 stavlja zaista celi broj u A%, ali se isto postize i ako se stavi
negde u programu DEFINT A... Onda se ne stavljaju "procenti" (tj. ne A%=1), vec
samo A=1. Kratko i jasno! A lici na FORTRAN-ske deklaracije, jer je moguce
deklarisati grupu promenljiva abecednim redom... Ali, to je vec druga prica...
Pozdrav,
Ivans.
basic.133dejanr,
-> #132, ivans>> stavise, cak je i bejzik "Galaksije" (sta to bese? :) imao neke
>> deklaracije (cini mi se ARR$)...
Bejzik tog slavnog računara (zapravo, najslavnijeg domaćeg, zar ne? :)
imao je deklaraciju ARR$(n) kojom se rezervisao prostor za alfanumerički
niz X$(1), X$(2)..., X$(n) (možda je postojalo i X$(0)?). Kao da kažete
DIM X$(n), ali radi samo za jedan niz :)
Moram da priznam da sam morao da pogledam u Uputstvo da bih se toga
setio, "Galaksiju" ne upalih već par godina...
basic.134skoprivica,
-> #130, ztuke>-> ZOOM karaktera sa ASCII kodom SQR(-175.68)
>->
>-> ┌───────┐
>-> │DDDDDDD│ Dakle ako je BROJ=SQR(-175.68)
>-> │DDDDSSS│ onda ce ti PRINT CHR$(BROJ) dati
>-> │SSSSSSS│ ovaj karakter!
>-> │ZZZZZSD│
>-> │ZZZZZZZ│
>-> └───────┘
>->
>-> Koja je ovo verzija bejzika ne mogu ti reci zbog
>-> reklame al' javi mi u mail pa cu ti reci! ;)))
Ne razumem sta si 'teo da kazes...Pojasni malo...
Aje... CTEBO.
basic.135dzakic,
-> #131, janko>> nemaju frakciju, ali to korisnik ne vidi, osim u jednom bagu,
>> koliko se sećam.
INT (-65536) = -1 :))
basic.136ivans,
-> #133, dejanr* >> stavise, cak je i bejzik "Galaksije" (sta to bese? :)
* >> imao neke deklaracije (cini mi se ARR$)...
*
* Bejzik tog slavnog racunara (zapravo, najslavnijeg
* domaceg, zar ne? :)
Bogami, TIM-011 je svojevremeno bio ozbiljna konkurencija i samom PC-u... Nisam
dovoljno kompetentan da o tome pricam, ali ono sto sam cuo - odusevilo me je.
Nadam se da ce se naci neko ko ce ovo umeti da objasni; na Sezamu ima takvih
ljudi, pa ako procitaju ovo, i ako smatraju potrebnim - neka jave!
Pozdrav,
Ivans.
basic.137dejanr,
-> #136, ivans>> Bogami, TIM-011 je svojevremeno bio ozbiljna konkurencija i samom
>> PC-u...
Odgovor je u RACUNARI/istorija.
basic.138ztuke,
-> #134, skoprivica> Ne razumem sta si 'teo da kazes...Pojasni malo...
Fora je propala zbog pogrešnih kodova itd., itd. ...
Nema veze! :)
ZT
basic.139spantic,
-> #118, edelic> Izvinite zbog opširnosti!!!
Hvala na njoj, više je nego opravdana.
basic.140skoprivica,
jel' neko voljan da mi objasni par stvari o VisualBasicu ?
Ocu da napisem : PRINT
"Hello World" :) Kako ?
Aje... CTEBO.
basic.143ssokorac,
-> #140, skoprivica:> Ocu da napisem : PRINT
:> "Hello World" :) Kako ?
Ovako: Uzmeš pa klikneš na veliko A - ikonu. Zatim napraviš prozor
gde hoćeš da se pojavi tekst. Zatim, izabereš border none za taj
prozor, i po želji mu promeniš ime u recimo, poruka.
Sada imaš dva izbora:
(1) dvaput klikneš na prozor (tj. gde je bio, jer se sada ne vidi)
i kucaš - poruka.caption="Hello World"
(2) izabereš caption medju opcijama i napišeš Hello World. Zatim
izabereš visible i napišeš false. Dvaput klikneš na prozor i kucaš
poruka.visible=-1
Eto, to je to. :)
basic.144predragd,
Zdravo
U prilogu vam saljem UBASIC. Program izgleda (samo izgleda) kao
GWBASIC, ali je prvenstveno namenjen za numericke proracune. Idealno
za one koji trenutno polazu taj ispit. Takodje je data verzija
programa namenjena 32-bitnim masinama.
Pozdrav, Pedja.
basic.145predragd,
Evo i nastavka.
Pedja.
basic.146feniks,
-> #144, predragd
** Uz poruku 'ubasic.arj' (179504 bytes)
A gde je drugi deo ? ;)
basic.147ilazarevic,
-> #143, ssokorac█ Eto, to je to. :)
Mnooogo komplikovano ;)
basic.148predragd,
-> #146, feniks Izvinjavam se zbog kasnjenja, ali tog dana nisam bio u mogucnosti
da posaljem nastavak. Nadam se da nisi dugo cekao na nastavak, i da ce ti
se cekanje isplatiti.
Pedja.
basic.149mzarkov,
Nadam se da neko moze da pomogne.
Preveo sam sledeci fortran program u basic (Quick 4.5)
(Radi se o programu za predikciju koristeci Durbinov algoritam
(iz Stearns S.D. i David R.A. Signal Procesinsing Algorithms. 1988
Prentice Hall))
AAVECT je vektor observacija
L = order of system of equations
B = solution vector
IERROR 0 NO ERRORS
1 INVALID ORDER OF L (<0)
2 DIVIDE BY ZERO
Za L = 1 dobijam tacna resenja (B(0)=1.618; B(1)=-1), ali za L=10
(drugi primer) dobijam iste vrednosti za B(0) i B(1) i 0 za B(2 do 10)
umesto ocekivanih
B(0)=-0.007
B(1)= 0.004
B(2)= 0.004
B(3)=-0.007
B(4)=-1.000
I OSTALI SU JEDNAKI 0
U ovom slucaju i u primeru i kod mene program prijavljuje gresku
Divide by zero (sto i treba)
Dakle efo Fortran programa
DIMENSION AAVECT(0:2), B(0:1)
DATA L/1/
PI = 4. * ATN(1.)
DO 1 LL = 0, L + 1
AAVECT(LL) = .5 * (COS(2. * PI * LL / 10.))
1 CONTINUE
CALL SPDURB(AAVECT, L, B, IERROR)
IF (IERROR .NE. )0 THEN
PRINT*, 'Greska (1: L<0; 2: deljenje nulom) ', IERROR
PAUSE
ENDIF
PRINT 100, (I,B(I),I=0,L)
100 FORMAT (' FILTER COEF ',/,(' B(',I1,')='F10.3))
END
SUBRUTINE SPDURB (AAVECT, L, B, IERROR)
DO 1 I= 0, L
B(I) = 0.0
1 COMTINUE
IERROR = 0
IF (L .LT. 0) IERROR = 1
IF (ABS(AAVECT(0)) .LT. 1.E-10) IERROR = 2
IF (IERROR .NE. 0) RETURN
B(0) = -AAVECT(1) / AAVECT(0)
IF (L .EQ. 0) GO TO 7
IERROR = 2
DO 5 NN = 1, L
GAMMA = 0
GAMMAP = 0
DO 2 I = 1, NN
GAMMA = GAMMA - AAVECT(I) * B(NN - I)
GAMMAP = GAMMAP - AAVECT(I) * B(I - 1)
2 CONTINUE
SCL = AAVECT(0) - GAMMAP
IF (ABS(SCL) .LT. 1.E-10) GO TO 6
BETA = -(AAVECT(NN + 1) - GAMMA) / SCL
DO 3 J = 0 TO (NN - 2) /2
TMP = B(J)
B(J) = B(J) + BETA * B(NN - 1 - J)
IF (NN .GT. 1) B(NN - 1 - J) = B(NN - 1 - J) + BETA *
TMP
3 CONTINUE
IF (INT(NN - 2) / 2) .NE. INT((NN - 1) / 2) B((NN - 1) / 2) = B((NN -
1) / 2) + BETA * B((NN - 1) / 2)
B(NN) = BETA
5 CONTINUE
IERROR = 0
6 CONTINUE
7 DO 8 I = 0, L
B(I) = -B(I)
8 CONTINUE
RETURN
END
a evo i mog prevoda na basic:
DECLARE SUB SPDURB (AAVECT() AS DOUBLE, L!, B() AS DOUBLE, IERROR!)
DIM AAVECT(0 TO 11) AS DOUBLE, B(0 TO 10) AS DOUBLE
L = 10
PI = 4 * ATN(1)
FOR LL = 0 TO L + 1
AAVECT(LL) = .5 * (COS(2 * PI * LL / 10))
NEXT
CALL SPDURB(AAVECT(), L, B(), IERROR)
IF IERROR <> 0 THEN PRINT "Greska (1: L<0; 2: deljenje nulom) "; IERROR
NEXT
FOR I = 0 TO L
PRINT B(I)
NEXT I
SUB SPDURB (AAVECT() AS DOUBLE, L, B() AS DOUBLE, IERROR)
CLS
PRINT "SADA POCINJE"
FOR I = 0 TO L
B(I) = 0
NEXT I
IERROR = 0
IF L < 0 THEN IERROR = 1
IF (ABS(AAVECT(0)) < .0000000001#) THEN IERROR = 2
IF IERROR <> 0 THEN EXIT SUB
B(0) = -AAVECT(1) / AAVECT(0)
IF L = 0 THEN GOTO SEDMICA
IERROR = 2
PET: FOR NN = 1 TO L
GAMMA = 0
GAMMAP = 0
FOR I = 1 TO NN
GAMMA = GAMMA - AAVECT(I) * B(NN - I)
GAMMAP = GAMMAP - AAVECT(I) * B(I - 1)
NEXT I
SCL = AAVECT(0) - GAMMAP
IF (ABS(SCL) < .0000000001#) THEN GOTO HAHA
BETA = -(AAVECT(NN + 1) - GAMMA) / SCL
FOR J = 0 TO (NN - 2) STEP 2
TMP = B(J)
B(J) = B(J) + BETA * B(NN - 1 - J)
IF NN > 1 THEN B(NN - 1 - J) = B(NN - 1 - J) + BETA *
TMP
NEXT J
IF INT((NN - 2) / 2) <> INT((NN - 1) / 2) THEN B((NN - 1) / 2) = B((NN
- 1) / 2) + BETA * B((NN - 1) / 2)
B(NN) = BETA
NEXT NN
IERROR = 0
GOTO SEDMICA
HAHA:
SEDMICA: FOR I = 0 TO L
B(I) = -B(I)
NEXT I
END SUB
Hvala unapred.
MZ
basic.150vili,
-> #149, mzarkov
Ovo u Basicu :
FOR J = 0 TO (NN - 2) STEP 2
nije isto sto i ovo u Fortranu:
DO 3 J = 0 TO (NN - 2) / 2
Vili
PS. Ispravi ovo pa ce mozda biti u redu.
basic.151iboris,
Mom ortaku treba Borlandov TURBO BASIC. Da li neko zna gde se to moze nabaviti.
Istovremeno pita postoji li Besic kompajler za programe napisane u Turbo
BASICU.
Pozdrav, Boris
basic.152bulaja,
-> #151, iboris│Mom ortaku treba Borlandov TURBO BASIC. Da li neko zna gde se to moze
│nabaviti. Istovremeno pita postoji li Besic kompajler za programe
│napisane u Turbo BASICU.
└───
Turbo Basic vise ne postoji. Borland je digao ruke od njega, a sva prava
je preuzela neka pojma-nemam-koja softverska kuca (cini mi se neki
skandinavci, al' nisam mnogo siguran ;). Promenili su i ime (ni njega
neznam ;), ali u reklamama pise "Formerly Turbo Basic from Borland".
basic.153predrag,
-> #152, bulaja>> Turbo Basic vise ne postoji. Borland je digao ruke od
>> njega, a sva prava
Koliko znam covek koji je napisao turbo basic je
otisao iz firme (nisam bas siguran) ali je napisao
novi basic koji se zove POWER BASIC i koji je kompatibilan
sa starim ali je dodao jos mnogo novih stvari.
basic.154macak,
-> #151, iboris█ Mom ortaku treba Borlandov Turbo Basic
Imam ja TB verzija 1.0 i mislim da je bezveze.Za druge verzije
ne znam (ne znam ni da li postoje).Í
Bolje se mani toga. :)
basic.155dragoslavr,
-> #152, bulajayou > skandinavci, al' nisam mnogo siguran ;). Promenili su
you > i ime (ni njega neznam ;), ali u reklamama pise
you > "Formerly Turbo Basic from Borland".
Power Basic...
basic.156feniks,
Jel' trac ili istina da se pojavio neki GFA Basic za PC,
koji je navodno 3-4 puta brzi od Turbo Basic-a i Quick Basica-a?
Ako to cudo postoji, zanima me demo verzija ;)
P.S. Naravno, brze radi i od onog na Atari-ju :)))
Pozdrav
basic.157imandic,
-> #156, feniksMa kakav demo,ja bi hteo original!
Ako je to istina-moram da imam!
basic.158bulaja,
-> #156, feniks│Jel' trac ili istina da se pojavio neki GFA Basic za PC,
│koji je navodno 3-4 puta brzi od Turbo Basic-a i Quick Basica-a?
│Ako to cudo postoji, zanima me demo verzija ;)
└───
E pazi sad ;) - DEMO verzija zaista postoji, i moze se naci u PC.SOFT
konferenciji uz poruku 5.105.
basic.159feniks,
-> #158, bulaja│E PAZI SAD ;) - DEMO VERZIJA ZAISTA POSTOJI, I MOZE SE NACI U PC.SOFT
│KONFERENCIJI UZ PORUKU 5.105.
└────
1:0 za Bulaju :)))))))
Informacija je ipak korisna, jer sad sigurno znam da postoji
MS.DOS verzija GFA Basic-a, ali kakav je? Demo verzija je prakticno
neupotrebljiva :(
Bilo bi interesantno da iznesu svoja misljenja i korisnici
ORIGINALNE verzije ovog paketa ;)
P.S. Ovo je bila druga faza procedure "pecanje" :)))
basic.160dega,
-> #151, iboris|... Mom ortaku treba Borlandov TURBO BASIC. Da li neko zna gde
|... se to moze nabaviti.
Znam ja ;), mail-ni me!
basic.161yoki,
Help , da li neko ima ili moze da nabavi proisadm.exe !!!!
Y O K I
basic.162sveto,
Da li neko ima nesto od literature za Visual Basic?
Sveto
basic.163tesloni,
Vozdra narode ....
Pitanje : Kako se u Turbo Basicu može otvoriti više
od 20 datoteka istovremeno ?
Može i neki rezidentni program koji bi se
startovao pre samog programa u TB .
... Ú-> Tesloni <-Ú
basic.164tesloni,
(*
Na zahtev mog šefa ponavljam pitanje :
( njega životno interesuje Ú-> )
*)
Dakle da li je moguće ikako u Turbo Basicu otvoriti
više od 20 datoteka i kako ? Misli se na programe
pisane u istom ... Svaka ideja dobro došla ..
(*
( Potreban odgovor , hoće da mi isključe modem pa moram
opravdati rad . Ako neko pastuje , ovo neka izostavi
kao i ono u uvodu , da me šef ne .... Ú-> )
*)
... Ú-> Tesloni <-Ú
basic.165imandic,
-> #164, tesloniMozda nekim zahvatom u assembleru,prvo napises rutinu u njemu,onda u
TBasicu sa CALL pozoves istu?
Neznam,samo mislim...
basic.166sveto,
Ponavljam pitanje> Ima li neko knjigu za Visual Basic?
Pozdrav, Sveto
basic.167sslavko,
Da li Visual Basic ima nešto poput IN i OUT instrukcija odnosno nešto
kao port,portw i portl u Turbo Pascalu? Uglavnom bilo šta preko čega
mogu da pristupim direktno hardveru?
Pozdrav
Slavko.
basic.168pedjam,
HELP!!! Kako da iz BASIC-a sliku sa ekrana (VGA 640x480x16) smestim u
memoriju i kasnije vratim. žisto BLOAD i BSAVE radi samo crno-belo,
a ne čuva mi paletu. Znam da ima neka caka kako iz više ravni pokupiti
sve informacije, ali ne znam da je izvedem.
Pomagajte ! ! !
Unapred hvala, / /
Pedja Milicevic
basic.169putnik,
Please da mi neko pomogne...
Evo dela programa (program je radjen u Qbasicu iz DOS-a 5.00):
300 CLS
310 LOCATE 8, 25: PRINT "F1 ...o ovom programu"
320 LOCATE 9, 25: PRINT "F2 ...dokumentacija "
330 LOCATE 10, 25: PRINT "F3 ...biografski podaci o autoru"
340 LOCATE 11, 25: PRINT "F10 izlaz u DOS"
350 LOCATE 14, 20: PRINT "Izaberi"
360 IF INKEY$ = CHR$(59) THEN GOTO 500
370 IF INKEY$ = CHR$(60) THEN GOTO 600
380 IF INKEY$ = CHR$(61) THEN GOTO 700
390 IF INKEY$ = CHR$(68) THEN GOTO 800
500 CLS : PRINT "F1 podaci o programu...": SLEEP 0: GOTO 300
600 CLS : PRINT "F2 podaci TI...": SLEEP 0: GOTO 300
700 CLS : PRINT "F3 biografija...": SLEEP 0: GOTO 300
800 CLS : INPUT "jesi li siguran (d/n)?"; d$
900 IF d$ = "d" THEN PRINT "BYE": SYSTEM: ELSE GOTO 300
Problem je u tome sto ne radi dobro IF INKEY$. Naime, kada dodje do
360 linije, program ne ceka da ja pritisnem F1,F2,F3 ili F10, nego
odmah ide na 500 liniju, kao da sam pritisnuo F1. A trebalo bi, naravno,
da saceka moj izbor. Kako da resim ovo?
I jos jedno pitanje. Kako se radi sa naredbom PLAY (za muziku)?
Ne bas razumem objasnjenje u HELP-u.
Brana
basic.170vbole,
-> #169, putnik> Problem je u tome sto ne radi dobro IF INKEY$. Naime, kada dodje do
> 360 linije, program ne ceka da ja pritisnem F1,F2,F3 ili F10, nego
> odmah ide na 500 liniju, kao da sam pritisnuo F1. A trebalo bi, naravno,
> da saceka moj izbor. Kako da resim ovo?
Ako nije pritisnut nijedan taster, program jednostavno prolazi sva ona
ispitivanja i nastavlja od linije 500, zato ubaci sledeće linije:
352 KOD$ = INKEY$
354 IF KOD$ = "" THEN 352
Ovako je bolje, jer:
a) u varijabli KOD$ imaš sačuvan kod pritisnutog tastera
b) funkcijski tasteri daju kod od 2 bajta, a ne jednobajtni, znači za
njih bi morao da uvedeš 2 ispitivanja, otprilike ovako:
356 IF ((LEN(KOD$) <> 2) OR (LEFT$(KOD$,1) <> 0)) THEN 352
358 KOD$ = RIGHT$(KOD$,1)
Pa onda nastavljaš sa ispitivanjem koji F-taster je stisnut:
360 IF KOD$ = CHR$(59) THEN 500
370 IF KOD$ = CHR$(60) THEN 600
380 IF KOD$ = CHR$(61) THEN 700
390 IF KOD$ = CHR$(68) THEN 800
Nije nijedan od onih koji tebi trebaju, ajd' ponovo na početak:
395 BEEP:GOTO 352
> Evo dela programa (program je radjen u Qbasicu iz DOS-a 5.00):
!!!!!!!
Jesi li siguran ??
basic.171ivans,
-> #169, putnik* 360 IF INKEY$ = CHR$(59) THEN GOTO 500
* 370 IF INKEY$ = CHR$(60) THEN GOTO 600
* 380 IF INKEY$ = CHR$(61) THEN GOTO 700
* 390 IF INKEY$ = CHR$(68) THEN GOTO 800
* 500 CLS : PRINT "F1 podaci o programu...": SLEEP 0: GOTO 300
* Problem je u tome sto ne radi dobro IF INKEY$. Naime, kada
* dodje do 360 linije, program ne ceka da ja pritisnem
* F1,F2,F3 ili F10, nego odmah ide na 500 liniju, kao da sam
* pritisnuo F1. A trebalo bi, naravno, da saceka moj izbor.
* Kako da resim ovo?
Problem je u tome što IF INKEY$ radi dobro :). Naime, INKEY$ ne čeka da ti
pritisneš neki taster, nego, ako nije pritisnuto ništa vraća prazan string. Da
bi to izbegao, neka ti neki čVRLJ$ pokupi podatke o pritisnutom tasteru, ovako,
na primer:
355 čVRLJ$=INKEY$
Zatim promeni redove 360-390 po sledećem šablonu:
360 IF čVRLJ$ = CHR$(59) THEN GOTO 500
Zatim stavi liniju (da ne bi prešao na 500)
400 IF čVRLJ$ = "" THEN GOTO 360
I to bi bilo to. E, sada ostaje pitanje da li one funkcijske tastere možeš da
kontrolišeš samo pomoću INKEY$, jer oni vraćaju dva koda... No, to nije neki
problem ispitati i primeniti (-->Implementirati? How Quaint! :)).
Pozdrav,
Ivans.
basic.172jpavlov,
-> #169, putnikA, da staviš
359 TIPKA$=INKEY$
400 GOTO 359?
sintaksa: PLAY string
10 muzika$="L4MLcde"
20 PLAY muzika$
L4 - dužina trajanja note
ML - legato (povezano) * ovo je malo laički, muzičari
znaju šta znači taj izraz.
MN - normalna muzika. Nota traje 7/8 vremena određenog sa L.
MS - staccato. Nota traje 3/4 vremena određenog sa L.
cde - ce de e (ili do re mi)
Tn - tempo. n=br. četvrtina u minutu.
ima još mnogo toga - povisilica #+, snizilica #- itd.
basic.173drakce,
-> #169, putnik
│ Problem je u tome sto ne radi dobro IF INKEY$. Naime, kada dodje do 360
└─────
INKEY$ samo ispita (i zapamti) da li je neki taster pritisnut, pa nastavi
dalje. Zato staviš jednu petlju u kojoj ćeš stalno ispitivati INKEY$. Takođe,
funkcijski tasteri daju tzv "extended code" pa im dodaš jedno CHR$(0) ispred.
Naprimer F1 je CHR$(0)+CHR$(59).
300 CLS
310 LOCATE 8, 25: PRINT "F1 ...o ovom programu"
320 LOCATE 9, 25: PRINT "F2 ...dokumentacija "
330 LOCATE 10, 25: PRINT "F3 ...biografski podaci o autoru"
340 LOCATE 11, 25: PRINT "F10 izlaz u DOS"
350 LOCATE 14, 20: PRINT "Izaberi"
355 KEY$ = INKEY$
360 IF KEY$ = CHR$(0) + CHR$(59) THEN GOTO 500
370 IF KEY$ = CHR$(0) + CHR$(60) THEN GOTO 600
380 IF KEY$ = CHR$(0) + CHR$(61) THEN GOTO 700
390 IF KEY$ = CHR$(0) + CHR$(68) THEN GOTO 800
395 GOTO 355
500 CLS : PRINT "F1 podaci o programu...": SLEEP 0: GOTO 300
600 CLS : PRINT "F2 podaci TI...": SLEEP 0: GOTO 300
700 CLS : PRINT "F3 biografija...": SLEEP 0: GOTO 300
800 CLS : INPUT "jesi li siguran (d/n)?"; d$
900 IF d$ = "d" THEN PRINT "BYE": SYSTEM: ELSE GOTO 300
BTW ne trebaju ti brojevi linija u Quick Basicu, al' o tom potom :)
Pozdrav
basic.174mladenp,
-> #169, putnik> 350 LOCATE 14, 20: PRINT "Izaberi"
> 360 IF INKEY$ = CHR$(59) THEN GOTO 500
> Problem je u tome sto ne radi dobro IF INKEY$. Naime, kada
> dodje do 360 linije, program ne ceka da ja pritisnem
> F1,F2,F3 ili F10, nego odmah ide na 500 liniju, kao da sam
> pritisnuo F1. A trebalo bi, naravno, da saceka moj izbor.
> Kako da resim ovo?
IF INKEY$ radi savršeno. Kada pozoveš funkciju INKEY$, ako je
neki taster pritisnut, ona vrati njegov kod, a ako nije,
vrati prazan string i ide dalje. Štos je u tome što ne čeka.
Ti moraš da obezbediš čekanje petljom iz koje se izlazi
ako je pritisnut neki taster. Na primer:
DO
Taster$ = INKEY$
LOOP WHILE (Taster$ = "")
Zatim idu grananja:
IF Taster$ = CHR$( itd.
Drugi način je naredbom KEY (). Pritiskom na funkcijski taster
poziva se odgovarajući potprogram.
basic.175glisin,
ŢŢŢ Odgovori: 170, 171, 172, 173, 174
Boga ti! Svi kao nešto pljuc BASIC, fuj BASIC etc... kad ono čovek postavi
pitanje i svi skoče za par sati "ja ja znam, evo, evo", jedva čekali! ;-)))
Ispade da nas par stvarno ne zna da napiše program u BASIC-u, nego samo tamo u
nekom C-u, Pacalu, Moduli, etc...
Hm... moraću da počnem da učim ;-)
ŢŢŢIGGYŮŮŮ
basic.176ivans,
-> #175, glisin* Ispade da nas par stvarno ne zna da napiše program u
* BASIC-u, nego samo tamo u nekom C-u, Pacalu, Moduli,
* etc...
Je l' ovo trebalo da bude duhovito? ;-)
basic.177mladenp,
-> #175, glisin> Hm... moraću da počnem da učim ;-)
Samo napred. Ako bude problema nemoj se ustezati da pitaš. ;)
basic.178ssokorac,
-> #175, glisin :> Hm... moraću da počnem da učim ;-)
Pa, basic spada u osnovnu kulturu zašto bi se i zvao BASIC? :)