- Apple iPhone 16 Pro - rutinvizsga
- Netfone
- Milyen okostelefont vegyek?
- Samsung Galaxy A55 - új év, régi stratégia
- Apple iPhone 17 - alap
- Kijelző került a kamerasávra a Xiaomi 17 Pro és 17 Pro Max hátulján
- Honor 400 Pro - Gép a képben
- Youtube Android alkalmazás alternatívák reklámszűréssel / videók letöltése
- Hetekig bírják töltő nélkül a Huawei sportórái
- Huawei Watch GT 6 és GT 6 Pro duplateszt
Új hozzászólás Aktív témák
-
Lortech
addikt
A változtatás abban van a tiedhez képest, hogy egy logikai segédváltozóval vizsgáltam meg, hogy prím-e, illetve ezzel jeleztem. Ha volt osztója ( ha ''külső for ciklus indexe'' mod ''belső for ciklus indexe''=0), akkor nem prím (volt:=false lett), és ki lett íratva. Egyébként fejlettebb megoldás az, hogy csak a vizsgálandó szám négyzetgyökéig keresi és nézi az osztókat. (szerk: lehet még sokkal tovább is szépítgetni persze, van pár jó ötlet a linken)
Én is csináltam belőle benchmarkot, meg többen is rajtam kívül, csak tudnám merre van...
Bővebben: link
[Szerkesztve] -
Lortech
addikt
Leírnád, hogy hogy gondolkodtál? Nézegetten az előzőt is, de elég nehezen fogom fel. Az s változó szerepét nem nagyon tudom hova tenni. Pl megadsz neki más értéket, és akkor is ugyanaz lesz az eredmény.
Az előzőt amúgy erre javítottam ki, vagyis inkább átírtam:
program prim;
uses crt;
var i,k : integer;
volt:boolean;
begin
clrscr;
for i:=2 to 10 do
begin
volt:= false;
for k:=2 to i-1 do
begin
if i mod k =0 then volt:=true;
end;
if volt=false then writeln(i);
end;
readkey;
end.
[Szerkesztve] -
VladimirR
nagyúr
tipusok:
text -> szoveges file, sorokat tudunk bele ini/olvasni (irni lehet stringet is, akar tobbet is egy sorba)
file -> tipus nelkuli file, blokkokat irunk/olvasunk
file of xxx -> tipusos file, ahol xxx lehet szinte barmely tipus
eljarasok:
assign(var f, name:string)
f allomany tipusu valtozohoz (logikai allomanyhoz) hozzarendeli name fizikai allomanyt. a logikai allomanyra vonatkozo minden tovabbi muvelet name fizikai allomanyra vonatkozik. a kapcsolat a program vegeig tart, hacsak egy ujabb assign eljarassal nem rendelunk a logikai valtozohoz egy masik fizikai allomanyt. name tartalmazhat teljes utvonalleirast is, hossza maximalisan 79 karakter lehet. name azonosithat dos periferiat is: con, lpt1 (=prn), lpt2, lpt3, com1 (=aux), com2, nul. ha name ures karakterlanc, az eljaras f-hez a con periferiat rendeli
*nyitott allomanyra nem szabad hasznalni
append(var f: text) (A kettőspont és a ''t'' közé nem kell space, de a fórummotor smiley-vá alakította, ezért tettem. Bash)
megnyitja irasra az f szoveges allomanyt es az allomany aktualis poziciojat az allomany vegere allitja - a kovetkezo irasok bovitik az allomanyt. ha az allomany nyitva volt, akkor az eljaras bezarja, majd ujranyitja azt. amennyiben az utolso 128 bajtos blokkban volt allomanyvegjel (^Z, vagyis #26 karakter), akkor az aktualis pozicio az elso ilyenre all. f allomanybaltozot elozoleg az assign eljarassal egy letrezo fizikai allopmanyhoz kell rendelni. ha f-hez az ures karakterlancot rendeljuk, akkor az iras a szabvanyos b/k eszkozre (con) tortenik. $I- eseten az ioresult figgvennyel a nyitas eredmenye lekerdezheto
reset(var f [ :file; recsize:word)
megnyitja az assign eljarassal elozoleg f-hez rendelt, letezo fizikai allomanyt es az allomanymutatot az allomany elejere allitja (filepos(f)=0). ha az allomany ures (0 hosszusagu, illetve szoveges allomany eseten az elso karakter a ^Z), akkor eof(f)=true. ha f szoveges tipusu, akkor csak olvasni lehet az allomanybol, mig tipusos es tipus nelkuli allomanyok irhatoak es olvashatoak is lesznek az eljaras hivasa utan. tipusnelkuli allomanyok eseteben megadhato a rekordmneret is recsize parameterben, ha nem adjuk, meg, 128bajt lesz. ha f allomanyvaltozohoz ures karakterlancot rendeltunk, akkor az input allomanyt nyitja meg - ez az inicializalo reszben automatikusan megtortenik a program inditasakor. ha az eljaras nyitott allomanyra alkalmazzuk, akkor azt automatikusan lezarja az ujranyitas elott. $I- eseten az ioresult fuggvennyel a nyitas eredmenyessege lekerdezheto
rewrite(var f [ :file; recsize:word)
ha az assign eljarassal elozoleg f allomanyvaltozohoz rendelt fizikai allomany meg nem letezik, letrehozza azt es szoveges allomany eseteben irasra, tipusos es tipus nelkuli allomany eseteben irsra es olvasasra megnyitja. ha a fizikai allomany mar letezik, akkor elobb torli annak tartalmat. az allomanymutato az allomany elejere all (filepos(f)=0) es az allomany ures lesz (filesize(f)=0). ha f allomanyvaltozohoz ures karakterlancot rendelunk, akkor az output allomanyt nyitja meg irasra - az az inicaializalo reszben automatikusan megtortenik a program indulasakor. tipus nelkuli allaomanyok eseten a recsize parameterret a rekordmeret adhato meg, egyebkent az 128 bajt lesz. $I- eseten az ioresult fuggvennyel a nyitas eredmenyessege lekerdezheto
close(var f) lezarja az elozoleg reset, rewrite, vagy append eljarassal; megnyitott f logikai allomany. lezaras elott meg a pufferben maradt adatokat kiirja az allomanyba, a katalogust aktualizalja. vegul felszabaditja az allomanyhoz tartozo kezeloszamot (dos handle) tovabbi felhasznalas celjara. a muvelet eredmenyessege $I- mellett az ioresult fugvennyel lekerdezheto
(volna meg legalabb ennyi, de most lusta vagyok begepelni, ha keritek beirom a tobbit is)
forras: Angster Erzsébet - Kertész Lászóo: Turbo Pascal 6.0 'A' .. 'Z' -
Gyuri16
senior tag
program filekezeles;
var
valami: text;
begin
assign(valami,'c:/file.txt');
reset(valami);
write(valami,'amit bele akarsz irni');
close(valami);
end.
assign - megnevezi
reset - megnyitja
write/read - ir/olvas belole
close - becsukja
reset es rewrite kozt annyi a kulonbseg, hogy reset megnyitja a file, es leteznie kell, rewrite meg letrehozza/kitorli. read, write mukodik, persze a readln, writeln is.
[Szerkesztve] -
_thomas_
tag
hi!
ebben a pldában egy TButton komponenst mentünk ki háttártárra, a test.dat fileba.
procedure save();
var
f : TFileStream;
begin
try
f := TFileStream.Create('c:\test.dat',fmCreate);
f.Seek(0,500);
//komponenst mentünk ki vinyóra a TButton helyett természetesen a nevét kell megadni!
f.WriteComponent(TButton);
finally
f.Free;
end;
end;
[Szerkesztve]
Új hozzászólás Aktív témák
- Apple iPhone 16 Pro - rutinvizsga
- Netfone
- PlayStation 5
- Kormányok / autós szimulátorok topikja
- A nagy Szóda, Szódakészítés topic - legyen egy kis fröccs is! :-)
- Formula-1
- sziku69: Fűzzük össze a szavakat :)
- Hardcore café
- Luck Dragon: Asszociációs játék. :)
- Mibe tegyem a megtakarításaimat?
- További aktív témák...
- Féláron eladó vadonatúj razer blade 14 rtx 3080ti
- 500 ezerrel ár alatt! Vadonatúj garanciás razer blade 16 oled kijelző rtx 4070
- Hardverapró árérték bajnoka! Razer blade rtx 3080 ti i9 32gb ddr5 4k kijelző 144hz!
- Eladó kiskergaris 18TB-os Seagate EXOS X18 Enterprise HDD
- Félkonfig // I7 7700, GTX 1070, 16 GB DDR4
- HIBÁTLAN iPhone 13 mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3276
- HIBÁTLAN iPhone 15 Pro Max 256GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3495, 91% Akkumulátor
- Ultimate előfizetés új fiókra akár 2736 Ft/hó áron! Azonnali, automatizált aktiválással, csak Nálam!
- GYÖNYÖRŰ iPhone 13 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3434
- Nvidia Quadro M2000/ P2000/ P4000/ RTX 4000/ RTX 5000/ RTX A2000
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest