ZXTape! VIDEOBASIC7` (23613=\+256*23614>\),0:(23613=\+256*23614>\+1),0:   EDICOES LATINAS " f(23613=\+256*23614>\),0:(23613=\+256*23614>\+1),0 *317997|:7:7:7: Mn=09 :n,0;" ":n Cn=16:n,4;" ":n (>n=35:n,10 ;" ":n 216,23;" ";17,21;" ";18,21;" ";19,20;" ";20,20;" " 3C ? '#+563??`@###133~  qw{|?  000000000000000000000000000000000000000000000000000000000000000000000000000100000001111022200000000000000211000000011112222000000000000002222200022222222220000000000000020200000002222222200000000000000000000000000000000000000666666666000000000066000000000006660088888888888888888880666660000000888===============8000000088888888?===============8888888888888888?<<<<<<<<<<<<<<<8888888888888888?;;;;;;;;;;;;;;;8888888888888888?;;;;;;;;;;;;;;;8888888888888888?:::::::::::::::8888888888888888?:::::::::::::::8888888888???888888888888888888:8888888888???8888????88?????::::8888888888???????889999999989:::888888888?88888888888888889999998888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888VIDEOLIST   ********************* ** COPYRIGHT 1985 ** ** EDICOES LATINAS ** ********************* f(23613=\+256*23614>\),0:(23613=\+256*23614>\+1),0 317997|:0:0:0:0:23658j\,8:236099\,20:20,0;:""318008|:236066\,86V:236077\,123{ m7:7:1::#0;0,0; " PARA O GRAVADOR " (Cn=1502:.01z# =,*60<:n:490:600X F SUMARIO P,:AA=1:690:.6,21 d;K=6:p$="VIDEOHARDWARE: ":0710 n/p$="O JOYSTICK ":0710 =K=K+1:p$="VIDEOBASIC-A LINGUAGEM: ":0710 /p$="LEN - TO - - STR$ ":0710 .p$="VAL - VAL$ - IN - OUT ":0710 =K=K+1:p$="VIDEOBREAK: ":0710 /p$="Flores Electronicas ":0710 =K=K+1:p$="VIDEOBASIC-A PROGRAMACAO: ":0710 /p$="Manipulacao ":0710 .p$="de Cadeias ":0710 D100d:0490::AA=2:0690:.6,18 :K=8:p$="VIDEOTEST: ":0710 .p$="Jogo de adivinhas sobre ":0710 -p$="os temas da licao ":0710 <K=K+1:p$="VIDEO-JOGO: ":0710 .p$="O Enforcado ":0710 <K=K+1:p$="VIDEONEXT: ":0710 .p$="No proximo numero... ":0710 .100d:0490:1::0630v "REGISTRO DO NOME , 612:AA,BB,CC,DD,EE:aa=-2330J @"AA,BB:CC-AA,DD-BB,EE:3106 J60<,65A:-30,-19:8,18:1:9 ,7;"ESCREVE O TEU NOME";10 ,9 ;"NO TECLADO";11 ,8;"E PRIME ":n$ Tm9 ,7;" ";10 ,9 ;" ";11 ,8;" " ^J10 ,5;" ESTA BEM ESCRITO ? ";11 ,9 ;N$;" (S/N)" r="S"400 |d="N"10 ,5;" ";11 ,7;" ":330J  360h NN=1̱N$:N+23296[,N$(N):N:N+23296[,"":23296[,""  0530 38&,64@,38&,79O,-2,38&,79O,38&,100d,-1,38&,100d,44,,112p,-2,44,,112p,72H,114r,-1 72H,114r,94^,118v,-2,94^,118v,134,110n,-1,134,110n,165,116t,-2 165,116t,197,111o,-1,197,111o,222,107k,-2,222,107k,220,90Z,-1 Ž220,90Z,215,70F,-1,215,70F,190,63?,-2,190,63?,160,65A,-2 ̺160,65A,130,60<,-2,130,60<,115s,63?,-2,115s,63?,90Z,59;,-2,90Z,59;,60<,65A,-2 *-2,0,0,0,0 LETREIROS ROTATIVOS 240(:Y$="* PRIME UMA TECLA PARA CONTINUAR " e#0;1,0;1;5;1;Y$(32 ):.001wn,30:"""": TY$=Y$(2)+Y$(1):.0004uQX,45-:.0006vIQ,557:495  TEXTO :0630v:13 ,13 :22,0:0,30:-22,0:0,-30:11 ,0;" Poe em marcha o gravador " I=116:.04|# =,36$-I:I:150:11 ,0;" ":10 ,0;" estou carregando "''" VIDEOHARDWARE ":7:236066\,0:236077\,60<:0,0;"":"" NLEE LOS UDG X4:0610b:N=063?:A:"A"+N,A:N: b00,31,16,16,18,16,16,491,0,240,8,8,72H,8,8,204,80P,144,63?,32 ,63?,2,2,2,10 ,9 ,252,4,252,64@,64@,64@,2,4,4,8,8,568,121y,1,64@,64@,64@,64@,64@,64@,192,192,2,2,2,2,2,2,14,62>,64@,64@,124|,12 ,12 ,4,4,0 lHOMENZINHO v&N=302-1:8 t(N/2)=(N/2)17,N;" ";18,N;" ";19,N;" ":.01z# =,30:N:0660 Z17,N;" ";18,N;" ";19,N;" ":.01z# =,40(:N:0660  ENQUADRO AA,BB;P$:AA=(21-AA)*8-2:BB=BB*8-2:CC=P$*8+4:BB,AA:CC,0:0,12 :-CC,0:0,-12 :BB+1,AA-1:CC,0:0,12 : +BB=11 :P$="VIDEOLIST":0680: ON=1̱P$:K,32 -N;P$(N):.002xn,K*N/8:N:K=K+1: vaVLkPNo proximo numero... Y!* PRIME UMA TECLA PARA CONTINUAR ?CAR LIST |L]("$$$~$$~$$$~$$~$~~bd&F(D(Zz  >>> @8Dp| |8H~|>@ƒB<" >\),0:(23613=\+256*23614>\+1),0:6:6:31713{:""31714{ $-23675{\,88X:23676|\,127 $23658j\,8 $,236066\,0:236077\,123{ $ 9 $ 9000(# $nX=11 21:.003xD,X:X,0;3,X,0;7,3,X,16;7,:X $ %AP$="VAIS VER DE NOVO ESTA LICAO ? (S/N)":9300T$ %&"S"Ʀ"N"9510&% %0 ="S" %59450$: %: 9050Z# hg^$poi8PgNAO TE PREOCUPES SE TIVERESDIFICULDADE EM ENTENDER. SEGUEATENTAMENTE A EXPLICACAO DE'IN' E 'OUT'.S.W TECLA PARA CONTINUAR PRIME UMA3CAR HARD {t* $$$~$$~$$$~$$~$~~bd&F(D(Zz  >>> @8Dp| |8H~|>@ƒB<" >Áπbꢦ??χ&l7"W8kZl-L 2?Hp<(\$(08pp!?HȀLEN , *  EDICOES LATINAS * Zf(23613=\+256*23614>\),0:(23613=\+256*23614>\+1),0 _"31969":z=ç:u=::"23609","20":"23658","8":"""31970":"23606",z:"23607","124":ڰ"7":z::ڰ"8":u;"10",z;" PARA O GRAVADOR ":I=Z̰"10":װ".01","I*5":I d%ٰ"9":CEN=Z:OP=U:"100":a="127" i"23296"=a"160" n:"10","5";"ESCREVE O TEU NOME NO TECLADO E PRIME ":n$::"10","4";"ESTA BEM ESCRITO ? (S/N)";"6","15-N$/2";U;" ";N$;" " ="N""110" "S"130 .i=u̱n$+u+u:23295Z+i,(a+n$+a)(i):i .n$="":i="23297"̰"1e6":ian$=n$+¾i:i 3U="1":Z=U-U:RR="8150":TX="8330":IN="8400" !ٰ"9":VC=Z:a$=" LEN ":"8410" LtT$="A FUNCAO SERVE PARA AVE-RIGUAR O NUMERO DE CARACTERESQUE COMPOEM QUALQUER VALOR AL-FANUMERICO.":TX:RR ''':IN:T$="A DIFERENCA DA MAIORIA DAS OU-TRAS LINGUAGENS, NO ASVARIAVEIS ALFANUMERICAS NAODIMENSIONADAS NAO TEM UMA LON-GITUDE CONSTANTE.":TX [''':T$="VISTO QUE ESTAS SE ADAPTAM PA-RA CONTER,EXACTAMENTE A INFOR-MACAO INDICADA.":TX 0RR:IN:ڰ"6";"LET A$=""";ڰ"0";"X";ڰ"6";"""" A':T$="A$ CONTEM UNICAMENTE QUAN-DO MEDE <1> CARACTER.":TX @3'''" ";ڰ"6";"LET A$=""";ڰ"0";"BASIC";ڰ"6";"""" r^':T$="A$ CONTEM , PALAVRACOMPOSTA DE 5 LETRAS; QUANDOMEDE <5> CARACTERES.":TX .'''" ";ڰ"6";"LET A$=""";ڰ"0";N$;ڰ"6";"""" ]':T$="NESTE CASO A$ CONTEM O TEUNOME. PODERIAS DIZER-ME QUALE A SUA LONGITUDE ?":TX WU;" PRIME AO TERMINAR",Z,Z;Z;I$:I$<480ůI$>5791800 MI$=N$"20",U;U;" E X A C T O !!! ":U,U:"100":"1860" 0zIN:''''':T$="NAO, "+N$+"":TX:T$="O TEU NOME ESTA COMPOSTO DE "+N$:TX:T$="LETRAS, PORTANTO A$ MEDE "+N$+".":TX DHrr:IN:t$="NESTE CASO NAO PODE CON-TER NENHUM CARACTER...":TX: X''" ";6;"LET A$=""""" b'':T$="...A SUA LONGITUDE E SIMPLES-MENTE<0> (CADEIA NULA). ":TX:''':T$="ISTO OCORRE TAMBEM QUANDO,COMO CONTESTACAO A UM ALFANUMERICO SE PRIME DIRECTA-MENTE A TECLA ENTER, SEM TERINDICADO ALGUM OUTRO CARACTER.":TX:RR lIN:T$="A FUNCAO PODE SER USADATAMBEM COMO CONSTANTE ALFANU-MERICA:":'':TX:'''" ";ڰ"6";"PRINT LEN ""PORTUGAL""":'''" ";ڰ"6";"LET X=LEN """+N$+"""" *''':T$="...E ASSIM SUCESSIVAMENTE.":TX RR:IN:"8070":I"1000" `A$=" TO - DIVIDIDO":"8410":T$="A E UMA FUNCAOESPECIAL QUE PERMITE ACEDER APOSICOES CONCRETAS, NO AMBITODOS VALORES ALFANUMERICOS.":TX:RR IN:'''':T$="CONTUDO ATE AGORA AS VARIAVEISE CONSTANTES ALFANUMERICAS TEMSIDO TRATADAS COMO ENTIDADESUNICAS E INDIVISIVEIS, MAS EPOSSIVEL ACEDER AS DIVERSASPOSICOES QUE A COMPOM POR MEIODE DE CADEIAS.":TX:RR hIN:"2","8";U;" 1 2 3 4 5 ":"3","8";:I=Ṵ"5":I;" ";"BASIC"(I);" ";:װ".1","20-I*2":I ''':T$="PARA DIRECCIONAR UMA DETERMI-NADA POSICAO, E SUFICIENTE IN-DICA-LA ENTRE PARARENTESIS,DEPOIS DO NOME DA VARIAVEL:":TX V':I=Ṵ"5":'" ";ڰ"I";"A$(";I;")";ڰ"6";" corresponde a ";ڰ"2";"BASIC"(I):U,I:I wRR:IN:''''':T$="TAMBEM E POSSIVEL DIRECCIONARUM GRUPO DE CARACTERES, ESPE-CIFICANDO O PRIMEIRO E O ULTI-MO:":TX lRR:IN:"2","8";U;" 1 2 3 4 5 ":"3","8";:I=Ṵ"5":I;" ";"BASIC"(I);" ";:װ".1","20-I*2":I '''':I=Ṵ"4":'" ";ڰ"I";"A$(";"1423"(I);" TO ";"2445"(I);")";ڰ"6";" corresponde a ";ڰ"2";"BASIC"("1423"(I)̰"2445"(I)):U,I:I RR:IN:''':T$="E POSSIVEL OMITIR TANTO O IN-DICE DE SAIDA COMO DE CHEGADA.NESTE CASO CONSIDERAM-SE RES-PECTIVAMENTE IGUAIS A <1>; QUEE A LONGITUDE TOTAL DA CADEIA.":TX dRR:IN:ڰ"5";"PRINT A$( TO 3)"'':T$="... e equivalente a...":TX:''" ";ڰ"2";"PRINT A$(1 TO 3)" ҆''':T$="DADO QUE A$ MEDE <5>:":tx:'''" ";ڰ"5";"PRINT A$(2 TO )"'':T$="...equivale a...":tx:''" ";ڰ"2";"PRINT A$(2 TO 5)":RR ܻIN:T$="PARA INDICAR A CADEIA DESDE OPRINCIPIO ATE AO FIM, EM LU-GAR DE:":TX:T$="PRINT A$ ( TO )":':TX:'':T$="E POSSIVEL ESCREVER DIRECTA-MENTE:":TX:'':T$="PRINT A$()":TX 60<:'''':T$="DEPOIS DE TERES CHEGADO ATEAQUI, OS PARENTESIS PARECEM-TEINUTEIS !":TX:'':T$="NA REALIDADE NAO E ASSIM...":TX:RR IN:''':T$="QUANDO ASSIGNAS A UMA PARTE DEUMA VARIAVEL UM DETERMINADOVALOR, PODE OCORRER QUE ESTEULTIMO NAO TENHA EXACTAMENTE ALONGITUDE INDICADA PELOS INDI-CES.NESTE CASO O SPECTRUM COM-PORTA-SE ASSIM:":TX TRR:IN:"14","2";"A$= ";ڰ"5";" A B C D E F G ";"15","6";:I=Ṵ"7":ڰ"3+(I/2=(I/2))";" ";I;" ";:I:"20",U;U;"LET A$(24)=""BASIC""" v"2","9";U;" B A S I C ":U,"20":I="3"̰"13":I,"9";Z;" ";I+U,"9";U;" B A S ":װ".5",I:I RR:IN:"14","2";"A$= ";ڰ"5";" A B C D E F G ";"15","6";:I=Ṵ"7":ڰ"3+(I/2=(I/2))";" ";I;" ";:I:"20",U;U;"LET A$(25)=""OK""" f"2","9";U;" O K ":U,"20":I="3"̰"13":I,"9";Z;" ";I+U,"9";U;" O K ":װ".5",I:I O"14","9";:I=Ṵ"12":U;Z;ڰ"7";" O K "(I);:װ".05","I*2":I RR:IN:'''':T$="COMO TENS PODIDO CONSTATAR, SEO DADO A INTRODUZIR EXCEDE ALONGITUDE,E UTILIZADO PARCIAL-MENTE;SE E INSUFICIENTE INTER-CALAM-SE ESPACOS ATE SE CONSE-GUIR A LONGITUDE.":TX RR:IN:"8070":I"2400" @2Z:A$=" POE EM MARCHA O GRAVADOR ":"7":ڰ"7": JN=Z̰"29":װ".05","2*N" T2ٰ"4";"8",N;" @";"9",N;" ~|";"10",N;" \]" ^0N>"2"N<"29"1;"8",N;A$(N-2) hN rG8,30;" ";9 ,30;" ";10 ,30;" " | 7:"" 0I=Z:"7",U;:T$=" ESCOLHE, "+N$+":":"8330" |"11","6";"F FIM";"13","6";"I VOLTA AO PRINCIPIO";"15","6";"C PASSAR A PARTE";"16","6";" SEGUINTE"  ="F" ="I"I=U:  ="C"  "8090" 140(:t$=" PRIME UMA TECLA PARA CONTINUAR " /#Z;ڰ"6";U+U;U;U,Z;t$:.001wn,30 Ot$=t$(2)+t$(U):.0004uQX,45-:.0006vIQ,557:"""":  8160 ldA=Z:J=rc9999':F$(J,30)"%"F$(J,30)"#"A=A+U+(2F$(J,30)="&"):J mVC"10-a/2",U; n T$=F$(rc) v&"8330":T$(30)="#"rc=rc+u: {'F$(rc,30)="%"rc=rc+u:"8300" rc=rc+u:"8302" ڰ"8":U:U;:c=Z:N=U̱t$ +T$(N);:OPT$(N)" ".001wn,40( *OPT$(N)=".".1}L,30:8 "c=c+u:c=30c=Z:U;" "; N: ta=4:XL=248:YL=169:2::U+U,U;:3,3:a;XL,Z:a;Z,YL:a;-XL,Z:a;Z,-YL: چ"8400":"3","15-A$/2";A$:YL="11":XL="8*A$+16":"126-XL/2","142":XL,Z:Z,YL:-XL,Z:Z,-YL:U,-U:XL,Z:Z,YL:"13",U;: zu[t$eaN c A TO - DIVIDIDOTCOMO TENS PODIDO CONSTATAR, SEO DADO A INTRODUZIR EXCEDE ALONGITUDE,E UTILIZADO PARCIAL-MENTE;SE E INSUFICIENTE INTER-CALAM-SE ESPACOS ATE SE CONSE-GUIR A LONGITUDE.DCAR LEN |,"$$$~$$~$$$~$$~$~~bd&F(D(Zz  >>> @8Dp| |8H~|>@ƒB<" >\),0:(23613=\+256*23614>\+1),0 _"31969":z=ç:u=::"23609","20":"23658","8":"""31970":""f$():"23606",z:"23607","124":ڰ"7":z::ڰ"8":u;"10",z;" PARA O GRAVADOR ":I=Z̰"10":װ".01","I*5":I d%ٰ"9":CEN=Z:OP=U:"100":a="127" i"23296"=a"160" n:"10","3";"ESCREVE O TEU NOME NO TECLADO E PRIME ":n$::"10","4";"ESTA BEM ESCRITO ? (S/N)";"6","15-N$/2";U;" ";N$;" " ="N""110" "S"130 .i=u̱n$+u+u:23295Z+i,(a+n$+a)(i):i .n$="":i="23297"̰"1e6":ian$=n$+¾i:i  rc=u:pn=u L5A$="":i=u+ṵ"30":f$(rc,i)">"a$=a$+f$(rc,i):i V"i/2=(i/2)"a$=" "+a$ ~3rc=rc+u:"8410":vc=z:"8300":"8150":"8400" "8070":"1100" @2Z:A$=" POE O GRAVADOR EM MARCHA ":"7":ڰ"7": JN=Z̰"29":װ".05","2*N" T2ٰ"4";"8",N;" @";"9",N;" ~|";"10",N;" \]" ^0N>"2"N<"29"1;"8",N;A$(N-2) hN rG8,30;" ";9 ,30;" ";10 ,30;" " | 7:"" %"7",U;:T$="ESCOLHE, `:":"8330" }"11","6";"F FIM";"13","6";"I VOLTA AO PRINCIPIO";"15","6";"C PASSO P/A PARTE";"16","6";" SEGUINTE" Z$=:Z$="F" Z$="I"rc=PN: Z$="C"RC>73I"8000" Z$="C"PN=rc:  "8090" 1502:t$=" PRIME UMA TECLA PARA CONTINUAR " /#Z;ڰ"6";U+U;U;U,Z;t$:.001wn,30 Ot$=t$(2)+t$(U):.0004uQX,45-:.0006vIQ,557:"""":  8160 ldA=Z:J=rc9999':F$(J,30)"%"F$(J,30)"#"A=A+U+(2F$(J,30)="&"):J mVC"10-a/2",U; n T$=F$(rc) v4"8330":T$=30T$(30)="#"rc=rc+u: {'F$(rc,30)="%"rc=rc+u:"8300" rc=rc+u:"8302" c=Z:N=U̱t$ (T$(N)="%"8150:"8400":vc=u: T$(N)="`"T$=N$:"8330" T$(N)="&"'U''" ";: T$(N)="#"P="8": T$(N);:T$(N)=" "8380 .001wn,20 *OPT$(N)=".".1}L,35#:6 "c=c+u:c=30c=Z:U;" "; N: ta=4:XL=248:YL=169:2::U+U,U;:3,3:a;XL,Z:a;Z,YL:a;-XL,Z:a;Z,-YL: چ"8400":"3","15-A$/2";A$:YL="11":XL="8*A$+16":"126-XL/2","142":XL,Z:Z,YL:-XL,Z:Z,-YL:U,-U:XL,Z:Z,YL:"13",U;: ! t$:ñt$ !cenu;"16-t$/2"; ! "8330":"8450" !5J=U+a9 +a:j,u;6+(a=10 ),a$:j: ! A=U+U:J="26"̰"32"6:"28"-J/A,ER+J/A*.73333:J,Z:A,-A,/A:Z,-J*.73333,Z:-A,-A,-/A:-J,Z:-A,A,/A:Z,J*.73333:A,A,/A:J: zuc a. STR$ > A FUNCAO SERVE PARATRANSFORMAR UM VALOR NUMERICO,NO SEU CORRESPONDENTE ALFANU-MERICO.% %ESTA NECESIDADE SURGE QUANDO,POR EXEMPLO, E NECESSARIO REA-LIZAR OPERACOES COM OS CA-RACTERES QUE COMPOEM O MESMONUMERO, OU MELHOR, QUANDO SETEM QUE CONSTRUIR CADEIAS OUMATRIZES QUE CONTENHAM PORVEZ, INFORMACOES NUMERICAS EALFANUMERICAS (LISTAS TELEFO-NICAS, LISTAGENS, FICHAS, ETC ...).% %O RESULTADO QUE PROPORCIONA CONSISTE NA MESMASERIE DE CARACTERES QUE SAONECESSARIOS PARA IMPRIMIR UMNUMERO MEDIANTE , IN-CLUINDO (QUANDO EXISTEM) OSINAL E O PONTO DECIMAL.# #. VAL > A FUNCAO SERVE PARACALCULAR O VALOR DE UMA CADEIAOU UMA CONSTANTE ALFANUMERI-CA, TAL COMO FARIA COMUM ARGUMENTO PARECIDO.% %PORTANTO O ARGUMENTOPODE SER CONSTITUIDO, ALEMDE CONSTANTES NUMERI-CAS, POR SINAIS ARITMETICOSOUTRAS VARIAVEIS, FUNCOES, ETUDO AQUILO QUE E PERMITI-DO INTRODUZIR NUMA EXPRESSAO:&LET R=VAL"2*ABS Y+5"& &equivale a:& &LET R=3*ABS Y+5% % E UMA FUNCAO DE GRANDEPOTENCIA, QUE PERMITE OBTERRESULTADOS DIFICILISSIMOS DEALCANCAR POR OUTROS MEIOS. PO-DEM-SE ESCREVER ROTINAS NASQUAIS NAO VARIEM SOOS NUMEROS OU OS CARACTERES,MAS SIM SEQUENCIAS INTEIRAS DECALCULO. E TAMBEM POSSIVELESCREVER PROGRAMAS, NOSQUAIS DETERMINADAS EXPRESSO-ES NAO SEJAM DEFINIDAS A PRIO-RI, E ASSIM VAO-SE INTRODU-ZINDO UMA POR UMA MEDIANTE OTECLADO OU OUTRAS UNIDADES DEENTRADA.# #. VAL$ > E UMA FUNCAO DE MUITA UTI-LIDADE. EMPREGA-SE COM ARGUMENTOS DECADEIA, E SEU RESULTADO E OPROPRIO ARGUMENTO DESPROVIDODE UM PAR DE ASPAS(ASPAS DENTRO DE AS-PAS).% %SE A VARIAVEL A$ ESTA ARMAZE-NADA EM MEMORIA COMO:& &"""VIDEOBASIC""",AO EXECUTARVAL$ APARECERA COMO "VIDEO-BASIC".& & ASSIM, VAL$ SO PODE UTI-LIZAR ARGUMENTOS COM UM NUMEROIMPAR DE ASPAS, CASO CONTRARIOSURGIRA A MENSAGEM DE ERRO"NONSENSE IN BASIC".# # LeaNH 'l c JTTRANSFORMAR UM VALOR NUMERICO,A POE O GRAVADOR EM MARCHA :CAR STR$ | "$$$~$$~$$$~$$~$~~bd&F(D(Zz  >>> @8Dp| |8H~|>@ƒB<" > A FUNCAO SERVE PARATRANSFORMAR UM VALOR NUMERICO,NO SEU CORRESPONDENTE ALFANU-MERICO.% %ESTA NECESSIDADE SURGE QUANDO,POR EXEMPLO, E NECESSARIO REA-LIZAR OPERACOES COM OS CA-RACTERES QUE COMPOEM O MESMONUMERO, OU MELHOR, QUANDO SETEM QUE CONSTRUIR CADEIAS OUMATRIZES QUE CONTENHAM PORVEZ, INFORMACOES NUMERICAS EALFANUMERICAS (LISTAS TELEFO-NICAS, LISTAGENS,FICHAS,ETC.).% %O RESULTADO QUE PROPORCIONA CONSISTE NA MESMASERIE DE CARACTERES QUE SAONECESSARIOS PARA IMPRIMIR UMNUMERO MEDIANTE , IN-CLUINDO (QUANDO EXISTEM) OSINAL E O PONTO DECIMAL.# #. VAL > A FUNCAO SERVE PARACALCULAR O VALOR DE UMA CADEIAOU UMA CONSTANTE ALFANUMERI-CA, TAL COMO FARIA COMUM ARGUMENTO PARECIDO.% %PORTANTO O ARGUMENTOPODE SER CONSTITUIDO, ALEMDE CONSTANTES NUMERI-CAS, POR SINAIS ARITMETICOSOUTRAS VARIAVEIS, FUNCOES, ETUDO AQUILO QUE E PERMITI-DO INTRODUZIR NUMA EXPRESSAO:&LET R=VAL"2*ABS Y+5"& &equivale a:& &LET R=3*ABS Y+5% % E UMA FUNCAO DE GRANDEPOTENCIA, QUE PERMITE OBTERRESULTADOS DIFICILIMOS DEALCANCAR POR OUTROS MEIOS. PO-DEM ESCREVER-SE ROTINAS NASQUAIS NAO VARIEM SOOS NUMEROS OU OS CARACTERES,MAS SIM SEQUENCIAS INTEIRAS DECALCULO. E TAMBEM POSSIVELESCREVER PROGRAMAS, NOSQUAIS DETERMINADAS EXPRES-SOES NAO SEJAM DEFINIDAS APRIORI, ASSIM VAO-SE INTRODU-ZINDO UMA POR UMA MEDIANTE OTECLADO OU OUTRAS UNIDADES DEENTRADA.# #. VAL$ > E UMA FUNCAO DE MUITA UTI-LIDADE. EMPREGA-SE COM ARGUMENTOS DECADEIA, E SEU RESULTADO E OPROPRIO ARGUMENTO DESPROVIDODE UM PAR DE ASPAS(ASPAS DENTRO DE AS-PAS).% %SE A VARIAVEL A$ ESTA ARMAZE-NADA EM MEMORIA COMO:& &"""VIDEOBASIC""",AO EXECUTARVAL$ APARECERA COMO "VIDEO-BASIC".& & ASSIM, VAL$ SO PODE UTI-LIZAR ARGUMENTOS COM UM NUMEROIMPAR DE ASPAS, CASO CONTRARIOSURGIRA A MENSAGEM DE ERRO"NONSENSE IN BASIC".# # IN OUT I! Zf(23613=\+256*23614>\),0:(23613=\+256*23614>\+1),0 _"31969":z=ç:u=::"23609","20":"23658","8":"""31970":""F$():"23606",z:"23607","124":ڰ"7":z::ڰ"8":u;"10",z;" PARA O GRAVADOR ":I=Z̰"10":װ".01","I*5":I d%ٰ"9":CEN=Z:OP=U:"100":a="127" i"23296"=a"160" n:"10","3";"ESCREVE O TEU NOME NO TECLADO E PRIME":n$::"10","4";"ESTA BEM ESCRITO ? (S/N)";"6","15-N$/2";U;" ";N$;" " ="N""110" "S"130 .i=u̱n$+u+u:23295Z+i,(a+n$+a)(i):i .n$="":i="23297"̰"1e6":ian$=n$+¾i:i 9ٰ"9":U="1":Z=U-U:RR="8150":TX="8330":IN="8400" (RC=U:A$=" OUT ":"8410":"8300":RR l: Z:z,"137":"255",z:z,"96":"255",z:"6",z;ڰ"5";"5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 ":'u;" ----- D I R E C C O E S -----", bz,"69":"134",z:z,"-35":"-134",z:"14",Z;ڰ"5";"7 6 5 4 3 2 1 0 ":'u;"-- D A D O S --" Va:a"2"N<"29"1;"8",N;A$(N-2) hN rG8,30;" ";9 ,30;" ";10 ,30;" " | 7:"" /I=Z:"7",U;:T$="ESCOLHE, "+N$+":":"8330" }"11","6";"F FIM";"13","6";"I VOLTA AO PRINCIPIO";"15","6";"C PASSO P/A PARTE";"16","6";" SEGUINTE"  ="F" ="I"I=U:  ="C"  "8090" 't$=" PRIME UMA TECLA PARA CONTINUAR " /#Z;ڰ"6";U+U;U;U,Z;t$:.001wn,30 Ot$=t$(2)+t$(U):.0004uQX,45-:.0006vIQ,557:"""":  8160 ldA=Z:J=rc9999':F$(J,30)"%"F$(J,30)"#"A=A+U+(2F$(J,30)="&"):J mVC"10-a/2",U; n T$=F$(rc) v&"8330":T$(30)="#"rc=rc+u: {'F$(rc,30)="%"rc=rc+u:"8300" rc=rc+u:"8302" ڰ"8":U:U;:c=Z:N=U̱t$ (T$(N)="%"8150:"8400":vc=u: T$(N)="&"'U''" ";: T$(N)="#"P="8": T$(N);:T$(N)=" "8385 +OPT$(N)=".".1}L,30:20 .001wn,25 "c=c+u:c=30c=Z:U;" "; N: ta=4:XL=248:YL=169:2::U+U,U;:3,3:a;XL,Z:a;Z,YL:a;-XL,Z:a;Z,-YL: ڌVC=Z:"8400":"3","15-A$/2";A$:YL="11":XL="8*A$+16":"126-XL/2","142":XL,Z:Z,YL:-XL,Z:Z,-YL:U,-U:XL,Z:Z,YL:"13",U;: zuWGA INSTRUCAO SERVE PA- RA ENVIAR UM BYTE DE DADOS AQUALQUER DIRECCAO DO PORT,PRESUMIVELMENTE CONECTADO AUMA UNIDADE I/O (ENTRADA/SA-IDA).% %LEMBRAS-TE QUE A CPU DISPOEDE NUMEROSAS LINHAS PARASE COMUNICAR COM O EXTERIOR:16 DE DIRECCIONAMENTO, 8 PARAOS DADOS, E OUTRAS MAIS... %A INSTRUCAO& &OUT iiii,dd& &ESTABELECE AS LINHAS DE DIREC-CIONAMENTO SEGUNDO O CODIGOBINARIO (UMA POR BIT), CORRES-PONDENTE A , E AS DEDADOS
. VEJAMOS DUAS LINHAS: UMADENOMINADA (I/O RE-QUEST) QUE SIGNIFICA: PEDIDOA UNIDADE PERIFERICA; E OUTRADENOMINADA (WRITE) QUESIGNIFICA: ESCRITURA.% %ESTAS DUAS LINHAS SAO ACESSI-VEIS ATRAVES DO CONECTOR PLANODE 52 CONTACTOS, SITUADO PORTRAS DO .# #A FUNCAO CONSTITUI OCOMPLEMENTO NATURAL DE .ESTA DEVOLVE O VALOR LIDONO PORT ESPECIFICADO PELOARGUMENTO NUMERICO. DEPOIS, ESTE VALOR SERA UTI-LIZADO SEGUNDO A NECESSIDADE.%AS MODALIDADES DE EXECUCAOSAO AS MESMAS, COM A DIFE-RENCA DE QUE , NO LUGARDA LINHA , ACTIVA ALINHA (READ) QUE SIGNIFI-CA . DEPOIS, DEVERASER O DISPOSITIVO PERIFERICOA ESTABELECER AS LINHAS DEDADOS.% %ALGUMAS UNIDADES DE ENTRADA/SAIDA, ESTAO SITUADAS NOINTERIOR DO SPECTRUM E PO-DEM-SE UTILIZAR IMEDIATAMEN-TE. ESTAS REFEREM-SE AOPORT 254 E SAO:& &* TECLADO; * CONECTOR (BIT 6 ENTRA-DA/BIT 4 SAIDA); * CONECTOR (BIT 3). ATENCAO: O PORT 251 UTILIZA-SEPARA A , O PORT247 E TAMBEM O 239 SERVEM PA-RA DISPOSITIVOS COM O INTER-FACE 1.% %JA VISTE A PARTICULAR IMPOR-TANCIA USADA COM O TE-CLADO, POSTO QUE PERMITE AVE-RIGUAR A PULSACAO SIMULTANEADE VARIAS TECLAS, MAS RECORDA--TE QUE TANTO AS LINHAS DE DI-RECCIONAMENTO COMO AQUELASDE DADOS, SE ACTIVAM QUANDOTEM UM NIVEL BAIXO; PORTANTOUMA TECLA ACTIVADA SITUA-SEEM <0> E NAO EM <1> O BIT COR-RESPONDENTE.# #eaN  'l c JT ESCOLHE, :A POE O GRAVADOR EM MARCHA CAR |рm"$$$~$$~$$$~$$~$~~bd&F(D(Zz  >>> @8Dp| |8H~|>@ƒB<" > SERVE PA- RA ENVIAR UM BYTE DE DADOS AQUALQUER DIRECCAO DO PORT,PRESUMIVELMENTE CONECTADO AUMA UNIDADE I/O (ENTRADA/SAI-DA).% %LEMBRAS-TE QUE A CPU DISPOEDE NUMEROSAS LINHAS PARASE COMUNICAR COM O EXTERIOR:16 DE DIRECCIONAMENTO, 8 PARAOS DADOS, E OUTRAS MAIS... %A INSTRUCAO& &OUT iiii,dd& &ESTABELECE AS LINHAS DE DIREC-CIONAMENTO SEGUNDO O CODIGOBINARIO (UMA POR BIT), CORRES-PONDENTE A , E AS DEDADOS
. VEJAMOS DUAS LINHAS: UMADENOMINADA (I/O RE-QUEST) QUE SIGNIFICA: PEDIDOA UNIDADE PERIFERICA; E OUTRADENOMINADA (WRITE) QUESIGNIFICA: ESCRITURA.% %ESTAS DUAS LINHAS SAO ACESSI-VEIS ATRAVES DO CONECTOR PLANODE 52 CONTACTOS, SITUADO PORTRAS DO .# #A FUNCAO CONSTITUI OCOMPLEMENTO NATURAL DE .ESTA DEVOLVE O VALOR LIDONO PORT ESPECIFICADO PELOARGUMENTO NUMERICO. DEPOIS, ESTE VALOR SERA UTI-LIZADO SEGUNDO A NECESSIDADE.%AS MODALIDADES DE EXECUCAOSAO AS MESMAS, COM A DIFE-RENCA DE QUE , NO LUGARDA LINHA , ACTIVA ALINHA (READ) QUE SIGNIFI-CA . DEPOIS, DEVERASER O DISPOSITIVO PERIFERICOA ESTABELECER AS LINHAS DEDADOS.% %ALGUMAS UNIDADES DE ENTRADA/SAIDA, ESTAO SITUADAS NOINTERIOR DO SPECTRUM E PO-DEM UTILIZAR-SE IMEDIATAMEN-TE. ESTAS REFEREM-SE AOPORT 254 E SAO:& &* TECLADO; * CONECTOR (BIT 6 ENTRA-DA/BIT 4 SAIDA); * CONECTOR (BIT 3). ATENCAO: O PORT 251 UTILIZA-SEPARA A , O PORT247 E TAMBEM O 239 SERVEM PA-RA DISPOSITIVOS COM O INTER-FACE 1.% %JA VISTE A PARTICULAR IMPOR-TANCIA USADA COM O TE-CLADO, POSTO QUE PERMITE AVE-RIGUAR A PULSACAO SIMULTANEADE VARIAS TECLAS, MAS RECORDA--TE QUE TANTO AS LINHAS DE DI-RECCIONAMENTO COMO AQUELASDE DADOS, SE ACTIVAM QUANDOTEM UM NIVEL BAIXO; PORTANTOUMA TECLA ACTIVADA SITUA-SEEM <0> E NAO EM <1> O BIT COR-RESPONDENTE.# #LEN EXER 0 f(23613=\+256*23614>\),0:(23613=\+256*23614>\+1),0 "31969":z=ç:u=::"23609","20":"23658","8":"""31970":"23606",z:"23607","124":ڰ"7":z::ڰ"8":u;"10",z;" PARA O GRAVADOR ":I=Z̰"10":װ".01","I*5":I dCEN=Z:OP=U:"100":a="127" i"23296"=a"160" n:"10","3";"ESCREVE O TEU NOME NO TECLADO E PRIME ":n$::"10","4";"ESTA BEM ESCRITO ? (S/N)";"6","15-N$/2";U;" ";N$;" " ="N""110" "S"130 .i=u̱n$+u+u:23295Z+i,(a+n$+a)(i):i .n$="":i="23297"̰"1e6":ian$=n$+¾i:i /I=U:PN=U:A$=" LEN - TO - DIVIDIDO":"8410" $ "8500" ~"8075":E"1000" @/A$="POE O GRAVADOR EM MARCHA":"7":ڰ"7": JN=Z̰"29":װ".05","2*N" T2ٰ"4";"8",N;" @";"9",N;" ~|";"10",N;" \]" ^0N>"2"N<"29"1;"8",N;A$(N-2) hN rG8,30;" ";9 ,30;" ";10 ,30;" " | 7:""  "8150" 9"8400":7,U;:T$="ESCOLHE, "+N$+":":8330 E=Z:11 ,6;"F FIM";13 ,6;"E EXERCICIOS";15,6;"C PASSO P/A PARTE";16,6;" SEGUINTE"  ="F" ="E"I=PN:E=U: ="C"I=I+U:PN=I:  8090 't$=" PRIME UMA TECLA PARA CONTINUAR " /#Z;ڰ"6";U+U;U;U,Z;t$:.001wn,30 Ot$=t$(2)+t$(U):.0004uQX,45-:.0006vIQ,557:"""":  8160 l"u'u;:I=I9999':T$=F$(I) v%8330 :n<31T$(N)="" I c=Z:N=U̱t$ "T$(N)="%"8150:"8400": T$(N)="}"'U''" ";: .T$(N);:OPT$(N)" ".001wn,40(:U *OPT$(N)=".".1}L,30:9 "c=c+u:c=30c=Z:U;" "; N: ta=4:XL=248:YL=169:2::U+U,U;:3,3:a;XL,Z:a;Z,YL:a;-XL,Z:a;Z,-YL: ڱ"8400":"3","15-A$/2";A$:YL="11":XL="8*A$+16":"124-XL/2","142":XL,Z:Z,YL:-XL,Z:Z,-YL:U,-U:XL,Z:Z,YL:5,5;"exemplos e exercicios";8,U;: ! t$:ñt$ !cenu;"16-t$/2"; ! "8330":"8450" !5J=U+a9 +a:j,u;6+(a=10 ),a$:j: ! A=U+U:J="18"̰"24"6:208-J/A,ER+J/A*.73333:J,Z:A,-A,/A:Z,-J*.73333,Z:-A,-A,-/A:-J,Z:-A,A,/A:Z,J*.73333:A,A,/A:J: !4 INTER !9-CEN=Z:"9400":"14",U;:"8450":"8150" !>Aa$=" ":"8400":ڰ"4";"4","91":ڰ"4";"246",z !4a="10":"8470":a=Z:"8470":T$:t$="""8740" !:"5","15-t$/2";:"8330":I=Z̰"50"Ͱ"5":װ".01",I:I !"14",U;:"8450" " "8150" " "8600" "$u,u;:T$="AGORA, "+N$+"":"8330":"3",u;:T$="PROPONHO-TE UM NOVO TESTE: UTILIZA O TECLADO COMO JAAPRENDESTE EM LICOES ANTE-RIORES, E ESCREVE AS INSTRU-COES PEDIDAS.":"8330" "`"8150":cen=u:"8470":ER=Z "e "9530" "j b$:ñB$ "t"14",u;:"8450" "#u+U,u;ٰ"6";b$;:x="23688/2-U" " i=u̱b$ "b$(i)=""B$(I)=""x=x+u "ER="9"c$=b$(i):"9040" #(B#z;z,z;u;"K":z:c$=¾"23560":C$=°"14""23617",U:"9000" #-C$<" ""9000" #2%"":i=uC$<""C$=(C$+165) #4+I>UB$(I-U)=""C$<""C$=(C$+"165") #nh"23617",Z:"5",x;a$(̰"(10X<21)+(30-X)*(X>20)"):c="(*3+2)"i=u:c=uj=ux:"5",j;U;" ";c$; #s3c="2"j=u+(ER="9")̰"4":j,u,a$;j+u,x;U;c$; #xKc="3"u+U,u;ٰ"6";c$;:j="23688-2"x-u:"5",j;U;c$;z;" ";°"8"; #}/c="4"j="9"̰"6"-u:j,u,a$;j-u,x;U;c$; #U:j #c$b$(i)u;"9","10";"ERRO !";"5",X;C$:U,"-18":"50":er=er+u:er<"3""9","7";U;"TENTA DE NOVO !":"50":װ".1","20":"9","7",A$:"9000" #Wer="3""8470":U,U;7;U;"ESTA E A INSTRUCAO EXACTA:":er="9":"8860" #X="33-23688" #.1}L,i*3 #ERɰ"9"ER=Z #Li:er"9","11";u;"EXACTO !":"8150":J=Ṵ"20":J,U;J="10",A$:J #LEr"100":"8","10";"OUTRA VEZ !":װ".5","32":"8470":ER=Z:"8850" # "8810" $ D A T A  $W"...E AGORA, ALGUM EXEMPLO DEUSO PRACTICO SOBRE A FUNCAO E A .","" %"LET X=LEN A$","ESTA E A FORMA MAIS COMUM DEUSAR A FUNCAO . A VA-RIAVEL NUMERICA CONTEMO COMPRIMENTO DA CADEIA .","" %!^"PRINT LEN (A$+B$)","ESTA INSTRUCAO IMPRIME ASOMA DOS COMPRIMENTOS DE E .","" %&"LET X=LEN (""BASIC""+"" ""+C$)","E POSSIVEL USAR COMO ARGU-MENTO QUALQUER EXPRESSAO QUEDEVOLVA VALORES ALFANUMERI-COS.","" %(m"PRINT A$(3 TO 5)","ESTA INSTRUCAO IMPRIME OSCARACTERES DAS POSICOES3, 4, E 5 DA CADEIA A$.","" %*e"LET A$=""ABCD""(2)","A FRAGMENTACAO TAMBEM TRATACONSTANTES. NO EXEMPLO A$VALE ""B"".","" %+"LET A$(R/2)=A$((X+Y) TO)","ACEITA TAMBEM EXPRESSOES DEUMA CERTA COMPLEXIDADE. MASE NECESSARIO QUE OS INDICESNAO SUPEREM O COMPRIMENTO DASRESPECTIVAS CADEIAS.","" %0b"LET A$=A$(2)","E AQUI UM SISTEMA SIMPLESPARA USAR PARTE DOS CARACTERESDA CADEIA .","" %4"LET A$()=""BASIC""","SUPONDO QUE A$ TENHA DECOMPRIMENTO<3> CARACTERES, DE-POIS DESTA INSTRUCAO TERA TO-DAVIA, UM COMPRIMENTO DE <3>,E CONTERA .","" %5"" %: INTER %D8"A$","IMPRIME O COMPRIMENTO","DA CADEIA .","" %N?"A$(1)","IMPRIME O PRIMEIRO CARACTER","DA CADEIA .","" %XH"A$=B$(B$)","POE COM O ULTIMO","CARACTER DA CADEIA ","" %]H"A$(5)","IMPRIME OS 5 PRIMEIROS CARAC-","TERES DA CADEIA ","" %bK"A$(A$-5)","IMPRIME OS 6 ULTIMOS CARAC-","TERES DA CADEIA ","" %l_"""BASIC""(I)","IMPRIME O CARACTER DA","PALAVRA INDICADO","PELO INDICE ","" %vW"""BASIC""(24)","IMPRIME TOMANDO OS","CARACTERES DA PALAVRA","","" &G"" &H,*"M";1;"LENTO":*"M";1;"LENTO" zu"eaNc A !BA$TxC CAR LEN |"$$$~$$~$$$~$$~$~~bd&F(D(Zz  >>> @8Dp| |8H~|>@ƒB<" >