Turbo Pascal
Jelentkezz be a hozzászóláshoz.
#71
Help pls!!!
Írtam egy programot a TP 7-be, és meg akarom nyitni a start futtatással írja hogy kiválasztja a netes listából de nem csinál többet. Melyik progival tudom megtekinteni? Hogy lehet hozzá instalt csinálni?
Írtam egy programot a TP 7-be, és meg akarom nyitni a start futtatással írja hogy kiválasztja a netes listából de nem csinál többet. Melyik progival tudom megtekinteni? Hogy lehet hozzá instalt csinálni?
"Ha megírok egy programot az miért csak egy pillanatig van a képernyõn?"
Ha rendesen lefordítod (Compile/Destination😄isk legyen, majd Compile/Compile), és parancssorból (Start menû/Futtatásba WinXP esetén írd be: cmd vagy Win9x/WiME esetén: command) indítod el a lefordított programot, akkor rendesen megmarad. Egyébként a vezérlés visszakerûl az õt meghívó programnak.
"Olyat lehet hogy addig nem lép vssza míg meg nem nyomok valamit?"
A programod legvégébe írd be az alábbi sorokat:
Repeat
Until Keypressed;
Ha rendesen lefordítod (Compile/Destination😄isk legyen, majd Compile/Compile), és parancssorból (Start menû/Futtatásba WinXP esetén írd be: cmd vagy Win9x/WiME esetén: command) indítod el a lefordított programot, akkor rendesen megmarad. Egyébként a vezérlés visszakerûl az õt meghívó programnak.
"Olyat lehet hogy addig nem lép vssza míg meg nem nyomok valamit?"
A programod legvégébe írd be az alábbi sorokat:
Repeat
Until Keypressed;
#66
Hali!
Ha megírok egy programot az miért csak egy pillanatig van a képernyõn? Mit kell beírni vagy mit kell csinálni hogy korlátlan ideig legyen a képernyõn? Olyat lehet hogy addig nem lép vssza míg meg nem nyomok valamit? Elõre is köszi!
Ha megírok egy programot az miért csak egy pillanatig van a képernyõn? Mit kell beírni vagy mit kell csinálni hogy korlátlan ideig legyen a képernyõn? Olyat lehet hogy addig nem lép vssza míg meg nem nyomok valamit? Elõre is köszi!
hát, fogadjunk hogy erre is azt fogja mondani, hogy tele van vírussal...
egyébként konzultáltunk a t.vezetõ-vel és a gizdával, hogy elérjük ezt a mondatot:
"hát jólvan, megpróbálok csinálni valamit"
...
egyébként konzultáltunk a t.vezetõ-vel és a gizdával, hogy elérjük ezt a mondatot:
"hát jólvan, megpróbálok csinálni valamit"
...
Mindenképpen konzultálj a tanfolyam vezetõjével.
Az õ érdeke az, hogy sikeresen megtanítsa a programozást, és hogy a megírt programokat ki is tudjátok próbálni a gépeken - ha ez akadályba ütközik, erre megoldást kell találni (vagy a TP patchelése, vagy Freepascal beszerzése révén).
"mi lenne, ha kiállná elé te?"
Irányítsd ide azt a rendszergazdát. Szerintem vagyunk itt elegen ahhoz, hogy a jó cél érdekében (egy iskolában rendesen tudjátok használni a gépeket, a programozást rendesen lehessen oktatni), jobb belátásra bírjuk.
Az õ érdeke az, hogy sikeresen megtanítsa a programozást, és hogy a megírt programokat ki is tudjátok próbálni a gépeken - ha ez akadályba ütközik, erre megoldást kell találni (vagy a TP patchelése, vagy Freepascal beszerzése révén).
"mi lenne, ha kiállná elé te?"
Irányítsd ide azt a rendszergazdát. Szerintem vagyunk itt elegen ahhoz, hogy a jó cél érdekében (egy iskolában rendesen tudjátok használni a gépeket, a programozást rendesen lehessen oktatni), jobb belátásra bírjuk.
mi lenne, ha kiállná elé te? nem olyan egyszerû ezzel 😄 de holnap megpróbálok csinálni valamit...
"hogy az tcmd-t is alig akart felengedni"
Mondjuk megértem a rendszergazdát is: ha crackelt tcmd-t akartok felrakni a gépre akkor könnyen rosszul járhat (ha a BSA felkeresi az iskolátokat, õt fogják elõvenni, és valószínûleg az iskola vezetõsége képes rákenni az egész ügyet).
A jogi dolgokról bõvebben itt olvashattok (A Total Commander shareware - tehát törés nélkûl szabadon használható, a Turbo Pascal 7 kereskedelmi termék, a [url="http://community.borland.com/article/0,1410,20803,00.html"]Turbo Pascal 5.5[url] freeware, a FreePascal is GPL licenszû - szóval az is ingyenesen használható).
"merthogy tele van vírussal"
Ha a hivatalos oldalról töltitek le a programot (Total commander esetén ez a http://www.ghisler.com/), nem töritek fel a korlátját, akkor elvileg nem kellene lenne vírusnak (spyware-nek, és egyéb károkozónak) benne lennie (vannak olyan programok amelyben alapból vannak: ilyen például a BSPlayer).
Ha mutat nektek egy releváns oldalt, egy vírusírtó által kreált log-ot, hogy a hivatalos oldalról letöltött programban vírus/spyware/egyéb károkozó van, akkor természetesen igaza lehet.
Mondjuk megértem a rendszergazdát is: ha crackelt tcmd-t akartok felrakni a gépre akkor könnyen rosszul járhat (ha a BSA felkeresi az iskolátokat, õt fogják elõvenni, és valószínûleg az iskola vezetõsége képes rákenni az egész ügyet).
A jogi dolgokról bõvebben itt olvashattok (A Total Commander shareware - tehát törés nélkûl szabadon használható, a Turbo Pascal 7 kereskedelmi termék, a [url="http://community.borland.com/article/0,1410,20803,00.html"]Turbo Pascal 5.5[url] freeware, a FreePascal is GPL licenszû - szóval az is ingyenesen használható).
"merthogy tele van vírussal"
Ha a hivatalos oldalról töltitek le a programot (Total commander esetén ez a http://www.ghisler.com/), nem töritek fel a korlátját, akkor elvileg nem kellene lenne vírusnak (spyware-nek, és egyéb károkozónak) benne lennie (vannak olyan programok amelyben alapból vannak: ilyen például a BSPlayer).
Ha mutat nektek egy releváns oldalt, egy vírusírtó által kreált log-ot, hogy a hivatalos oldalról letöltött programban vírus/spyware/egyéb károkozó van, akkor természetesen igaza lehet.
õszintén szólva pont ugyanezt próbáltuk, de õ annyira fos (má' elnézést 😛), hogy az tcmd-t is alig akart felengedni, merthogy tele van vírussal. ugyanezt mondta erre is...
De elõtte mindenképpen teszteld, hogy rendesen mûködik-e a patch, és hogy Turbo Pascal 7.01 (ellenörzése: Help/About menûpont) van a gépeken!
Vagy esetleg javaslom a FreePascal beszerzését. Windows XP-n fut, ingyenes, és a tanfolyamban (valószínûleg nem kell túlságosan TP specifikus dolgokat tanulni) használható eszköz.
Vagy esetleg javaslom a FreePascal beszerzését. Windows XP-n fut, ingyenes, és a tanfolyamban (valószínûleg nem kell túlságosan TP specifikus dolgokat tanulni) használható eszköz.
Nos ebben az esetben a következõ dolgot kell csinálni:
1. Odamész a rendszergazdához (mellesleg megkéred a tanfolyam vezetõjét, hogy jöjjön veled).
2. Megmutatod neki a Borland hivatalos oldalát, és onnan letöltöd (a kérdõívnek megadsz kamu adatokat) a patch-et.
3. Elmagyarázod a rendszergazdának hogy: "Kedves rendszergazda úr/hölgy! Nekünk tanfolyamon szükségünk van a Turbo Pascalra. Viszont ezeken a gépeken a lefordított programok 200-as futási hibával lefagynak. Mint a Borland hivatalos oldalán látható erre van megoldás. Tisztelettel megkérnénk önt, hogy a tanfolyam sikeressége érdekében telepítsük/telepítse fel a gépekre. Mivel ez a patch hivatalos oldalról származik, ezért a rendszerre nem jelent veszélyt."
4. Ha erre nem hajlandó, akkor hivatkozz a tanfolyamvezetõnek (na erre kell a tanfolyamvezetõ) arra, hogy ezzel a nem éppen konstruktív lépéssel a rendszergazda hátráltatja a tanfolyam sikerességét - ezáltal a tanfolyamvezetõ nem tudja eredményesen megtartani az órákat - így a sulitok nem tudja elérni a kitûzött célt (hogy ti okosodjatok).
1. Odamész a rendszergazdához (mellesleg megkéred a tanfolyam vezetõjét, hogy jöjjön veled).
2. Megmutatod neki a Borland hivatalos oldalát, és onnan letöltöd (a kérdõívnek megadsz kamu adatokat) a patch-et.
3. Elmagyarázod a rendszergazdának hogy: "Kedves rendszergazda úr/hölgy! Nekünk tanfolyamon szükségünk van a Turbo Pascalra. Viszont ezeken a gépeken a lefordított programok 200-as futási hibával lefagynak. Mint a Borland hivatalos oldalán látható erre van megoldás. Tisztelettel megkérnénk önt, hogy a tanfolyam sikeressége érdekében telepítsük/telepítse fel a gépekre. Mivel ez a patch hivatalos oldalról származik, ezért a rendszerre nem jelent veszélyt."
4. Ha erre nem hajlandó, akkor hivatkozz a tanfolyamvezetõnek (na erre kell a tanfolyamvezetõ) arra, hogy ezzel a nem éppen konstruktív lépéssel a rendszergazda hátráltatja a tanfolyam sikerességét - ezáltal a tanfolyamvezetõ nem tudja eredményesen megtartani az órákat - így a sulitok nem tudja elérni a kitûzött célt (hogy ti okosodjatok).
no jó ezt már én is megtaláltam, csak ezt suliba nem lehet felrakni mer a hülye rendszergizda nem engedi, holott nekünk tanfolyamon kéne... 😛
Turbo Pascalban programok javítása, mely a Pentium 2 - vagy nagyobb � processzor esetén fordul elõ. A hiba - run time error 200 at xxxx:xxxx � üzenettel jelentkezik.
http://www.origo.hu/szoftverbazis/frissites/update/tp7p5fix.html
Vagy lásd itt.
http://www.origo.hu/szoftverbazis/frissites/update/tp7p5fix.html
Vagy lásd itt.
üdv
van valami gáz vele, mert akármilyen progit akarok vele futtatni, 200-as hibát ad. tesztelésen is OK, én is látom hogy OK (vazze egy write az egész 😛)
szóval valami 5let?
van valami gáz vele, mert akármilyen progit akarok vele futtatni, 200-as hibát ad. tesztelésen is OK, én is látom hogy OK (vazze egy write az egész 😛)
szóval valami 5let?
#52
hi
megtudnátok mondani hogy hogyan lehet egyfor ciklust olyanra "állítani", hogy addig amíg.
az már meg van hogy hogy kell 1-tõl integer-ig .... <#unalmas>#unalmas>
megtudnátok mondani hogy hogyan lehet egyfor ciklust olyanra "állítani", hogy addig amíg.
az már meg van hogy hogy kell 1-tõl integer-ig .... <#unalmas>#unalmas>
#51
Kosz.
A64 3500+, Asus A8N-SLI, 2x512mb ram(TWINMOS, CL 2.5), 7800GT 256mb/256bit
Mi nem világos belõle? Egyszerûen szólva olyan függvényrõl/eljárásról van szó, ami önmagát hívja, majd a megfelelõ feltételek esetén teljesen, vagy részben visszabomlik (errõl a programozónak kell gondoskodnia).
Többnyire olyan, jórészt ismétlõdõ utasításokat tartalmazó feladatok során szokták használni, amikor egymásba ágyazott, vagy fa-struktúrájú, vagy azonos szabály szerint változó elemhalmazon kell végiggyalogolni. Ilyen pl. a könyvtárszerkezet (pl. fájlkeresés, könyvtárméretek összegzése, stb.), vagy valamilyen gráf (pl. útvonalháló) bejárása, vagy hierarchikus modellben felépülõ adatok összegzése (pl. napi, havi, negyedéves, éves pénzügyi összegzések), vagy egy egyszerû faktoriális számítás.
A rekurzió azt használja ki, hogy a modern nyelvekben az eljáráshívás során átadott paraméterek, és az eljáráson belül használt lokális változók (kevés kivétellel, de ez most lényegtelen) mind külön memóriaterületet foglalnak le, és az eljárás végén ezek felszabadulnak. Rekurzív hívás esetén mindig új adatterület képzõdik (amekkora szintû, mélységû a hívás, annyiszor), a visszalépegetés során pedig ez felszabadul, és az elõzõ hívás pillanatnyi értékei újra rendelkezésre állnak.
A rekurzió ezen elõnye a hátránya is: ha nem tud "kimászni" az egymásba hívásokból, az jó esetben idõlimittel, mélységi korláttal, vagy memória elfogyással hibát produkál, vagy elszáll, rossz esetben végtelen ciklusba kerül, amin csak a kívülrõl történõ kilövés segíthet.
Kb. ennyi. 😊
Többnyire olyan, jórészt ismétlõdõ utasításokat tartalmazó feladatok során szokták használni, amikor egymásba ágyazott, vagy fa-struktúrájú, vagy azonos szabály szerint változó elemhalmazon kell végiggyalogolni. Ilyen pl. a könyvtárszerkezet (pl. fájlkeresés, könyvtárméretek összegzése, stb.), vagy valamilyen gráf (pl. útvonalháló) bejárása, vagy hierarchikus modellben felépülõ adatok összegzése (pl. napi, havi, negyedéves, éves pénzügyi összegzések), vagy egy egyszerû faktoriális számítás.
A rekurzió azt használja ki, hogy a modern nyelvekben az eljáráshívás során átadott paraméterek, és az eljáráson belül használt lokális változók (kevés kivétellel, de ez most lényegtelen) mind külön memóriaterületet foglalnak le, és az eljárás végén ezek felszabadulnak. Rekurzív hívás esetén mindig új adatterület képzõdik (amekkora szintû, mélységû a hívás, annyiszor), a visszalépegetés során pedig ez felszabadul, és az elõzõ hívás pillanatnyi értékei újra rendelkezésre állnak.
A rekurzió ezen elõnye a hátránya is: ha nem tud "kimászni" az egymásba hívásokból, az jó esetben idõlimittel, mélységi korláttal, vagy memória elfogyással hibát produkál, vagy elszáll, rossz esetben végtelen ciklusba kerül, amin csak a kívülrõl történõ kilövés segíthet.
Kb. ennyi. 😊
#49
Hi ha akadna egy ember, aki elmagyarazna nekem a rekurziot, azaz azt, hogy hogy mukodik ugy holnap estig barmikor, annak nagyon orulnek.
A64 3500+, Asus A8N-SLI, 2x512mb ram(TWINMOS, CL 2.5), 7800GT 256mb/256bit
#47
honan ajánlatos letölteni a turbo pascal 7.0 magyart?
#46
sikerült megoldani, köszönöm a helpet, és a magyarázatot
football without ultras is nothing
#45
nsh igy már kicsit érthetõbb, mint amit leirtam 3 vázlatpontban :d
köszi a segítséget, még kínlodom vele akkor
köszi a segítséget, még kínlodom vele akkor
football without ultras is nothing
Nem tudom, pontosan mi a kérdés, de ha a beszúró és a buborék közötti különbség érdekel, akkor tekintsd úgy, hogy a buborék a beszúró egy változata.
A buborék során minden elempáron végigmegyünk, és ha a páros 2. tagja kisebb, mint az 1., akkor megcseréljük õket. Ezt (alapesetben) annyiszor ismételjük, mint az elemek száma-1, és minden ciklus az elõzõ ciklus vége-1 elemig tart (azért alapesetben, mert figyelhetjük, hogy egy teljes ciklus alatt volt-e csere, és ha nem, akkor nem kell a többit megcsinálni). Azért "buborék", mert a nagyobb elemek úgy vándorolnak a tömb vége felé, mint a pohárban a buborék. 😊
A beszúró hasonlít ehhez, de kicsit bonyolultabb. Vesszük sorban az elemeket a másodiktól kezdve (n), és az 1..n-1 sorban megnézzük, hová illik. Ha mindegyiknél nagyobb, akkor a helyén marad, és vesszük a következõ elemet. Ha beillik valahová, akkor beszúrjuk abba a pozícióba, az utána következõ elemeket (n-1-ig) pedig egy pozícióval arrébb tesszük. Így a rendezés egy menetben megtörténik, de az odébbtologatások miatt akár tovább is tarthat, mint egy buborékrendezés. Amit te írtál a #40-ben a beszuro-ban az nem ez. 😊
A buborék során minden elempáron végigmegyünk, és ha a páros 2. tagja kisebb, mint az 1., akkor megcseréljük õket. Ezt (alapesetben) annyiszor ismételjük, mint az elemek száma-1, és minden ciklus az elõzõ ciklus vége-1 elemig tart (azért alapesetben, mert figyelhetjük, hogy egy teljes ciklus alatt volt-e csere, és ha nem, akkor nem kell a többit megcsinálni). Azért "buborék", mert a nagyobb elemek úgy vándorolnak a tömb vége felé, mint a pohárban a buborék. 😊
A beszúró hasonlít ehhez, de kicsit bonyolultabb. Vesszük sorban az elemeket a másodiktól kezdve (n), és az 1..n-1 sorban megnézzük, hová illik. Ha mindegyiknél nagyobb, akkor a helyén marad, és vesszük a következõ elemet. Ha beillik valahová, akkor beszúrjuk abba a pozícióba, az utána következõ elemeket (n-1-ig) pedig egy pozícióval arrébb tesszük. Így a rendezés egy menetben megtörténik, de az odébbtologatások miatt akár tovább is tarthat, mint egy buborékrendezés. Amit te írtál a #40-ben a beszuro-ban az nem ez. 😊
#43
köszi, én is erre gondoltam, de sajna énsem tudom a fgv.-t
nah akkor utánakeresek
a másik problémára nem tudod mi lehet a megoldás? ugyértem h az inputot is generálom mint látod, 1000db véletlen számot
azonban vannak egyformák. azért kell (relative) sok szám, h a sorbarendezés vmivel tovább tartson. ez leginkább majd az iskolai gépeken lesz érzékelhetõ 😄 szóval vannak egyformák is, melyeket nem akar rendezni. de van amiket egymás mögé rak, azonban van, mikor otthagyja a helyén..
erre esetleg vmi megoldás? :S
nah akkor utánakeresek
a másik problémára nem tudod mi lehet a megoldás? ugyértem h az inputot is generálom mint látod, 1000db véletlen számot
azonban vannak egyformák. azért kell (relative) sok szám, h a sorbarendezés vmivel tovább tartson. ez leginkább majd az iskolai gépeken lesz érzékelhetõ 😄 szóval vannak egyformák is, melyeket nem akar rendezni. de van amiket egymás mögé rak, azonban van, mikor otthagyja a helyén..
erre esetleg vmi megoldás? :S
football without ultras is nothing
Hát, ilyesmi feladatra általában bonyolultabb idõzítõ eljárásokat használnak, de sztem neked bõven elég, ha az indításkor lekérdezed a pillanatnyi idõt, a végén is, és a kettõbõl kiszámítod az eltelt idõt.
Fejbõl most nem tudom, melyik az a TPascal-os függvény, Delphi-ben többnyire a GetTime()-t használom (ha esetleg Delphi-s konzolos alkalmazásként írod). Bár nagyon kis idõk mérésére azt sem használható.
Fejbõl most nem tudom, melyik az a TPascal-os függvény, Delphi-ben többnyire a GetTime()-t használom (ha esetleg Delphi-s konzolos alkalmazásként írod). Bár nagyon kis idõk mérésére azt sem használható.
#41
ooo bassza meg.. az [ig ket átalakitotta.. sry
UBB-t elfelejtettem.. :s mind1 azok ottvannak 😊
UBB-t elfelejtettem.. :s mind1 azok ottvannak 😊
football without ultras is nothing
#40
sziasztok
suliba olyan feladatot kaptam h 3 naiv rendezési elv (kiválasztó, beszúró, buborék) futásidejét kellene összehasonlitani! ezt hogyan tudom megoldani?
mellesleg vki érthetõen a tudtomra adná a beszuro illetve buborék közti különbséget?
arra is help kéne, h ha van már egy elem, akkor az ugyanakkorát miért nem ill miért nem mindig teszi mögé?
az eddig kész forrás:
program RENDEZES;
uses crt;
var
infile : text;
tomb : array<1..1000>1..1000> of integer;
procedure make_input;
var
h,i : integer;
begin
assign(infile,'input.dat');
rewrite(infile);
i:=1; h:=0;
for i:=1 to 1000 do begin
h:=random(10000);
writeln(infile,h);
end;
close(infile);
writeln('Az input file elkeszult!');
end;
procedure beolvas;
var
i : integer;
begin
assign(infile,'input.dat');
reset(infile);
i:=0;
while not eof(infile) do begin
inc(i);
readln(infile,tomb);
end;
close(infile);
writeln('Az adatok a tombbe helyezve!');
end;
procedure kivalaszto;
var
h, i, min, temp : integer;
outfile : text;
begin
i:=0; h:=0;
for i:=1 to 999 do begin
min:=tomb;
for h:=1 to 1000 do begin
if tomb >min then
begin
temp:=min;
min:=tomb ;
tomb :=temp;
end;
end;
end;
i:=0;
assign(outfile,'output_kivalaszto.dat');
rewrite(outfile);
for i:=1 to 1000 do begin
writeln(outfile,tomb);
end;
close(outfile);
writeln('Kivalaszto rendezes sikeres, az output letrehozva!');
end;
procedure beszuro;
var
h, i, temp : integer;
outfile : text;
begin
i:=0; h:=0;
for i:=1 to 1000 do begin
h:=i+1;
if tomb <tomb then
begin
temp:=tomb;
tomb:=tomb ;
tomb :=temp;
end;
end;
i:=0;
assign(outfile,'output_beszuro.dat');
rewrite(outfile);
for i:=1 to 1000 do begin
writeln(outfile,tomb);
end;
close(outfile);
writeln('Beszuro rendezes sikeres, az output letrehozva!');
end;
begin
make_input;
beolvas;
kivalaszto;
beolvas;
beszuro;
end.
suliba olyan feladatot kaptam h 3 naiv rendezési elv (kiválasztó, beszúró, buborék) futásidejét kellene összehasonlitani! ezt hogyan tudom megoldani?
mellesleg vki érthetõen a tudtomra adná a beszuro illetve buborék közti különbséget?
arra is help kéne, h ha van már egy elem, akkor az ugyanakkorát miért nem ill miért nem mindig teszi mögé?
az eddig kész forrás:
program RENDEZES;
uses crt;
var
infile : text;
tomb : array<1..1000>1..1000> of integer;
procedure make_input;
var
h,i : integer;
begin
assign(infile,'input.dat');
rewrite(infile);
i:=1; h:=0;
for i:=1 to 1000 do begin
h:=random(10000);
writeln(infile,h);
end;
close(infile);
writeln('Az input file elkeszult!');
end;
procedure beolvas;
var
i : integer;
begin
assign(infile,'input.dat');
reset(infile);
i:=0;
while not eof(infile) do begin
inc(i);
readln(infile,tomb);
end;
close(infile);
writeln('Az adatok a tombbe helyezve!');
end;
procedure kivalaszto;
var
h, i, min, temp : integer;
outfile : text;
begin
i:=0; h:=0;
for i:=1 to 999 do begin
min:=tomb;
for h:=1 to 1000 do begin
if tomb
begin
temp:=min;
min:=tomb
tomb
end;
end;
end;
i:=0;
assign(outfile,'output_kivalaszto.dat');
rewrite(outfile);
for i:=1 to 1000 do begin
writeln(outfile,tomb);
end;
close(outfile);
writeln('Kivalaszto rendezes sikeres, az output letrehozva!');
end;
procedure beszuro;
var
h, i, temp : integer;
outfile : text;
begin
i:=0; h:=0;
for i:=1 to 1000 do begin
h:=i+1;
if tomb
begin
temp:=tomb;
tomb:=tomb
tomb
end;
end;
i:=0;
assign(outfile,'output_beszuro.dat');
rewrite(outfile);
for i:=1 to 1000 do begin
writeln(outfile,tomb);
end;
close(outfile);
writeln('Beszuro rendezes sikeres, az output letrehozva!');
end;
begin
make_input;
beolvas;
kivalaszto;
beolvas;
beszuro;
end.
football without ultras is nothing
#38
köszi😊
#37
ja amugy köszi 😉
#36
minden kisbetût nagybetûre cserél
for i:=1 to len(beolv_sor) do if beolv_sor[ i ] in <'a'..'z'>'a'..'z'> then beolv_sor[ i ]:=upcase(beolv_sor [ i ]);
itt a "len(beolv_sor)" az length(beolv_sor) akar lenni ugye?
for i:=1 to len(beolv_sor) do if beolv_sor[ i ] in <'a'..'z'>'a'..'z'> then beolv_sor[ i ]:=upcase(beolv_sor [ i ]);
itt a "len(beolv_sor)" az length(beolv_sor) akar lenni ugye?
Csak az elvi megoldások, hibakezelés és speciális esetek (pl. szöveg a sor elején/végén) nélkül, a konkrét dolgokat programozd le magad:
az összes *-ot, + jelre cseréli
repeat i:=pos('*', beolv_sor); if i>0 then beolv_sor[ i ]:='+'; until i>0;
minden kisbetût nagybetûre cserél
for i:=1 to len(beolv_sor) do if beolv_sor[ i ] in <'a'..'z'>'a'..'z'> then beolv_sor[ i ]:=upcase(beolv_sor [ i ]);
balra igazítja a sort
while beolv_sor<1>1>=' ' do beolv_sor:=copy(beolv_sor, 2, len(beolv_sor)-1);
minden olyan A-t amely szóköz után van azt le kell törölni
repeat i:=pos(' A', beolv_sor); if i>0 then beolv_sor:=copy(beolv_sor, 1, i) + copy(beolv_sor, i+2, len(beolv_sor)-i-1); until i>0;
minden 'szép' szót 'gyönyörû'-re kell cserélni
repeat i:=pos('szép', beolv_sor); if i>0 then beolv_sor:=copy(beolv_sor, 1, i+1) + 'gyönyörû' + copy(beolv_sor, i+4, len(beolv_sor)-i-3); until i>0;
az összes *-ot, + jelre cseréli
repeat i:=pos('*', beolv_sor); if i>0 then beolv_sor[ i ]:='+'; until i>0;
minden kisbetût nagybetûre cserél
for i:=1 to len(beolv_sor) do if beolv_sor[ i ] in <'a'..'z'>'a'..'z'> then beolv_sor[ i ]:=upcase(beolv_sor [ i ]);
balra igazítja a sort
while beolv_sor<1>1>=' ' do beolv_sor:=copy(beolv_sor, 2, len(beolv_sor)-1);
minden olyan A-t amely szóköz után van azt le kell törölni
repeat i:=pos(' A', beolv_sor); if i>0 then beolv_sor:=copy(beolv_sor, 1, i) + copy(beolv_sor, i+2, len(beolv_sor)-i-1); until i>0;
minden 'szép' szót 'gyönyörû'-re kell cserélni
repeat i:=pos('szép', beolv_sor); if i>0 then beolv_sor:=copy(beolv_sor, 1, i+1) + 'gyönyörû' + copy(beolv_sor, i+4, len(beolv_sor)-i-3); until i>0;
#34
és van olyan ember aki az én problémámat tudja orvosolni?
#32
jolvan köszönöm esetleg vki olyan ember aki gondolja hogyha ideirok akkor valószinüleg nem könyv formában szeretném?
#31
könyvesbót
football without ultras is nothing
#30
és ha lehet legyen nagyon szájbarágos THX
#29
hy tud vki egy leirást amibõl meg lehet tanulni bánni a pascallal ha lehetne legyen magyar de az angol se gáz
#28
A suliban kaptam egy érdekes feladatot, amit sehogy nem bírtam megoldani.
A feladat: Írj egy programot ami ezek tudja:
-az összes *-ot, + jelre cseréli
-minden kisbetût nagybetûre cserél
-balra igazítja a sort
-minden olyan A-t amely szókör után van azt le kell törölni
-minden 'szép' szót 'gyönyörû'-re kell cserélni
na én addig eljutottam hogy a *-ot +ra, a szépet gyönyörûre cseréli, de azt is csak az elsõ szép-et és az elsõ csillagot, tehát ha több van benne akkor azokat nem cseréli, a többihez meg hozzá se tudtam nyulni 😞
szal ha van valakinek valami ötlete, akkor ez közölhetné velem, elõre is köszönöm
A feladat: Írj egy programot ami ezek tudja:
-az összes *-ot, + jelre cseréli
-minden kisbetût nagybetûre cserél
-balra igazítja a sort
-minden olyan A-t amely szókör után van azt le kell törölni
-minden 'szép' szót 'gyönyörû'-re kell cserélni
na én addig eljutottam hogy a *-ot +ra, a szépet gyönyörûre cseréli, de azt is csak az elsõ szép-et és az elsõ csillagot, tehát ha több van benne akkor azokat nem cseréli, a többihez meg hozzá se tudtam nyulni 😞
szal ha van valakinek valami ötlete, akkor ez közölhetné velem, elõre is köszönöm
#27
Szeretnék írni egy progit aminek az a tartalma, hogy ÍRD BE A KÓDOT...vagy akármi..
erre õ beírja, és amit beír azt kellene lementeni...
Na ezt hogy tudnám lérni??..
erre õ beírja, és amit beír azt kellene lementeni...
Na ezt hogy tudnám lérni??..
#26
ok kosz.
A64 3500+, Asus A8N-SLI, 2x512mb ram(TWINMOS, CL 2.5), 7800GT 256mb/256bit
Fene, megint ez a r*hadt zárójelezés...
[courier}
program sesz2;
uses crt;
var
be, ki: text;
s : string;
i, j : integer;
begin
assign(be, 'be.txt'); reset(be);
assign(ki, 'ki.txt'); rewrite(ki);
readln(be, s);
i:=1;
while(s[ i ])=' ') do inc(i);
j:=pos(' ', copy(s, i, 255));
if j=0 then j:=length(s)-i+2;
writeln(ki, copy(s, i, j-1));
while not eof(be) do begin
readln(be, s);
writeln(ki, s);
end;
close(be);
close(ki);
end.
[/courier]
[courier}
program sesz2;
uses crt;
var
be, ki: text;
s : string;
i, j : integer;
begin
assign(be, 'be.txt'); reset(be);
assign(ki, 'ki.txt'); rewrite(ki);
readln(be, s);
i:=1;
while(s[ i ])=' ') do inc(i);
j:=pos(' ', copy(s, i, 255));
if j=0 then j:=length(s)-i+2;
writeln(ki, copy(s, i, j-1));
while not eof(be) do begin
readln(be, s);
writeln(ki, s);
end;
close(be);
close(ki);
end.
[/courier]
Jól értem, hogy ez egy szövegfájl elsõ sorából levágja az elsõ szót, kiírja, majd a többi sort egyben átmásolja? Ha igen, van erre sokkal egyszerûbb megoldás is, de a hibát elsõsorban a harmadik while elõtti close(g); reset(g); okozza. Textfájlról van szó, nem típusos állományról, ergo a reset() csak olvasásra nyitja meg, az írási mûveletek hibát fognak okozni. Ha létezõ textfájlhoz akarsz hozzáfûzni vmit, akkor az append() kell neked. Eleve hülyén is mûködne, ha lezárod, majd reset()tel újra megnyitod, mert ilyenkor a file pointer a fájl elejére mutat vissza és felülírnád az elõzõleg kiírt adatot.
Szóval az egyszerûbb megoldás:
program sesz2;
uses crt;
var
be, ki: text;
s : string;
i, j : integer;
begin
assign(be, 'be.txt'); reset(be);
assign(ki, 'ki.txt'); rewrite(ki);
readln(be, s);
i:=1;
while(s)=' ') do inc(i);
j:=pos(' ', copy(s, i, 255));
if j=0 then j:=length(s)-i+2;
writeln(ki, copy(s, i, j-1));
while not eof(be) do begin
readln(be, s);
writeln(ki, s);
end;
close(be);
close(ki);
end.
[/courier}
(Remélem, mûködik, mert nem próbáltam ki. 😊 ).
Szóval az egyszerûbb megoldás:
program sesz2;
uses crt;
var
be, ki: text;
s : string;
i, j : integer;
begin
assign(be, 'be.txt'); reset(be);
assign(ki, 'ki.txt'); rewrite(ki);
readln(be, s);
i:=1;
while(s)=' ') do inc(i);
j:=pos(' ', copy(s, i, 255));
if j=0 then j:=length(s)-i+2;
writeln(ki, copy(s, i, j-1));
while not eof(be) do begin
readln(be, s);
writeln(ki, s);
end;
close(be);
close(ki);
end.
[/courier}
(Remélem, mûködik, mert nem próbáltam ki. 😊 ).
#22
Udv. Van egy olyan problemam, hogy amikor lefuttatom a progit kiirja, hogy not run dos error=2, de azert lefut a progi, mert probaltam mar siman egy sozveges file-ot kiiratni, es az ment es a vegen ugyanezt az uzit kaptam. Szoval ez nem ir ki semmit, legyszi talaljatok meg a hibat, mielott vki megkerdezne, megvannak a szoveges fileok.
program sorokelsoszava;
uses crt;
var f,g:text;
c:char;
begin
assign(f,'be.txt');
assign(g,'ki.txt');
reset(f);
rewrite(g);
while not(eof(f)) do
begin
read(f,c);
if c<>' ' then while c<>' 'do
begin
write(g,c);
read(f,c);
if c=' ' then
begin
writeln(g);
readln(f);
end;
end;
end;
close(g);
reset(g);
while not(eof(f)) do
begin
read(f,c);
write(g,c);
end;
close(f);
close(g);
readln;
end.
program sorokelsoszava;
uses crt;
var f,g:text;
c:char;
begin
assign(f,'be.txt');
assign(g,'ki.txt');
reset(f);
rewrite(g);
while not(eof(f)) do
begin
read(f,c);
if c<>' ' then while c<>' 'do
begin
write(g,c);
read(f,c);
if c=' ' then
begin
writeln(g);
readln(f);
end;
end;
end;
close(g);
reset(g);
while not(eof(f)) do
begin
read(f,c);
write(g,c);
end;
close(f);
close(g);
readln;
end.
A64 3500+, Asus A8N-SLI, 2x512mb ram(TWINMOS, CL 2.5), 7800GT 256mb/256bit