Új Ifjúság, 1987 (35. évfolyam, 1-52. szám)

1987-01-28 / 4. szám

új ifjúság 10 Hogyan „keltettek életre“ a Challenger-katasztrófa áldozatainak utolsó szavait? A Challenger mágnesszalagjai, amelyek az űrhajósoknak az Indu­lás utáni szavalt rögzítették, mint­egy hat hétig hevertek 30 méte­res tengermélységben, s már csak mint habos, összeragadt masszát tudták őket a felszínre hozni. A szalagok megmentésére Irá­nyuló első kísérletek nem sike­rültek. A hideg desztillált vízben való öblítés és a rákövetkező szá­rítás ellenére újabb vas-oxid-réte- gek töredeztek le Ezután az IBM egyik arizonai laboratóriuma ka­pott megbízást rá, hogy fejlesszen ki egy „életkeltésl“ eljárást. E célra eleinte csupán egy néhány centiméteres szalagdarabot bocsá­tottak a rendelkezésére. Majd a- mikor a cég kutatói úgy vélték, hogy járható utat találtak, a to­vábbi kísérletek céljára a Chal­lengernek egy teljes szalagját megkapták. Azt tisztítás végett először né­hány napig felváltva salétromsa­vat, illetőleg desztillált vizet tar­talmazó fürdőbe merítették. Eze­ket a folyadékokat nyomás alatt a szalag rétegei közé is beprésel­ték. Ezáltal lassan eltávolították a magnézlum-hidroxidot. Majd a szalagot fél napig víztelenített metanol (metilalkohol) hatásá­nak tették ki, végül még egyszer friss metanollal öblítették. Miután a vizet teljesen eltávolították, a szalagot megszárították. Ezután a mágnesszalagon metil-szilikonnal megerősítették a hanghordozó ré­teget, s óvatosan megkezdték le- tekercselnl a 100 méter hosszúsá­gú szalagot. Ez több mint tizenkét óráig tartott. Amikor a szalagot újra föltekercselték, s első ízben lehallgatták, megállapíthatták, hogy az űrutasok a robbanást leg­alább hat, sőt esetleg tizenöt má­sodpercig ts túlélték A hangsza­lagról világosan hallható volt Mi­chael J. Smith űrhajós utolsó só­hajtása: „Uh-oh-“ Az már nem ál­lapítható meg pontosan, hogy az űrhajósok mikor veszítették el az eszméletüket, illetve mikor haltak meg. (filet és Tudomány) ICC *K KK ** JtKÍKKtC CKKXXK « « KK KK a KK oo ©a KK KK MR«t ítKH* »nun MRUC MM MM AM MN MR MM fP JUU üti timwff «meneti »*««*«» nimmt k»íuui »mm* _ m int tu no w rr uu utf ír UUUUUUUUJU TT «uuuuuutuu» XT RtRttiim •ftRRRRftft «R R* H M UlHI Ui útin un Ct Ült 'Hurt amit 1 ** Hmm * vuutiüüouua tumult tmtf U Mtuttl «WUWAItfUUil UtULUU.,Uti;t X. Az utolsó fejezetben a sztrlngekkel ismerkedtünk. Lássunk most két példát a sztringekre. Az első program a számítógépetek ASCII karakterkészletét írja ki a kép­ernyőre: 10 FOR 1=32 TO 127 STEP 16 20 FOR J =0 15 30 PRINT CHR$(I+J); 40 NEXT J 50 PRINT 60 NEXT I Ez a program két egymásba ágya­zott ciklusból áll, amelyeknek a mag­jában egy PRINT utasítást tartalmaz. A karaktereket a CHR$ függvény segít­ségével állítjuk elő. A kinyomtatott ka­rakterek kódjai a<32,127> intervallum­ban vannak. A 32 a helyköz (szí.: me- dzera, ang. space) karakter kódja. Azok a karakterek, amelyeknek a kódja ki­sebb, mint 32, ún. vezérlő karakterek. Ezek bizonyos vezérlő funkcióval ren­delkeznek (pl. a hely őr (kurzor) moz­gatása a képernyőn, lapdobás, soreme­lés a nyomtatón stb.), ezért nem nyom­tatható karakterek (nincs grafikai ké­pük). Azok a karakterek, amelyeknek a kódja nagyobb, mint 127, nem stan­dard ASCII karakterek. Az ezekhez a kódokhoz tartozó karakterek az egyes számítógépeknél eltérőek lehetnek. A Sinclair esetében ezekhez a kódokhoz különböző grafikai karakterek és az egyes BASIC kulcsszavak tartoznak. A következő program sztringek ábé­cérendbe szedését végzi. Az ábécéren­den itt az ASCII kódrendszer által de­finiált sorrendet kell érteni. 10 DiM N$(30] 20 LET 1=0 30 INPUT A$ 40 IF A$<>" " THEN LET 1=1+1: LET N$(I)=A$: GOTO 30 100 FOR j=l TO I—1 110 FOR K = j+l TO I 120 IF N$(J) =N$(K] THEN GOTO 160 130 LET A$=N$(J) 140 LET N$(J) =N$(K) 150 LET N$(K) =A$ 160 NEXT K 170 NEXT J 200 FOR K=1 TO I 210 PRINT N$(K) 220 NEXT K gezzük. Az I változóban beolvasott sztringek számát tároljuk. A rendezést a 100-as — 170-es utasítások végzik. A rendezés menete a következő: Vesszük az első sztringet és sorban összehasonlítjuk az utána következő sztringekkel. Ha valamelyik sztring ki­sebb az elsőnél, akkor a két sztringet kicseréljük. Nyilvánvaló, hogy így a legkisebb sztring kerül az első helyre. Ezt az eljárást a 110-es — 160-as uta­sítások végzik. Ha ezt az eljárást meg­ismételjük a második, harmadik ... i-Mk sztringre is, akkor a sztringek sorba rendeződnek. Ezt úgy valósítjuk meg, hogy az eljárást egy ciklusba tesszük (a 100-as és 170-es utasítások közé). A 200-as—220-as —utasítások­kal kiírjuk a sorba rendezett tömböt. Az előző fejezetekből Ismerjük már az ún. standard függvényeket Is. Ezek bizonyos gyakran használt matemati­kai, illetve sztring függvények. A BASIC ezen kívül lehetővé teszi saját függvé­nyek definiálását. A függvények defi­niálását először a Sinclair ZX Spectru- mon ismertetjük: DEF FN fnév («formális paraméter lista>) = kifejezés». A DEF FN kulcsszó, a define func­tion angol szavak rövidítése. Ezt a függvény neve követi, amely egy betű­ből áll, ha aritmetikai függvényt defi­niálunk, vagy egy betűből és egy dol­lárjelből áll, ha sztring függvényt de­finiálunk. A függvény nevét két záró­jel közötti ún. formális paraméter lista követi. A formális paraméterek válto­zók, amelyek a függvény argumentumát képviselik. A formális paraméterek lis­tája lehet üres Is, de a zárójeleket akkor Is ki kell tenni. Ha több formális para­méter van, vesszővel választjuk el őket egymástól. Ezután egy egyenlőség- jel következik, amelyet egy numerikus vagy sztring kifejezés követ, aszerint, hogy numerikus vagy sztring függvényt definiálunk. Pl.: 10 DEF FN A(X] = X*X*X Ez a definíció egy „A“ nevű függ­vényt definiál, amelynek egy paramé­tere van, ezt az X változóval jelöljük. A függvény értéke a paraméter köbe. A függvény használatakor a formális paraméter helyébe egy kifejezést he­lyettesíthetünk, ezt aktuális paramé­ternek nevezzük. PL: a A 10-es sorban egy N$ nevű tömböt deklarálunk. Ha több mint 30 sztringet akarunk rendezni, akkor ezt a dekla­rációt megfelelőképpen módosítani kell. A Sinclairen a tömböt kétdimenziósnak kell deklarálni, a második dimenzió a sztringek hosszát jelenti. Pl. a 10 DIM N$(30, 20) esetében 30 darab 20 karakter hosszú sztringekkel dolgozhatunk. A 30-as és 40-es utasítások egy ciklust alkotnak, amellyel a sztringek beolvasását vé­20 PRINT FN A(2*0.5+2) utasítás 27-et ír ki a képernyőre. A függvények használatánál (ún. hívásá­nál) az FN kulcsszót kell a függvény neve elé írni, mivel enélkül a rendszer azt hinné, hogy az A tömb 3. elemével akarunk dolgozni. A függvényhíváskor a rendszer először kiszámítja az ak­tuális paraméter értékét, ezt az értéket behelyettesíti a formális paraméterbe, és végül kiszámítja a függvény értékét. Tehát az történik, mintha az előző 20-as utasítást a következő utasítások­ra cserélnénk ki: 20 LET X = 2*0.5 + 2 21 LET A = X*X*X 22 PRINT A Saját függvénydefiníciókkal helyette­síthetjük a Sinclairen nem implemen­tált LEFT$, RIGHTS, MID$ standard sztringfüggvényeket: A LEFTS függvény: 10 DEF FN L$(X$, I) =X$ (TÓI) A RIGHTS függvény: 10 DEF FN R$ (X$, I) = X$ (LEN (X$) — I + 1TO) A MID$ függvény: 10 DEF FN M$ (X$. I, K) = X$ (I TO I + K — 1) Ez megkönnyíti a programok átvite­lét a PMD-ről a Sinclair ZX Spectrum- ra, mivel csak az egyes függvényhívá­sokat kell kijavítani. A PMD-n a függvénydefiníció a kö­vetkező alakú: DEF FNC fnév («formális para­meter») = «kifejezés» A PMD-n szűkebb lehetőségek van­nak a függvények definiálására, mint a Sinclairen. Minden függvénynek kö­telezően egy paramétere lehet. Sztring- függvények definiálására nincs lehető­ség. A formális paraméter nem lehet sztringváltozó. A Sinclair BASTC-ben van még egy standard sztringfüggvény, amelyikről eddig nem esett szó. Ez az INKEYS függvény. Ennek a függvénynek nincs paramétere. Az INKEYS függvény meg­vizsgálja, hogy a hívás pillanatában van-e lenyomva valamilyen billentyű. Ha nincs lenyomott billentyű, a függ­vény értéke egy üres sztring lesz. Ha le van nyomva valamelyik billentyű, akkor a függvény értéke a lenyomott billentyűhöz tartozó karakterből álló sztring. Próbáljátok ki a következő programot, hogy jobban megértsétek a függvény működését. 10 LET A$ = INKEYS 20 CLS 30 PRINT AT 1,1; AS, CODE(A$) 40 FOR 1=1 TO 50 : NEXT I 50 GOTO 10 A PMD-n is van hasonló függvény. Ez az INKEY. Ez nem sztringfüggvény, ezért nincs dollárjel a függvény neve után. Az INKEY függvény csak a PMD billentyűzet legfelső sorúban lévő KO ... K10, ún. key billentyűkre hasz­nálható (a Kll billentyűre nem). Ha a hívás pillanatában nincs lenyomva egy billentyű sem, akkor a függvény értéke 255. Ha valamelyik billentyű le van nyomva a hívás pillanatában, akkor a függvény értéke a billentyűn lévő sor­szám (0...10). Ezek a függvények nem úgy működ­nek, rtiint az INPUT utasítás. Az Input utasítás vár a bemenetre, és csak ak­kor folytatódik a program, ha lenyom­tuk az ENTER, illetve az EOL billen­tyűt. Az INKEYS, illetve az INKEY függ­vények csak megvizsgálják a billentyű­zet állapotát, és a program rögtön folytatódik tovább. Ezeket a függvé­nyeket jól fel lehet használni a játék- programok írása során. kAlosi Ákos (Folytatása a 6. számban) ALKALMAS Péter meséli a barátjának: — Képzeld, az orvos azt mondta nekem, hogy kivá­lóan alkalmas vagyok a síelésre. — És miből állapította ezt meg? A választ megtaláljátok a rejtvényben. VÍZSZINTES: 1. Határozórag. 3. A válasz első része. 10. Vízgőz. 12. Nehézkesen ír. 13. Angol szó, fejlődési irányzatot jelent. 14. Női hangnem. 15. Munka zsargon­ban. 17. Női becenév. 18. Határozórag. 19. Kolln egy­nemű betűi. 20. Idegen olaj. 22. Allga közepe! 23a. Abba az irányba. 24. Vörös angolul. 20. Osztrák és olasz gép­kocsijelzés. 27. Elfogödottan szerény, ártatlan. 30. Ta­szít. 32. Nőstény öz vagy szarvas. 33. Egy kis cseve­gés. 36. A baszk ellenállási szervezet rövid neve. 37. Kisebb ritkás erdő. 38. A vese orvosi neve. 39. Kép­zelet, képzelőerő, ábrándkép. 41. A teázás idejéig. 42. Kamionok Jelzése. 43. Értékes tulajdonság, készség (éh.). 44. Részvénytársaság röviden. 46. Bátorkodik. 48. Ravasz ötlet. 49. Női becenév. 51. A Balaton vizét ve­zeti el. 53. Csendes tag! 54. Diplomások neve előtti rövidítés. 55 japán város, a hajdani császári székhely. 57. Női becenév. 59. A leggyakrabban használt fém. 80. Két szám mennyiségi viszonyát kifejező hányados. 82. Latin kettős betű. 83. Indiai nagyváros, a Tadzs- Mahal városa. 64. Szovjet repülőgéptípus. FÜGGŐLEGES: 1. A népgazdaság egyik ága. 2. Est és ruha jelzője lehet. 3. Feltételes kötőszó. 4. Idegen hár­mas. 5. Hullámtörő gát. 8. Hangtalan ratal 7. Három szlovákul. 8. Testrész. 9. Ázsiai nagy ország. 11. Lásd a vízszintes 44. sortl 15. ... megvénülünk, Jókai regé­nyének címe. 18. Ilyen Írás az ogam. 19. Juhtejből ké­szült sajtszerű termék. 21. Ásatás eredménye lehet. 23. A válasz második része. 23a. A központi hatalmak elleh létrehozott szövetség az első világháborúban. 25. Szar­vával öklel. 28. Az európium és a tantál vegyjele. 29. Támogat. 31. Mellébeszél, köntörfalaz. 33. Tőszámnév. 34. ... Szilvia, a mondabeli Romulus és Rémus anyja. 35. Tiszta németül (REIN). 37. A régi római mitológiá­ban a családi tűzhely védelmezői. 40. Föld és só is van Ilyen. 41. Idős. 43. Mese és hírlap jelzője. 45. Hár­maskorona. 47, ... de Janeiro. 50. Kirekesztő szerkezet névelővel. 52. Zsiradékféle. 54. Gríz. 58. Szlovák igen­lés. 58. Az őgörög mitolögiában a Föld istennője. 59. Hangtalanul vágl 61. Fordított kettős betű. 63. Az ame­ricium vegyjelee. Beküldendő a vízszintes 3. és a függőleges 23. számú sorok megfejtése. A 2. szám rejtvényének helyes megfejtése: A ravasz­ság olyan, mint as aprópénz, nem lehet sokat venni rajta. Könyvet nyert Adám Ida, Nová Baäta. i

Next

/
Thumbnails
Contents