pascal.412sslavko,
-> #397, ilazarevic>> U vezi onog unita za rad sa mišem:
>>
>> Kada se izađe iz programa koji koristi ovaj unit, kursor
>> postaje tanka crta koja trepće iznad, a ne ispod slova?! Jel to
>> mora tako?
Ne mora, naravno. Na različitim video-adapterima se dos_kurson
procedura manifestuje na različite načine, što je potpuno razumljivo
kada se ima u vidu način na koji ona radi. Ona samo definiše prvu i
poslednju liniju kursora (regs.ch i regs.cl) koje su trenutno podešene
na šestu i sedmu liniju. Ti ih možeš podesiti na koje god hoćeš linije
promenom ove dve vrednosti u proceduri dos_kurson i tako dobijati
razne oblike kursora, od linije na bilo kojoj visini do punog bloka.
Pozdrav
Slavko.
pascal.413sslavko,
-> #403, nesavic>> e pa meni ONAJ dragi unit za misa ne radi u GRAFICKOM
>> modu, tj. nema nikakve strelice, ni crossa nema nista
>> nego na slepo... A text mod lepo radi...!
U poruci uz koju je prikačen .TPU fajl (ne .PAS) lepo piše da je to
zbir funkcija i procedura za rad sa mišem u text modu.
Pozdrav
Slavko.
pascal.414vvelisavljev,
-> #400, adezelin To je sve što imam. :(
pascal.415vvelisavljev,
-> #409, majklHvala, proradilo je ! Jedino mi nije jasno zašto mora naziv fonta da bude
dugačak 4 karaktera?? (važno je da radi :)) )
pascal.416janko,
-> #394, dejanr>>> A korišćenje text režima za ne-tekst datoteke u Pascal-u
>>> mi ne miriše na dobro -- dovoljno je da ima u datoteci chr(26) i...
>
> i... ništa. žita ga kao i svaki drugi bajt. Probaj ovaj
> program:
>
Trik je divan. Svaka čast.
Nisam probao, ali ima šanse da je ovime TP brži od C-a. :)
žini mi se da se sa settextbuffer (ili tako nekako) u TP može
postaviti bafer do 64K, a sa setvbuf (bar u BC) na manje od
32K.
Ako neko meri razlike, neka javi.
pascal.418skoprivica,
-> #415, vvelisavljev-> Hvala, proradilo je ! Jedino mi nije jasno zasto mora naziv fonta
-> da bude dugacak 4 karaktera?? (vazno je da radi :)) )
Ako te ne mrzi, podeli fontove sa nama....
pascal.419ilazarevic,
-> #412, sslavko█ na šestu i sedmu liniju. Ti ih možeš podesiti na koje god hoćeš
█ linije promenom ove dve vrednosti u proceduri dos_kurson i tako
█ dobijati razne oblike kursora, od linije na bilo kojoj visini do
█ punog bloka.
Hvala, to mi je trebalo (tj, treba mi pun blok).
pascal.420vvelisavljev,
-> #418, skoprivica> Ako te ne mrzi, podeli fontove sa nama....
Pa nisam ih još nacrtao. :( Imam samo ona 4 standardna fonta. Mislim
da u jedan od njih ubacim naša slova. (Samo ne znam kada ću to da uradim, nije
mi hitno.) žim ih nacrtam šaljem.
Da nema neko slučajno tako nešto, da se ja ne patim da crtam?
pozdrav, Viktor !
pascal.421bearboy,
-> #407, stomic-=< Nema na cemu. Sto se tice toga salji, mozda i nije
-=< lose. Bas me interesuje nasta lici, jer vec u TP imaju, na
-=< neki nacin, ugradene procedure za sprajtove (GETIMAGE i
-=< PUTIMAGE).
Ako je u pitanju program za koji mislim da jeste, ondak je MNOGO bolje uradjen
od put/getimage-a, posto radi i sa Autodesk Animatorom... (skida sprajtove iz
njega)
pascal.422miroslavn,
Zna li neko kako da se iz Tubro Paskala setuje Real time clock?
pascal.423vvelisavljev,
-> #422, miroslavnSets the current time in the operating system
Syntax:
SetTime(Hour, Minute, Second, Sec100: Word);
Unit: Dos
{ Example for SetTime }
uses Dos;
begin
{ Set system clock to 12:01 AM }
SetTime(0,1,0,0);
end.
Nadam se da će ovo iz help-a biti dovoljno.
VV
pascal.424djnsnd,
Osnovana je grupa koja se bavi Turbo Vision-om Turbo Pascala 6.0
Pozivam sve zainteresovana da mi se jave.
Još uvek ima mesta.
DjnSnd
pascal.425bearboy,
-> #420, vvelisavljev-=<> Ako te ne mrzi, podeli fontove sa nama....
-=< Pa nisam ih jos nacrtao. :( Imam samo ona 4 standardna fonta. Mislim
-=< da u jedan od njih ubacim nasa slova. (Samo ne znam kada cu to da uradim,
-=< nije mi hitno.) Cim ih nacrtam saljem.
-=< Da nema neko slucajno tako nesto, da se ja ne patim da crtam?
-=< pozdrav, Viktor !
Ljudi, ja sam prebacio fontove iz Quattro-a !!! Sad imam 45 FONTOVA !!!!!
pascal.426majkl,
Da li neko ima PD ili SW alat za formiranje indeksnih
datoteka? Koristio sam
TBTREE16 Copyright (c) 1988,1989 Dean H. Farwell II
( Turbo BTree version 1.6 )
pa me interesuje kako sada stoje stvari.
Pozdrav, Majkl
pascal.427tesloni,
Vozdra Narode ......
Ako je neko zainteresovan imam Original ZIP-ove
Inside TP .... Tu se nalaze primeri u Turbo
Pascal-u za razne stvarčice počev od objekata
pa nadalje ....
Datirani su iz Jan-Sep 1990 :( .... Malo stariji
al ne mari.
Izvinjavam se ako sam ponudio stvari koje su već
bile ovde ( Mislim na SEZAMU ) .... I sto poruku
ostavljam ovde a ne u PC.SOFT:turbo.pascal :) .
........... TESLONI
pascal.428tesloni,
Poruka je Odgovor na PC.SOFT:9.246
Vozdra Jarane ...
Problem je najverovatnije u tvojoj VGA kartici
a bogami ni monitor nije baš nevinašce .......
Oprez sa SVGABGI Driver-ima i Modes-ima jer mogu
oštetiti monitor jer su mogući samo na MultiSync
verzijama istih ... Ako pročitaš *.DOC fajlove iz
SVGABGI31.ZIP videćeš upozorenja na sve strane !
Da rezimiram za veće rezolucije sa više boja treba
imati karticu sa bar 512k ! Zašto bi se inaće zvali
SVGABGI Drivers ? :)
... Pozdrav TESLONI
pascal.429vvelisavljev,
-> #425, bearboy> Ljudi, ja sam prebacio fontove iz Quattro-a !!! Sad imam 45 FONTOVA !!!!!
TO, ŠALJI !
VV
pascal.430ivans,
-> #427, tesloni* Ako je neko zainteresovan imam Original ZIP-ove
* Inside TP ....
Ja sam zainteresovan!
Ivans.
pascal.431djnsnd,
-> #425, bearboy> Ljudi, ja sam prebacio fontove iz Quattro-a !!! Sad imam
> 45 FONTOVA !!!!!
Šalji.
pascal.432djnsnd,
-> #427, tesloni> Ako je neko zainteresovan imam Original ZIP-ove
> Inside TP .... Tu se nalaze primeri u Turbo
> Pascal-u za razne stvarčice počev od objekata
> pa nadalje ....
> Datirani su iz Jan-Sep 1990 :( .... Malo stariji
> al ne mari.
Možeš li malo detaljnije da objasniš?
Mene interesuje sva moguća literatura za TV i OOP.
pascal.433tesloni,
Vozdra raja
Pošto ste zainteresirani ( Da ne kažem zaintrigirani )
uz poruku saljem INSIDETP.ARJ pa pogledajte .........
Tesloni
insidetp.arjpascal.434ivans,
-> #433, tesloniE, puno ti hvala!
Pozdrav,
Ivans.
pascal.435predragd,
-> #360, stomic> Nisam siguran da li ovo trazis, ali pokusaj sa
> SetData(Ver Rec), gde je Rec varijabla (ili slog, Record),
> pa posle sa GetData(Ver Rec), uzmi izmenjene podatke.
U potpunosti si u pravu. Ali da li znas kako bi trebao da izgleda
dati slog.
Pedja.
pascal.436skoprivica,
-> #427, tesloni-> Ako je neko zainteresovan imam Original ZIP-ove
-> Inside TP .... Tu se nalaze primeri u Turbo
-> Pascal-u za razne stvarcice pocev od objekata
-> pa nadalje ....
Bio bih ti zahvalan...
-> Datirani su iz Jan-Sep 1990 :( .... Malo stariji
-> al ne mari.
Ne smeta, glavno da radi (i da omze da se nauci odatle)...
Aje... CTEBO.
pascal.437skoprivica,
-> #433, tesloni-> Posto ste zainteresirani ( Da ne kazem zaintrigirani )
-> uz poruku saljem INSIDETP.ARJ pa pogledajte .........
Jel' to sve ?
pascal.438dejanr,
The following patch fixes the problem of not being able to enter
numbers 3 thru 6 into the editor of the EDITORS.PAS example
shipped with Turbo Pascal 6.0.
Open EDITORS.PAS in the TURBO editor and search for the EXISTING
code. Once that is found change the EXISTING code to the CHANGE
TO code. Save your changes and recompile EDITORS.PAS.
EXISTING: EXISTING:
LODSW var
OR BL,BL Key: Word;
JE @@2
CMP BL,DL CHANGE TO:
CHANGE TO: var
ShiftState: Byte absolute
LODSW $40:$17;
CMP BL,DL Key: Word;
---------------------------------------------------
EXISTING: EXISTING:
JE @@4 begin
@@2: CMP BH,DH Key := Event.KeyCode;
JE @@4
CHANGE TO:
CHANGE TO:
begin
JE @@4 if (ShiftState and $03 <> 0)
CMP BH,DH and (Event.ScanCode >= $47)
JE @@4 and (Event.ScanCode <= $51)
then
-------------------------- Event.CharCode := #0;
Key := Event.KeyCode;
pascal.439stomic,
-> #438, dejanr Thanx Dejane, ovo mi je baš trebalo. Nadam se da će biti OK.
stomic
pascal.440nesic,
Zamolio bih sve korisnike macintosh-a koji imaju iskustva sa nekim
pascal compiler-om da mi se jave, jer razmisljam o tome da uskoro
nabavim Quadru, a kako ogromnu vecinu programa pisem u pascalu zeleo bih
da se konsultujem pre kupovine.
Mozete mi ostaviti poruku ili me potraziti na sajmu tehnike u hali 10.
Moje ime je Robert Aleksic, a ime firme je High Technologies.
Pozdrav \ /
Robb|
p.s. Nadam se cu napokon reci zbogom 64K i PC :)
p.p.s. Poruku mozete da ostavite na ime nesic, posto je meni poodavno
istekla registracija, a Srba Nesic ratuje od Nove godine te ja
kadkad pozovem u njegovo ime.
pascal.441tesloni,
-> #437, skoprivica> -> Posto ste zainteresirani ( Da ne kazem zaintrigirani )
> -> uz poruku saljem INSIDETP.ARJ pa pogledajte .........
>
> Jel' to sve ?
Nažalost jeste a oni koji su ga downloadovali
imaće problema sa nekim fajlovima jer su u nekom
od ranijih izdanja ITP-a izašli potrebni moduli za
kompiulaciju. Ovi primeri su čisto ilustrativni tj.
nisu baš najpodesniji za neku jaču primenu...
Tesloni !
pascal.442predragd,
-> #426, majkl> Da li neko ima PD ili SW alat za formiranje indeksnih
> datoteka? Koristio sam
Negde pocetkom 1991. godine u casopisu Inside Turbo Pascal
objavljene su kompletne rutine za rad sa .DBF fajlovima i DBase
indeksima (.NDX). Koliko sam ja uspeo da vidim stvar radi odlicno. Ja
konkretno indekse koristim nevezano za .DBF fajlove. Super je stvar
sto je dat komplet source, pa moze da radi u bilo kom Paskalu. Ako te
stvar interesuje javi pa da je saljem.
Pedja.
pascal.443dejanr,
-> #442, predragd>> Super je stvar sto je dat komplet source, pa moze da radi u bilo kom
>> Paskalu. Ako te stvar interesuje javi pa da je saljem.
Ako nekim čudom ne interesuje njega, interesuje mene :)
pascal.444majkl,
-> #443, dejanr> Ako nekim čudom ne interesuje njega, interesuje mene :)
Eh, čuda se ipak nešto redje dešavaju. Šalji!
Posebno me interesuje da li je podržan kompletan rad sa
indeksima.
Pozdrav, Majkl
pascal.445tesloni,
-> #442, predragd>> Da li neko ima PD ili SW alat za formiranje indeksnih
>> datoteka? Koristio sam
>
> Negde pocetkom 1991. godine u casopisu Inside Turbo Pascal
> objavljene su kompletne rutine za rad sa .DBF fajlovima i
> DBase indeksima (.NDX). Koliko sam ja uspeo da vidim stvar
> radi odlicno. Ja konkretno indekse koristim nevezano za
> .DBF fajlove. Super je stvar sto je dat komplet source, pa
> moze da radi u bilo kom Paskalu. Ako te stvar interesuje
> javi pa da je saljem.
>
> Pedja.
>
Vozdra Raja ....
Koliko sam shvatio vi niste ni pogledali moju
poruku 4.333 ili slićno , proverite i datoteku
uz nju ... Tamo je baš ono što vam treba ....
......... Tesloni
pascal.446majkl,
-> #445, tesloni>> Negde pocetkom 1991. godine u casopisu Inside Turbo
>> Pascal objavljene su kompletne rutine za rad sa .DBF
>> fajlovima i DBase indeksima (.NDX). Koliko sam ja uspeo
========================
>> da vidim stvar
> Vozdra Raja ....
>
> Koliko sam shvatio vi niste ni pogledali moju
> poruku 4.333 ili slićno , proverite i datoteku
> uz nju ... Tamo je baš ono što vam treba ....
Ovde se nešto ne slaže. Ako je u pitanju poruka 4.433 i uz nju
priložena datoteka, tamo nisam našao ništa o indeksima (.NTX) i
samo minimalno o bazama (.DBF). To je sve iz 1990. godine, a ovde
se pominje '91. Kako sam u dva navrata bio mobilisan, moguće je
da sam nešto propustio, pa budi precizniji.
A čovek neka šalje, ako ništa drugo bar da uporedimo :)))
Pozdrav, Majkl
pascal.447bulaja,
-> #442, predragd│Negde pocetkom 1991. godine u casopisu Inside Turbo Pascal objavljene su
│kompletne rutine za rad sa .DBF fajlovima i DBase indeksima (.NDX).
└───
Salji!
pascal.448bdm.,
-> #442, predragd## objavljene su kompletne rutine za rad sa .DBF fajlovima i DBase
## indeksima (.NDX). Koliko sam ja uspeo da vidim stvar radi odlicno. Ja
PLEASE Send.
BDM.
pascal.449drpr,
Evo ja čeprkao po tricklu pa ima tamo u turbopas directorijum u
kome ima svašta pa reko ako imate nekog na vax-u da vam ponešto
i skine.Ima i za TV i za sve verzije tp od 4.x do 6.0!
cope
turbopas.arjpascal.450hacker,
-> #448, bdm.<+>## objavljene su kompletne rutine za rad sa .DBF fajlovima i DBase
<+>## indeksima (.NDX). Koliko sam ja uspeo da vidim stvar radi odlicno. Ja
Ajde, ba, šalji već jednom... ili ko već treba da šalje...
pascal.451predragd,
Zdravo
Izvinjavam se zbog kasnjenja, jer sam bio na frontu. No greskicu sada
ispravljam. Nadam se da ce vam se programcici dopasti.
Pozdrav, Pedja.
itpdbase.arjpascal.452predragd,
Zdravo
Pokusavam da napisem FilePos funkciju za Text fajlove, ali mi ne
polazi bas nesto najbolje za rukom. Naime, ako je rezultujuca vrednost
tipa BYTE ili WORD sve je u redu, ali ake je u pitanju LONGINT onda
dobijam neke leve vrednosti. Ja bih eventualno mogao da koristim
prve dve gore navedene promenljive, ali bi one bile odgovarajuce samo
za fajlove duzine 256 ili 65536 bajtova. Evo kako izgleda moja
procedurica, pa ako neko zna u cemu je problem...
function FilePosTextFile (var F: Text): LongInt;
var
Position: LongInt;
Error: Word;
begin
FillChar (Regs, Sizeof (Regs), 0);
regs.ah:=$42;
regs.al:=1;
regs.bx:=TextRec (F).Handle;
regs.cx:=0;
regs.dx:=0;
MsDos (Regs);
if (regs.flags and 1) = 1 then
begin
Position:=0;
Error:=lo (regs.ax)
end
else
begin
Position:=MemL [Seg (regs.DX):Ofs (regs.AX)];
Error:=0;
end;
FilePosTextFile:=Position;
end;
Pozdrav, Pedja.
pascal.453vbole,
-> #452, predragd> else
> begin
> Position:=MemL ŠSeg (regs.DX):Ofs (regs.AX)Ć;
ĘĘĘĘ
A odakle ti to čitaš poziciju u fajlu ??
Funkcija ti vraća poziciju u fajlu u obliku:
A X - D X
LL LH HL HH AX:=Low word / DX:=High word
Znači,
Position:=Regs.dx*65536+Regs.ax;
pascal.454predragd,
-> #453, vbole>> Position:=MemL [Seg (regs.DX):Ofs (regs.AX)];
> ĘĘĘĘ
>
> A odakle ti to citas poziciju u fajlu ??
> Funkcija ti vraca poziciju u fajlu u obliku:
> A X - D X
> LL LH HL HH AX:=Low word / DX:=High word
> Znaci,
> Position:=Regs.dx*65536+Regs.ax;
Hvala ti na pomoci, procedurica sada radi odlicno. No je i dalje
imam problema oko ocitavanja vrednosti trenutne pozicije fajla.
Otvorim fajl, snimam nesto u njega i posle pokusam da odredim poziciju
pointera u fajlu, no kao rezultat dobijem nulu. Onda moram da zatvorim
fajl i otvorim ga sa Append naredbom i sve radi odlicno, samo malo
sporije.
Medjutim meni ipak nesto nije jasno. Ako bih umesto onog MemL
stavio MemW ili Mem procedura bi radila. Nije mi jasno zasto nece da
radi za LongInt.
Pozdrav, Pedja.
pascal.455bojanp,
-> #454, predragd>>> Position:=MemL [Seg (regs.DX):Ofs (regs.AX)];
>
> Medjutim meni ipak nesto nije jasno. Ako bih umesto onog MemL
> stavio MemW ili Mem procedura bi radila. Nije mi jasno zasto nece da
> radi za LongInt.
Neće da radi zato što pogrešno upotrebljavaš "funkciju" tj. niz
MemL! Niz MemL se koristi za čitanje/pisanje vrednosti tipa longint
sa/na određenu memorijsku adresu, a ne za kreiranje longint vrednosti
kao što si ti hteo da koristiš. U gore navedenom primeru moga si
da napišeš umesto Seg(regs.DX), Seg(regs.AX) i dobio bi istu
vrednost jer je funkcija Seg(regs.??) vraća segmentni deo adrese
promenljive regs! U gore navedenom slučaju promenljiva position je
uzimala vrednost longint-a koja se nalazio na adresi regs.AX tj.
obzirom na raspored promenljivih u recordu tipa Registers dobija
su regs.BX*65536+regs.AX!! Zašto je radilo kada si koristi Mem
odnosno MemW nadam se da nije teško da zaključiš.
> Hvala ti na pomoci, procedurica sada radi odlicno. No je i dalje
> imam problema oko ocitavanja vrednosti trenutne pozicije fajla.
> Otvorim fajl, snimam nesto u njega i posle pokusam da odredim poziciju
> pointera u fajlu, no kao rezultat dobijem nulu. Onda moram da zatvorim
> fajl i otvorim ga sa Append naredbom i sve radi odlicno, samo malo
> sporije.
Funkcija ni sada ne radi kako treba! Svaki file koji je tipa text
ima interni buffer čija se veličina može menjati. Tvoja funkcija
uopšte ne uzima u obzir da li je iz tog buffer već nešto pročitano
ili nije. Dakle da bi funkcija radila potrebne su sledeće izmene:
Position := regs.DX * 65536 +regs.AX;
Position := Position + TextRec(F).BufPos;
Pozdrav, Bojan
pascal.456bojanp,
Poznato je da proizvođač compiler i sličnih programerskih
"stvarčica" ne rado objavljuju bugove svojih proizvoda. Međutim to
nije nikakva prepreka da korisnici istih prave svoje liste bugova
koje su uspeli da otkriju.
Uz poruku je arhiva koja sadrži *NE*zvaničnu listu svih bugova
vašeg omiljenog ;) compilera TurboPascal Version 6.0 i način na
koji se mogu zaobići ili ispraviti.
Pozdrav, Bojan
tp6bugs6.zippascal.457predragd,
-> #455, bojanp> Position := regs.DX * 65536 +regs.AX;
> Position := Position + TextRec(F).BufPos;
Kako sve izgleda jednostavno kada ti to neko drugi objasni. Hvala
ti najlepse na pomoci.
Pozdrav, Pedja.
pascal.458vbole,
Danas sam izludeo sa jednim programom u pascalu, zato što sam iz jedne
procedure pozivao drugu, a obe su imale u sebi deklarisan array od 50KB.
Posle povratka iz druge procedure, array u prvoj proceduri je imao neke
sasvim leve vrednosti, odnosno procedura B je jednostavno svoje vrednosti
upisivala preko array u proceduri A.
DEBUG pokazuje da se oba array nalaze na SSEG:ofset.
Šta sad ?
pascal.459dejanr,
-> #458, vboleMožeš li da pošalješ taj deo programa, nije mi baš jasno kako su to obe
imale po 50 k? Parametar ili šta?
pascal.460prvul,
-> #458, vboleŮDanas sam izludeo sa jednim programom u pascalu, zato što sam iz jedne
Ůprocedure pozivao drugu, a obe su imale u sebi deklarisan array od 50KB.
Ů▄▄▄
A stack checking je bio isključen? Stek mora biti smešten ceo u jedan
segment, pa kada se pređe granica segmenta, stek pointer krene opet od
početka segmenta. Kako se lokalni podaci u procedurama alociraju na steku,
posle upisivanja prvih 50k, nema mesta za drugi, pa se drugi prepišu preko
prvih. Zbog ovakvih slučajeva je preporučljivo ostavljati u toku razvoja
programa Stack checking uključen. Inače, jedno od rešenja za ovaj problem
je da se po ulasku u proceduru alocira potrebna memorija, a pre izlaska
dealocira.
Prvul.
pascal.461markma,
Nalazim se u velikom skripcu i molim nekoga
da mi pomogne. Naime radi se o tome da
imam zadatak iz programiranja i nemam pojma
da ga resim.
Zadatak treba da se uradi u PASCAL-u i ide ovako:
Neka se iz datoteke ULAZ ucitavaju realni brojevi
recimo x=1,...xn
Izracunati:
(x1+x2+2xn)(x2+x3+2xn-1)...(xn-1+xn+2x2)
| | | | | ||| ||| | |
Brojevi i slova obelezeno sa | su u indeksu.
Primedba:
Nije unapred poznato koliko ima brojeva u datoteci.
UPUTSTVO:
Koristiti dvostruko povezanu listu
pascal.462vbole,
-> #459, dejanr> Možeš li da pošalješ taj deo programa, nije mi baš jasno kako su to obe
> imale po 50 k? Parametar ili šta?
procedure SortPor(Nacin : byte; Low,High : word);
type
SOR_Arr = record
Broj_fajla : byte;
Poc_adr : longint;
Duzina : word;
end;
var
Poruke : ArrayŠ1..7000Ć of SOR_Arr;
procedure Prebaci(Nacin : byte; ofset,my_adr,kol_byt : word);
var
MyDta : ArrayŠ0..53500Ć of byte;
Evo ti deklaracije obe procedure.Kad pozovem Prebaci iz SortPor, on jedno-
stavno upisuje svoje podatke preko Array-a u SortPor.
pascal.463vbole,
-> #460, prvul> programa Stack checking uključen. Inače, jedno od rešenja za ovaj
> problem je da se po ulasku u proceduru alocira potrebna memorija, a pre
> izlaska dealocira.
Pa bih ja, ali mi ti podaci trebaju i između poziva procedura...
pascal.464markma,
Zar je takva situacija da niko nemoze ili nezeli
da mi pomogne oko ovoga. Ovo je drugi put da
ostavljam ovu poruku.
Dajte ljudi molim vas.
Naime radi se o tome da imam zadatak iz programiranja
i nemam pojma da ga resim.
Zadatak treba da se uradi u PASCAL-u i ide ovako:
Neka se iz datoteke ULAZ ucitavaju realni brojevi
recimo x=1,...xn
Izracunati:
(x1+x2+2xn)(x2+x3+2xn-1)...(xn-1+xn+2x2)
| | | | | ||| ||| | |
Brojevi i slova obelezeno sa | su u indeksu.
Primedba:
Nije unapred poznato koliko ima brojeva u datoteci.
UPUTSTVO:
Koristiti dvostruko povezanu listu
pascal.465janko,
-> #458, vbole> Danas sam izludeo sa jednim programom u pascalu, zato što
> sam iz jedne procedure pozivao drugu, a obe su imale u
> sebi deklarisan array od 50KB.
Da li je reč o Turbo Paskalu? Zar u njemu nije ograničenje
statiče memorije na 64K?
Ili je to MS-Pascal? Ili nova verzija Turbo Pascala? Ili...?
pascal.466vvelisavljev,
-> #464, markma> Zar je takva situacija da niko nemoze ili nezeli
> da mi pomogne oko ovoga. Ovo je drugi put da
> ostavljam ovu poruku.
> Dajte ljudi molim vas.
Ne znam šta da kažem na ovo. Možda da pokušam da odbranim SEZAMOVCE i
kažem da većina njih ne zove svaki dan tako da nisu mogli ni da ti odgovore.
Sa druge strane mislim da nije fer od tebe što si samo napisao zadatak i ništa
više. Kaži u čemu je problem pa ćemo videti.
Verovatno imaš problema što do sada nisi radio sa pointerima. Uz
poruku ti šaljem tri programčića koji postupno "objašnjavaju" rad sa
pointerima do upotrebe liste. Dvostruko ulančanu listu ćeš dobiti sva dva
pointera od kojih jedan pokazuje na sledeći a jedan na predhodni podatak.
Ukoliko ni ovo nije jasno kaži pa da pišem detaljnije.
Viktor
pascal.467vvelisavljev,
-> #464, markma A evo i fajla, nešto sam z* kada sam slao prošlu poruku.
Viktor
pointeri.zippascal.468markma,
-> #467, vvelisavljev
Dali mozes samo da mi kazes cemu sluze ovi programi posto nemam
kod kuce pascal na racunaru tako da neznam cemu sluze,
ali da znam kada odem na faks sta im nosim.
Molim te objasni mi.
Znam da te mozda maltretiram ali mi je jako bitno.
Hvala.
pascal.469hacker,
-> #462, vbole
E pa ako ih hoces tokom celog programa onda na pocetku ih deklarises kao
kao dinamicke nizove. Prvo uvedes jedan tip
type
niz:arrayŠ...Ć of ...;
pniz:žniz;
Ovime si postigao da ti se sada svi elementi niza upisuju u heap, ali pre
upisivanja, znaci na delu na kom su ti potrebni nizovi
NEW(pniz);
....
....
upisujes vrednosti sa pnizžŠ..Ć:=...;
DISPOSE(pniz);
Nadam se da sam ti pomogao...
pascal.470vbole,
-> #469, hacker> E pa ako ih hoces tokom celog programa onda na pocetku ih deklarises kao
> kao dinamicke nizove. Prvo uvedes jedan tip
> type
> niz:arrayŠ...Ć of ...;
> pniz:žniz;
Prebacio sam array(MyDta) u glavni program i oslobodio memoriju za njega
sa GetMem, tako je najjednostavnije, ali niz Poruke ne mogu da deklarišem
kao dinamički zbog brzine i zato što se sortira po dužini poruka i po
početnim adresama.
> Nadam se da sam ti pomogao...
Hvala ti u svakom slučaju, znam ja za dinamičke nizove, ali sa njima se
ne bih usrećio ( u ovom slučaju )...
pascal.471vbole,
-> #465, janko> Da li je reč o Turbo Paskalu? Zar u njemu nije ograničenje
> statiče memorije na 64K?
Jeste, za program 64KB, i svaka procedura po 64KB, s tim što svaka
procedura vuče svoje lokalne promenljive na stack, a stack se vrti
u krug.Ako imaš dve procedure sa po 60Kb koje pozivaju jedna drugu,
podaci će se upisivati jedni preko drugih.
( Hvala prvulu na prosvetljenju ).
pascal.472prvul,
-> #464, markmaŮ Naime radi se o tome da imam zadatak iz programiranja
Ůi nemam pojma da ga resim.
Ů▄▄▄
A šta je konkretno problem? Treba da učitavaš broj po broj iz datoteke
i da ga dodaješ u dvostruko povezanu listu koja je na početku bila prazna.
Zatim postaviš pointere na prvi element liste (obeležimo taj pointer sa P1),
drugi element (P2) i poslednji element (PZ). Zatim postaviš promenljivu
npr. REZULTAT na 1, pa onda radiš
REZULTAT:=REZULTAT*(P1^.BROJ+P2^.BROJ+2*PZ^.BROJ);
P1:=P2;
P2:=P2^.DESNI;
PZ:=PZ^.LEVI;
dokle treba. Zatim obrišeš celu listu i štampaš rezultat. E, da, pretpostavka
je da je u listi BROJ vrednost koja je učitana, LEVI pokazuje na prethodni
član liste, a DESNI na sledeći.
pascal.473prvul,
-> #468, markmaŮDali mozes samo da mi kazes cemu sluze ovi programi posto nemam
Ůkod kuce pascal na racunaru tako da neznam cemu sluze,
Ůali da znam kada odem na faks sta im nosim.
Ů▄▄
Pa čovek je već rekao, služe zato da pojasne kako se radi sa pointerima,
pa da možeš sam da napišeš program.
pascal.474vvelisavljev,
-> #468, markma> Molim te objasni mi.
> Znam da te mozda maltretiram ali mi je jako bitno.
Ti programčići NE rešavaju problem. Mislio sam da će ti pomoći kod
rešavanja problema. Poslednji od ta tri sorsa kreira listu u Pascalu. Prvi i
drugi koristi pointere na najprostijim primerima sa dve tri promenljive tek da
pokaže kako stvar radi. Hteo sam na brzinu da pomognem, a nisam imao vremena da
rešavam kompletan problem. :((
pozdrav, Viktor !
pascal.476vilic,
hi,
da li neko ima neki programcic koji bilo koji format za slike (.gif .tif
...) pretvara u binarni oblik za dalji rad sa paskalom.
unapred zahvalan
\bye
pascal.477inesic,
Imam dve molbe.
Prva je za moderatora: nemoj da brišeš ovu poruku dok je ne
pročita neko ko je voljan da mi pomogne.
Druga je za sve one koji imaju instalacionu verziju
TurboPascala 6.0 - molim da mi neko pošalje u mail file
koji se zove INLINE.ZIP. Oštetila mi se disketa na tom
mestu, ato su sve nekakvi .DOC fajlovi i mislio sam da ću
moći bez njih, ali eto... sad me je stiglo.
Thanx in advens.
inesic
P.S. Na eventualna pitanja da li je moj TP60 PD - ne
odgovaram.
pascal.478inesic,
-> #477, inesicHi 2 all.
Obaška zafaljivam svima koji su se javili da mi pomognu.
Naravno, glupi ja je napisao da se file zove INLINE.ZIP
umesto ONLINE.ZIP, ali vi ste to provalili.
inesic
pascal.480toma,
Pozdrav !
Molim vas pomozite !
Pisao sam nekada na Atarijevom pascalu program za izracunavanje
determinanti matrica. Sada sam to preneo na PC i nece da radi.
Daje mi gresku : Runtime error 202, Stack owerflow.
Program koristi malo rekurzije ali se greska javlja pri
prvom pozivu funkcije 'd',i editor mi postavlja kursor
na liniju u kojoj je begin za tu funkciju
Probao sam kompajliranje i linkovanje na disk pa onda startujem,
ali ista stvar.
H E L P !
prikacen fajl determ.pas
determ.paspascal.481dejanr,
-> #480, tomaTražiš naprosto previše mesta na steku. Kada sam na početak programa
dodao {$M 64000,0,0}, proradio je, bar za 3*3 matricu.
pascal.482bearboy,
Mali problemcic:
Imam jedan rezidentni program, koji bi trebao da pruza neke
usluge drugim programima. Kad se instalise, kaze da je
instalisan na funkcije &8220-6, na interaptu &2F.
Pitanja - 1) Da li se on MORA pozivati iz inline-asemblera, ili
moze i drugacije ?
2) Kako da ga pozovem ? (koje registre treba da
popunim, itd.)
pascal.483bearboy,
Imam ja mali programcic, rezidentni, koji kad se instalira,
zauzme interapt 2Fh i funkcije oko 8220h. E sad, ako bilo kako
pozovem taj interapt iz paskala, ne desava se nista ?!
Ima li ko kakve ideje ? (koji registri, flegovi, itd.)
pascal.484couch,
Zamolio bih za resenje ovog 'velikog' problema.
Na TP 5.5 sam napisao rezidentan progam koji treba da pozove drugi
izvrsni program (konkretno EPSON.COM za kontrolu stampaca).
Ali nece da radi tj., javlja DOSERROR=8 (memorija zar ne?)
pascal.485ndragan,
-> #481, dejanr/ Tražiš naprosto previše mesta na steku. Kada sam na početak programa
Elem, što bi rekao Lanik, 'No sane....'
pascal.486vitez.koja,
-> #484, couchPretpostvljam da si to pozivanje obavio sa Exec...
Posto pascal u startu alocira SVU raspolozivu memoriju, treba je ograniciti sa
direktivom {$M STACK,HEAPMIN,HEAPMAX}, gde je STACK velicina steka (2048 min),
HEAPMIN najmanja kolicina heap memorije, a HEAPMAX najveca. dakle, probaj
{$M 16384,0,0) na pocetku programa i trebalo bi da radi
vladimir
pascal.487bearboy,
-> #476, vilic˙¨:> da li neko ima neki programcic koji bilo koji format za slike (.gif .tif
˙¨:> ...) pretvara u binarni oblik za dalji rad sa paskalom.
Stvaro, kakav je on format koji naprai THEDRAW kad mu se kaze
OUTPUT TYPE pascal ?
pascal.488vitez.koja,
Zanimljiv bug integrisane okoline Turbo Pascala 6.0 :
Ako pomenutu okolinu strtujemo sa TURBO ime, odmah se ucitava program ime.pas.
Ako je startujemo sa dir\ime, gde je dir ime direktorijuma koji NE POSTOJI, IDE
ce ispisati neku poruku o gresci i nastaviti. Medjutim, taj prozor
(dir\ime.pas) vise ne moze da se zatvori, ne radi ni ALT+X ni izlazak iz
menija, a moze da se izadje u shell... jednom recju, reboot obavezan :(
vladimir
pascal.489stomic,
-> #486, vitez.koja$ dakle, probaj {$M 16384,0,0) na pocetku programa
$ i trebalo bi da radi
Ne verujem da će raditi (pogledaj poruke pre jedno 2
meseca). Pokušavao sam isto ali neće. Ako neko uspe
neka javi.
Pozdrav, stomic.
pascal.490stomic,
-> #488, vitez.koja$ Zanimljiv bug integrisane okoline Turbo Pascala 6.0 :
Jesi li siguran da je tvoj TP ok? Kod mene je sve uredu.
Pozdrav, stomic.
pascal.491couch,
Zahvalan sam za ponudjeno resenje, ali pokusavao sam i sa tim prekidacem
ali nece da radi , iako sam stavljao i ponudjeno resenje.
Da li da probam sa New ili nesto slicno
Pozdrav couch
pascal.492ndragan,
-> #484, couch/ izvrsni program (konkretno EPSON.COM za kontrolu stampaca).
Zar nije lakše da te iste kontrolne znake šalješ pravo iz programa na
štampač ili da ih ubaciš u fajl koji se štampa? Ako ih ne znaš, pošalji
ih iz Epson.com jednog po jednog pomoću spulera u fajlove (ima tu nekih
spulera na sezamovom disku)(na onom novom :), pa raščitaj, ili još
bolje, RTFM za kontrolne kodove za ESC/P (epson kompatibilce).
Bue_ Ndragan
pascal.493couch,
-> #492, ndraganOnaj deo poruke gde govoris da u txt file ubacim kon. kodove je neizvodljiv,
zbog toga sto se izvestaji stampaju direktno iz baza, a jos plus program
jej exe a ja nemam listing da bi nesto mutio.
Sto se II dela poruke tice, zamolio bih da mi je malo pojasnis.
CINIMI SE DA SAM NEGDE CITAO KAKO NA PASCAL-u DIREKTNO SWITCH-ovati STAMPAC,
ALI NEMOGU DA SE SETIM GDE.
Glavna fora je u tome sto je potrebno stampati izvestaje iz knjigovodstva
na A3, a firma ima A4 stampac, pa je potreban switch na cond. stampu.
E sada da nebi stalno isli u dos pa startovali EPSON, jednostavno nesto
poput Ctrl+Alt+Shift bi resilo stvar.
Pozdrav
pascal.494vbole,
-> #493, couch> Glavna fora je u tome sto je potrebno stampati izvestaje iz knjigovodstva
> na A3, a firma ima A4 stampac, pa je potreban switch na cond. stampu.
> E sada da nebi stalno isli u dos pa startovali EPSON, jednostavno nesto
> poput Ctrl+Alt+Shift bi resilo stvar.
Probaj sa priloženim programom, on preuzima int_05 (PrtScr) i pri prvom
pritisku na PrtScr prelazi na Condensed, kod ponovnog pritiska na PrtScr
prebacuje na Pica i vraća stari int_05.
Jedino ne vraća alociranu memoriju, ali zato imaš source u pascalu, pa
možeš da dodaš i to.
condens.zippascal.495dmiric,
Ćao svima!
Pre neki dan silom prilika morao sam da instaliram tp6.0 (dosad sam radio na
5.5) pa me zanima da li neko ima da mi da ljudski customizovane, boje. Ovako
kako sam 6-cu dobio u mnogim dialog box-evima se foreground i background boje
poklapaju, a i sve skupa boje mi se ne sviđaju... Znam da može da se ručno
našteluje ali tih boja ima toliko mnogoo....:((
Btw zna li neko da li 6-cin editor može da customizuje kao onaj u 5.5-ci...
Navikao sam se WP komande, pa mi je sad jako teško da se vratim u WS
Mislim da ke neko reko da se to može postići jedino razbijanjem samog
programa... pa ako je neko to već uradio bio bi mu jaaaaako zahvalan
Hvala unapred..
(md)
pascal.496dejanr,
-> #495, dmiric>> Btw zna li neko da li 6-cin editor može da customizuje kao onaj u
>> 5.5-ci... Navikao sam se WP komande, pa mi je sad jako teško da se
>> vratim u WS
I može i ne može. Ne može na onaj lepi logični način zvani TINST. Umesto
toga, pogledaj među doc fajlovima uputstvo za nekakav makro jezik (zaboravio
sam ime), treba kreirati tekst fajl sa makroima i nekako ga prevesti.
Sve se to može uraditi dosta lako, *ali* i se nikako (bar koliko sam uspeo
da shvatim) ne može definisati da, recimo, HOME LEFT bude početak reda,
dakle može se samo *jednom* tasteru dodeliti *jedna* funkcija.
Ja zato ostado' na TP5.5 iako sam platio TP6.0 original ;(. Jedino za čim
žalim od verzije 6.0 je ugrađeni asembler.
pascal.497vitez.koja,
-> #495, dmiricImam ja manje-vise prilagodjene boje. Samo, ja sam prilogodjavao one stvari
koje cesto koristim, a ne neke dialog-boxove (npr. ono za podesavanje misa)
koje koristim jednom godisnje. Ako te zanima javi se...
vladimir
pascal.498ndragan,
-> #493, couch/ na A3, a firma ima A4 stampac, pa je potreban switch na cond. stampu.
Ako se štampa u fajl, napraviš dva fajla, naprimer set_it.txt i
reset.txt, pa štampaš sa
copy set_t.txt+stampa.txt+reset.txt prn
gde onaj prvi sadrži samo chr(15) ili još nešto ako treba, a potonji
ESC č (tj ASCII 27 64). Ako ovaj radi direktno sa štampačem, druga
varijanta je da ga zoveš iz beča:
copy set_it.txt prn
tvoj_program
copy reset.txt prn
Ako ovo ne upali, tek onda se isplati petljati se sa pisanjem TSR
programa koji bi trebalo da skenira tastaturu da bi povremeno poslao
jedan ili dva bajta štampaču. To se čak i ne isplati - opet kažem, eno
ti spuleri, sve što ištampaš bači u nekakav fajl (ona stampa.txt), pa sa
njim postupi kao u prvoj varijanti. Najmanja petljavina.
pascal.499couch,
-> #494, vboleZahvalan sam za resenje. Uz malu preradu sve ce raditi ko sat.
Puno pozdrava
pascal.500dmiric,
-> #496, dejanr> Sve se to može uraditi dosta lako, *ali* i se nikako (bar
> koliko sam uspeo da shvatim) ne može definisati da,
> recimo, HOME LEFT bude početak reda, dakle može se samo
> *jednom* tasteru dodeliti *jedna* funkcija.
Da, u međuvremenu sam pogledao utilitije i našao taj TEMC ili kako se već
zove. Samo sam ga nabrzinu pogledao... ali ako se ne mogu napraviti home
sekvence... Onda bi to bio težak mazohizam... pošto mi sve ne računaru, od tp,
preko qedita do wp radi tako. Probaću da nešto zbudžim, ako uspem javiću.
Thanx.
(md)
pascal.501dmiric,
Hi!
Imam problem. Kad god u Tp6 runujem neki program, a zatim se vratim u IDE miš
nestane.. tj ne vidi se na ekranu, iako IDE čita njegovu poziciju ne ekranu, i
sa njim je moguće, onako na slepo otvarati prozore...
Bug ili feature i ima li pomoći?
Thanx,
(md)
pascal.502obren,
-> #501, dmiric> Bug ili feature i ima li pomoći?
Drajver za miša ti je bajat. Nabavi noviji i biće sve OK.
pascal.503dmiric,
-> #502, obren> Drajver za miša ti je bajat. Nabavi noviji i biće sve OK.
Hm, pa to baš i nije tako lako firma nije jedna od poznatih, nego
Facile Mouse Version 5.10
Copyright (C) National Computer 1988 - 1990 All Rights Reserved.
Ako neko ima noviju verziju... bio bih jako zahvalan, ili bilo koji drajver
koji može da radi i sa mouse i microsoft modom...
(md)
pascal.504ppekovic,
-> #503, dmiric>> Ako neko ima noviju verziju... bio bih jako zahvalan, ili bilo koji drajver
>> koji može da radi i sa mouse i microsoft modom...
Zašto ne probaš sa nekim od drajvera koje možeš naći ovde na
sezamu?
Paya
pascal.505dmiric,
-> #504, ppekovic> Zašto ne probaš sa nekim od drajvera koje možeš naći ovde
> na sezamu?
Evo skinuo sam ih, sad ću da probam, međutim ne verujem da ima šanse... ali ko
zna :))
btw, thanx for the suggestion.
(md)
pascal.506dmiric,
-> #504, ppekovic> Zašto ne probaš sa nekim od drajvera koje možeš naći ovde
> na sezamu?
Probao. I genius drajver radi... Samo jedna sitna stvarčica... Kad se com
verzija instalira u autoexec posle toga pozivanje qedita ruši sistem !!!
sa druge strane ako se taj gmouse.com pozove sa komandne linije, sve radi kako
treba. Ako se pak instalira sys verzija, sve radi ok. ZAŠTO??? u autoexecu i
config nema ničeg što bi moglo da smeta:
autoexec:
path
c:\util\misc;d:\;c:\util\zip;d:\pcshell;c:\util\shez;c:\util\nc;d:\graph\util;c
:\dos;d:\dtp\qedit;c:\util\ptr
batchenv -q
path=c:\util\antivir;c:\yu\keyb;c:\util\analysis;c:\yu\uyu;d:\games\bio;d:\lang
\tp6\utils;c:\util\video+
batchenv -q path=c:\mouse;c:\llink3;c:\modem\tr+
prompt $p$g
verify on
c:\dos\dosed
config.sys;
device=mmc.sys ............................. (ems drajver)
shell=c:\command.com /e:400 /p
buffers=15
files=25
break=on
device=ansi.sys
device=c:\mouse\gmouse.sys +0 ...............(ovo je finalna verzija u kojoj
sve radi)
(md)
pascal.507cacxa,
-> #503, dmiric> Ako neko ima noviju verziju... bio bih jako zahvalan, ili
> bilo koji drajver koji može da radi i sa mouse i microsoft
> modom...
Imaš na Sezamu Genius drajver koji radi u oba moda i Logitech koji radi
samo u Microsoft modu.
pascal.508isekulovic,
-> #507, cacxa>> Imaš na Sezamu Genius drajver koji radi u oba moda i
>> Logitech koji radi samo u Microsoft modu.
Ako koristis norton commander bolje umesto genius 9.06
pronadji genius 9.04 ili mi se javi da ti emaljiram.
ivan
pascal.509lucas,
-> #501, dmiric++> Imam problem. Kad god u Tp6 runujem neki program, a zatim se vratim
++> nestane.. tj ne vidi se na ekranu, iako IDE čita njegovu poziciju ne
++> sa njim je moguće, onako na slepo otvarati prozore...
"Turbo Pascal 6.0 also suports a mouse.Thought the mouse isn't required,if
you have one,you must have one of the following for full compatibility:
- Microsoft Mouse version 6.1 or later,or any mouse compatible with this
mouse
- Logitech Mouse version 3.4 or later
- Mouse System'PC Mouse version 6.22 or later
- IMSI Mouse version 6.11 or later
- Genius Mouse version 9.00 or later"
Ovo je iz uputstva pa sada vidi koji ćeš drajver da koristiš.
Moj savet ti je da iz direktorijuma MISC uzmeš fajl gm906.zip,to ti je
drajver za Genis mouse version 9.06 i da ga instaliraš.
Trebalo bi da bude sve ok.
pascal.510wizard,
-> #508, isekulovic>> Ako koristis norton commander bolje umesto genius 9.06
>> pronadji genius 9.04 (...)
Zašto? Meni radi.
<<nenad<<
pascal.511adzem,
-> #509, lucas> - Genius Mouse version 9.00 or later"
>
> Ovo je iz uputstva pa sada vidi koji ces drajver da
> koristis.
Ja koristim Genius drajver verziju 8.20 .
TP6 radi bez ikakvih problema, sto znaci da uputstvu ne treba
uvek verovati.
pascal.513dmiric,
-> #510, wizard>>> Ako koristis norton commander bolje umesto genius 9.06
>>> pronadji genius 9.04 (...)
> Zašto? Meni radi.
Meni ne radi. Kad malo pomeraš mouse po commanderu pojavljuju se strlice na
dole koje ostaju na mestu gde je bio mouse...
(md)
pascal.514dmiric,
-> #509, lucas> Moj savet ti je da iz direktorijuma MISC uzmeš fajl
> gm906.zip,to ti je drajver za Genis mouse version 9.06 i
> da ga instaliraš. Trebalo bi da bude sve ok.
gm906 sa TP6 radi OK. ali pravi probleme sa NC, i Qeditom. Naći ću neku raniju
verziju, za koju ljudi tvrde da ne prave probleme. Hvala na odgovoru.
(md)
pascal.515isekulovic,
-> #510, wizard>> Zašto? Meni radi.
Meni ostavlja strelice preko ekrana kad god prodjem preko dve
odredjene linije (prve iznad i ispod spiska datoteka), a cuo
sam to isto jos od nekih.