Az INPUT utasításnál nem találkoztunk még az ún. sorbeolvasással (LINE), amely egy stringváltozó beolvasásának egy másik módja. Ha a beolvasandó stringváltozó elé a LINE kulcsszót írjuk, a számítógép nem írja ki az idézőjeleket, ahogy ezt általában a stringváltozóknál teszi (de úgy viselkedik, mintha ezek ott lennének). Például:
INPUT LINE a$
Ha ezután beolvasandó adatként mondjuk beírjuk a következő stringet: macska
az a$ felveszi a macska értéket. Mivel idézőjelek itt nem jelennek meg, ezek nem is törölhetők, és így beolvasási adatként nem írható be másfajta stringkifejezés. Ne feledjük: a LINE numerikus változóknál nem használható.
Az INPUT LINE művelet alkalmazásánál a STOP-mechanizmus nem működik, ezért ha ilyenkor meg akarjuk állítani a program futását, a lefelé billentyűt (CAPS SHIFT és 6) kell használnunk. Az üzenet ebben az esetben is "H" lesz.
INPUT LINE
- Bali
- Alapító tag
- Hozzászólások: 2503
- Csatlakozott: 2012.01.06. 12:34
- Tartózkodási hely: Budapest III.
- Kapcsolat:
INPUT LINE
-= Bali =-
(c) 1983-2017 Evil-Soft
(c) 1983-2017 Evil-Soft
Re: INPUT LINE
Üdv,
A "nem találkoztunk még" kicsit erős túlzás......miért ne találkoztunk volna vele? Még a Spectrum könyv is írja, ráadásul ezzel lehetett kicsit bolond-biztosabb bekérést írni. Azt már csak a jó isten (mármint a ROM programírója) tudja megmondani, miért pont a Shift-6-ra tette a kilépési lehetőséget, ami így értelmetlenné is tette az egészet felhasználói oldalt tekintve.
Helyesebb lett volna az INPUT-ról, mint utasításról írnod, mert a LINE csak paramétere. Szintaktikailag ezernyi része van, csak épp az egész egy rakás ...... trutyi
Sok muris oldala is van, lásd például:
5 LET B=5
10 INPUT A
esetén helyből beírhatod, hogy B, mégse száll el a programod, van B egy változó és van is értéke. Aztán beírhatod, hogy RND, mire random számot küldesz be, mivel bármilyen függvényt kiértékel, akár bonyolult SIN, COS és egyéb függvényeket.
10 INPUT A$
Ugyanígy egy marhaság a törölhető idézőjelei miatt, ráadásul teljesen zűrös a felhasználó számára, mit is csinál. De akkor meg minek kellett ilyenre csinálni ?
10 INPUT LINE A$
Lásd előbb, de a kilépési lehetőség miatt olyan semmire-se-jó.
Aztán a legvidámabbra senki se gondolna:
10 INPUT ;
Na ez a legjobb, de senki se tudott róla, annyira rejtett. Mire lenne jó ? Megoldja a világ legbonyolultabb problémáját Spectrumon, a szöveg felfelé scrollozása esetén megjelenő scroll? kérdés kikapcsolását. Mennyi helyen ajánlgatták a POKE 23659,255 megoldást, mint egyetlen járható útját ennek a kiküböszölésére, pedig csak elég lett volna elhelyezni egy üres INPUT-ot a kiírások közé. Biztos nem tervezett dolog volt, de mindenesetre meglepően mulatságos.
Van egy komplett TV-BASIC "tanfolyamom" ezekről készítve a 2 vagy 3 évvel ezelőtti rendezvényre, de programsűrűség miatt nem volt rá szükség. Vagy nem feszegetjük tovább a BASIC dolgait és akkor lehet majd csodálkozni egyszer vagy szépen kilövöldözzük az egész műsort
Pgyuri
A "nem találkoztunk még" kicsit erős túlzás......miért ne találkoztunk volna vele? Még a Spectrum könyv is írja, ráadásul ezzel lehetett kicsit bolond-biztosabb bekérést írni. Azt már csak a jó isten (mármint a ROM programírója) tudja megmondani, miért pont a Shift-6-ra tette a kilépési lehetőséget, ami így értelmetlenné is tette az egészet felhasználói oldalt tekintve.
Helyesebb lett volna az INPUT-ról, mint utasításról írnod, mert a LINE csak paramétere. Szintaktikailag ezernyi része van, csak épp az egész egy rakás ...... trutyi

Sok muris oldala is van, lásd például:
5 LET B=5
10 INPUT A
esetén helyből beírhatod, hogy B, mégse száll el a programod, van B egy változó és van is értéke. Aztán beírhatod, hogy RND, mire random számot küldesz be, mivel bármilyen függvényt kiértékel, akár bonyolult SIN, COS és egyéb függvényeket.
10 INPUT A$
Ugyanígy egy marhaság a törölhető idézőjelei miatt, ráadásul teljesen zűrös a felhasználó számára, mit is csinál. De akkor meg minek kellett ilyenre csinálni ?
10 INPUT LINE A$
Lásd előbb, de a kilépési lehetőség miatt olyan semmire-se-jó.
Aztán a legvidámabbra senki se gondolna:
10 INPUT ;
Na ez a legjobb, de senki se tudott róla, annyira rejtett. Mire lenne jó ? Megoldja a világ legbonyolultabb problémáját Spectrumon, a szöveg felfelé scrollozása esetén megjelenő scroll? kérdés kikapcsolását. Mennyi helyen ajánlgatták a POKE 23659,255 megoldást, mint egyetlen járható útját ennek a kiküböszölésére, pedig csak elég lett volna elhelyezni egy üres INPUT-ot a kiírások közé. Biztos nem tervezett dolog volt, de mindenesetre meglepően mulatságos.
Van egy komplett TV-BASIC "tanfolyamom" ezekről készítve a 2 vagy 3 évvel ezelőtti rendezvényre, de programsűrűség miatt nem volt rá szükség. Vagy nem feszegetjük tovább a BASIC dolgait és akkor lehet majd csodálkozni egyszer vagy szépen kilövöldözzük az egész műsort

Pgyuri
- Bali
- Alapító tag
- Hozzászólások: 2503
- Csatlakozott: 2012.01.06. 12:34
- Tartózkodási hely: Budapest III.
- Kapcsolat:
Re: INPUT LINE
Kopiztam a manualból."nem találkoztunk még" kicsit erős túlzás

-= Bali =-
(c) 1983-2017 Evil-Soft
(c) 1983-2017 Evil-Soft
Re: INPUT LINE
Na ez az amikor lehet elmélkedni azon, hogy ez most bug vagy featurePgyuri írta: esetén helyből beírhatod, hogy B, mégse száll el a programod, van B egy változó és van is értéke. Aztán beírhatod, hogy RND, mire random számot küldesz be, mivel bármilyen függvényt kiértékel, akár bonyolult SIN, COS és egyéb függvényeket.
