Hogyan írjunk megoldások Pascal @ Timus Online Bíró
Hogyan írjunk Pascal megoldások
Pascal programokat összeállítani a szerver 32 bites fordító FreePascal 2.6.4. Úgy van kialakítva, kompatibilitási módban Borland Delphi és fut a következő paraméterekkel:
Itt lehet letölteni és olvasni a FreePascal online dokumentáció www.freepascal.org oldalon.
Egy példa a probléma megoldásának
Itt egy példa a probléma megoldásának a A + B Pascal:
Mi az új 32 bites fordító, míg a 16 bites
Ha használt írni a programot, a régi 16 bites fordító a DOS, például a Borland Pascal 7.0, akkor lesz hasznos tudni az alábbiakat:
- Lehetőség van használni tömbök mérete nagyobb, mint 64 ezer.
- Egész típusú 32 bites, és egybeesik a típus longint. 16-bites egész típusú úgynevezett mérföldkő smallint.
- Vonal már nem csak 255 karakter. nem kell alkalmazni a nulla jel, hogy megtanulják a string hosszát, használja ezt a hossza (s) függvény. Állítsa be a hossza a string lehet segítségével setlength eljárás (S, N).
Ezen kívül sok új kulcsszavakat. A következő szavak nem módosíthatóak, illetve használják azonosítók:
Azonban ez a kód nem fordul le:
Compiler funkciók, mint a többi 32 bites fordító Pascal
Van néhány jellemzője használt fordítóprogram a szerveren, hogy hasznos tudni.
- A szerveren nincsenek modulok crt és wincrt. mert az eljárások bennük foglalt, nincs szükség a problémák megoldására.
- A memória dinamikus blokk méretét kerekítik több 16 bájt. Például ha kiosztani sok 4 byte-os blokk, akkor a program használata 4-szer több memóriát, mint amennyi szükséges. Használja statikus adatszerkezetek, ők nem ezt a hátrányt, és általában a munka gyorsabb, mint a dinamikus.
- A készletek hozhat csak 4 vagy 32 bájt, ami szintén vezethet jelentős túllépés memóriát. Gyakran előfordul, hogy egy jó alternatívát a használata a készlet bit egész szám (vagy egy tömb egész számok).
- Akkor kifejezetten nem ad fajta egész és lebegőpontos típus. Az expressziós «x: = kiterjesztett (i)». ahol x típusú kiterjesztett. és I - egész. Ez téves. Mivel a kifejezés «x: = i» - a jobb oldalon.
Nem lehet megváltoztatni az értékét a for ciklus egy hurok. A következő kód nem fordul le:
Sőt, miután a ciklus változó hurok nem definiált. Ie értéke nem lehet használni, például annak érdekében, hogy keresni. A következő példa eltérően működnek különböző fordítóprogramok:
Hogyan kell használni a 64 bites egész adattípusok
Compiler teljes mértékben támogatja a 64 bites egész általa aláírt vagy aláíratlan. 64-bites egész szám jel egy értéktartomány a -9.223.372.036.854.775.808 hogy 9223372036854775807 előjel nélküli - 0 és 18446744073709551615. A jel nazyvetsya típusú int64. előjel nélküli - qword. A következő példa szemlélteti a használata egy 64-bites egész típus:
Hogyan kell olvasni az adatokat, amíg a végén a bemeneti folyam
egyéb megjegyzések
Néha Hibás válasz ítéletet jelent valójában Runtime error. Ez annak a ténynek köszönhető, hogy a freepascal magadnak elfogja a program végrehajtása hibát, és egy üzenetet jelenít meg a kimeneten.
Annak érdekében, hogy növelje a hangerőt a verem, és hogy elkerüljék a túlcsordulás, amikor a „mély” rekurzió, speciális irányelv (legalább 16 MB székhelye példa stack méret):
Hasznos hibakeresés megoldások feltételes irányelv ONLINE_JUDGE.