You are on page 1of 183

COMO USA t====-= SUO

COLEc;Ao MSX

COMO USA SEU HOTBI

LUIZ TARC(SIO DE CARVALHO JR. PIERLUIGI PIAZZI

ROBERTO WATANABE

RENATO DA SILVA OLIVEIRA

SHARP

® 1987 Editora ALEPH

EXPEDIENTE

Cocrdenaeao Editorial Coordenacao Dldatica €ditorar,:ao

Ar1e

Produr,:ao

Pierluigl Piau! Betty Fromer Piazzi

L. Tarcisio de Carvalho Jr. Ana Lucia Antico

Rosa K. Fromer

ALEPH

Publtcacdes e Ass. Pedagogica Ltda. C.P. 20.707 CEP 01498

Sao Paulo SP

Tel: (011) 813·2033

EPCOM

Equipamentos Eletronlcos Ltda.

R. Jose Carlos de Macedo Soares sin Bloco B • Pavilhao 11

Tabeao da Serra SP

Dados de Cataloqacao na Publlcacao (CIPl Internacional (Camara Brastletra do Livro, SP, Brasil]

87·0985

COD·001,64

C329c

Carvalho Junior, Luiz Tarcisio de, 1955-

Como usar seu HOTBIT I l.uiz Tarclsio de Carvalho Jr .. , Jet al.] , - Sao Paulo : Aleph, 1987.

[Colecao MSX)

1, HOTBIT [Computadoresl 2, MSX (Computadores) l. Titulo.

Indices para cataloqo sistematico:

1. HOTBIT : Computadores : Processamento de dados 001.64 2, MSX : Computadores : Processamento de dados 001,64

SUMARIO

Capitulo 1

COMO INSTALAR SEU HOTBIT 007

Capitulo 2

HOTBIT E SEUS APLICATIVOS . . . . . . . . . . . . . . . . . . . . .. 019

Capitulo 3

INTRODUCAO AO HOT-LOGO 027

Capitulo 4

INTRODUCAO AO HOT BASIC............ ...... 079

Capitulo 5

HOT DATA - Gerenciador de Dados

132

Capitulo 6

HOT PLAN - Planilha de Calculos .

Capitulo 7

HOT WORD - Processador de Textos

Ap~ndice I

149

155

Como Usar a Gravador Cassete Apendice II

Caracteres do HOTBIT 172

166

Apendice III

Mensagens de Erro ..... . . . . . . . . . . . . . . . . . . . . . . . . . .. 176

Apendice IV

Funcoes Matemattcas Apendice V

Usa da Impressora 182

180

COMO INSTALAR SEU HOTBIT

Para que seu HOTBIT esteja instalado e pronto para usa e indlspensavel a leitura cuidadosa deste capitulo. Com isso voce evltara danas ao aparelho e pod era utiliza-lo adequadamente.

Inicialmente um canselha: NAO L1GUE 0 HOTBIT NA TOMADA antes de completar aleitura destas instrucdes passa a paSSD.

PRIMEIRO PASSO: DESEMBALAGEM

Retire 0 aparelho da caixa (figura 1.1] manuseando-o com cuidado para que nao caia e nem receba pancadas. Verifique se todos os itens relacionadas na fjgura estao presentes. Voce esta recebendo um verdadeiro sistema de cornputacao e nao uma simples rnaquina. Se faltar algum item reclame imediatamente com 0 revendedor.

Figura 1.1 - Relar;ao dos componentes.

$-~

Cabo RF

'"baa

-- __ Cabo do Gravador

Manual do Usuario

Manual de Basic

7

SEGUNDO PASSO: RECONHECIMENTO

Segurando 0 HOTBIT com cuidado olhe para as fiquras seguintes para se farniliarizar com as pr.incipais conectores e interruptores.

Lembre-se: e um habjto bern braslleiro nao se ler os folhetos e manuais de Instrucoes. Nesse caso, porem, nao se trata de urn simples radinho ou video-game: voce esta lidando com um microcomputador, equipamento que exige urn processo de aprendizagern par parte do usuarro para que possa ser utllizado a contento ..

Figura 1.2 - Parte Superior

SLOT - conector para cartuchos (jogos. programas. expans6es. etc.)

CD

r

8

TECLADO

"'----_ CAPS - lampada que indica quando a trava de malesculas (CAPS LOCK) esta ativada.

'-----FONTE - lilmpadaque indica quando 0 computador esta em funcionamento.

Figura 1 J - Parte Trasei ra

CABO DE ALiMENTACAO (nao Ilgue na tornadal)

CONECTOR DE RF

(para ligar na anlena de uma TV)

CONECTOR DE VIDEO

(para ligar num monitor de video)

Figura 1 ,4 - Vistas Laterais

CONECTOR DE IMPRESSORA lparale!a CENTRONICS)

CONECTOR PARA GRAVADOR [para ligar num gravador cassete}

CON ECTOR DE AUDIO

(para ligar no terminal de um monitor de TV ou num amplificador de alta fidelidade)

c::::::::1 'T )

CHAVE INTERRUPTORA [Iiga-desliga)

{~I= ~?J

RESET - Lirnpa 0 conteudo da memoria Tampa do segundo SLOT

Figura 1 5 - Vista Frontal

CON ECTOR DO JOYSTICK 1 L- __ - CQNECTOR DO JOYSTICK 2

9

Figura 1.6 - Parte Inferior CHAVE SELETORA DE VOLTAGEM

[poslclone-a conforme a tensao local: 120 V

ou 220 V mas Olinda NAO L1GUE 0 COMPUTADOR NA rOMADA!

CHAVE PBICOR~

--_...,--

---

---

---

---

CHAVE SELETORA DO CANAL DE SAiOA DO RF

[canal 3 OLi 4 da TV)

TERCEIRO PASSO: LOCALIZACAO DO MICRO

!:: Nao manipule seu micro com violencia. subrnetendo-o a choques ou vibr acoes. Nao coloque objetos pesados sobre ele. ;;: Nao instale seu micro em local muito quente, (imido, com poeira au onde bata sol.

;;: I nsta I e seu rn iero longe de tortes ; nte r+erenc ias el etromaqneticas, especialmente se for usar urn gravador cassete para ler e arrnazenar proqra-nas Sao fontes de interferencia: bobinas e enrolarnentos eletricos como os encontrados em reatores de larnpadas fluorescentes, motores eletricos. aparelhos de TV, transformadores. Imas fortes, al to-falantes, etc.

o proprio micro tern, em seu interior, um mini- transmis-

sor de TV que pode ser regulado no canal 3 ou 4. Esse transrnissor pede causar interferencia em um aparelho de radio ou de TV. se estiverem muito pr6ximos.

!;: Verifique a tensao da rede (120 V au 220 VJ e regule a chavinha na parte interior do micro (fig. 1.6) antes de liqa-Io na tomada.

Em funcionamento 0 micro consome uma potencia de 24 watts.

10

QUARTO PASSO: CONEXAO A UM TELEVISOR COMUM

Seu HOTBIT pode ser ligado a urn televisor cornurn, a cores ou preto e branco.

Procure escolher urn canal que nao seja usado em sua cldade e sintonize 0 televisor nesse canal (3 ou 4), usando 0 seletor de canais do televisor. Coloque a chave seletora situada na parte inferior do micro (fig. 1.6) no canal correspondente e ligue os cabos conforme a figura 1.7.

Figura 1.7 - Uga<;:ao do HOTBIT aos termlnais de antena da TV com flo paralelo.

PARA 0 COMPUT ADOR

ANTENA TIPO FlO PARALELO [300 m

~,

~--..::::

:--.....::;:-.::::-.____...J

TERMINAlS DE ANTENA DA TV

o 0

lUI., .J

rVNfl

Dessa torma, comutando-se a chave de antena, 0 televisor pode receber tanto a proqrarnacao comum quanto 0 sinal emitido pelo pequeno transmissor do micro (no canal 3 ou 4 conforme a escol ha feita anteriormente).

Se a sua antena nao tern um fio paralelo tipo "talharini M (300 OJ mas urn cabo coaxial .. rollco", voce precisa de um "baleen" conversor para ligar a antena externa a chave seletora (figura 1.8).

Se voce conectou seu HOTBIT a urn televisor como foi descrtto, pode pular 0 quinto e passar a ler 0 sexto passo.

11

Figura 1, B - Ugacao do HOT81T aes tsrrnlnals de antena da TV com cabo coaxial.

TERMINAlS DE ANTENA DA TV

~--ANTENA TlPO CABO COAXIAL (75 m

CONVERSOR "BALOON" DE CABO COAXIAL A FlO PARALELO

QUINTO PASSO,: CONEXAO A UM MONITOR DE VIDEO

Se voce tern urn monitor de video ou urn televisor comum preparado para funclonar como monitor, ha outra saida do HOlBIT que voce deve utilizar: V'IDEO.

Dessa forma, ligando pelo cabo de video, 0 terminal VIDEO com 0 VIDEO IN de seu monitor. voce obtera urna imagem de alta qualidade. Para obter a sorn voce conectara, com urn cabo extra, a saida AUDIO do HOTBIT com 0 AUDIO IN do monitor (figura 1.9).

Figura 1 9 - Ligaciio do HOTBIT a urn monitor de video.

--

AUDIO

12

Se 0 seu monitor nao tern entrada de audio, voce pode conectar a salda A.UDIO do HOTSIT com 0 arnplificador de seu equlpamento de sorn.

Ligar 0 HOTBIl num monitor de video implica numa melhor qualidade de imagem. Analisando a figura 1.10, note que 0 sinal gerado pelo computador sofre rnenos "processamento", ficando livre de lima serie de possiveis tnterferenclas.

Figura 1.10 - A diferanca entre urn sinal de video e de RF.

MONITQR

SINAL DE [ . r=71

._VI_O_EO _ __..t-----t vIDEO--_VIDEO IN ..__ ~ __ . _ . .;;,y.

RF

DEMODULACAO DE RF PASSANDO PARA SINAL DE VIDEO

MObULACAO EM RF lcenal 3 au 4) I---I-+-----t

Quando voce se familiarizar mais com seu HOTSIT podera inclusive fazer urna serie de expertencias com um gravador de vi d eo-ca ssete.

SEXTO PASSO: USANDO 0 TECLADO

Agora voce pode ligar seu HOTSIT na tomada.

Ao ligar seu HOTBIT a tela de TV (au seu monitor) surge a mensagem da figura 1. 11.

Figura 1.11 - A prlmerra tela do HOTBIT.

HOTBIT

MSX 8R

EPCOM [Z_F.MANAUSJ 1985

13

A seguir. a tela muda para 0 que e mostrado na figura 1 .12.

Figura 1.12 - A segunda tela do HOTBIT.

HOT-BASIC V1.2

EPCOH [Z.F.HANAUSJ 1985 Me ... Livre 28815

Ok

Util ize essa segunda tela para ajustar a sintonia e 0 contraste de sua TV.

Apenas para voce se fami liarizar com 0 teclado, pressione a teela da letra A. 0 quadradinho abaixo do Ok (chamado cursor) se desloca de uma posicao e a letra A aparece no video (flgura 1.13).

Figura 1.13 - Pressione a tecla A.

OJ



HOT-BASIC V1.2

EPCOM [Z.F.HANAUSJ 1985 HEm. Liv .... e 28815

Ok

A •

Se VOCe quiser apagar 0 que acaba de escrever, basta pressionar a tecla indicada na figura 1.14 e 0 cursor volta apagando.

14

Figura 1.14 - 0 uso da tecta "borracha",

HOT-BASIC Vl-2

EPCOH [Z.F.HANAUS~ 1985 He •• Livre 28815

Ok

......

Pressione agora a tecla CAPS, destravando as mirnisculas - a luztnha CAPS apaqa-se - e digite novamente a tecla A, mantendo-a pressionada algum tempo. Como voce pode observer na figura 1.15. a letra agora e mlnuscula (pOis 0 CAPS foi desatlvado) e fol escrita uma porcao de vezes. Realmente. mantendose uma tecla pressionada por algum tempo, ativa-se urn processo de repeticao autornatlco.

Figura 1.15 - A repetlcao autornatlca e a trava de rnalusculas (CAPS).

OJ

..

HOT-BASIC V1.2

EPCOH [Z.F.HANAUS] 1985 He •• Livre 28815

Ok

aaaaaaaaaaaaa..

15

Seu HOTBIT permite gerar no video todos os caracteres rnatusculos e rniruisculos que aparecem no teclado. Alern desses existem muitos outros caracteres ocultos que podem ser obtidos atraves das teclas GRAPH e CODE.

Par exemplo, experimente apertar a tecla GRAPH e, enquanto a rnantern pressionada, digite 0 ntrrnero 7.

Voce vera 0 sinal de .. raiz quadrada" aparecer na tela (fi· gura 1.16).

Figura 1.16 - Descobrindo caracteres ocultos.

HOT-BASIC V1.2

EPCOH [Z.F.HANAUS] 1985 HR __ Livre 28815

Ok

aailililaililaaaaa r.

Nas figuras seguintes VOCe ve a teclado baslco. a posicao dos caracteres "ocultos " e como obte-los, Se voce for brincar um pouco com eles, vera que alguns aparecem "quebradas", au seja, incampletas do lado dlreito. lsso ocorre porque seu HOTBIT. ao ser ligado, ativa a tela de 40 colunas e esses caracteres aparecem completamente apenas na tela de 32 colunas.

Para ativa-la, aperte 0 RETURN algumas vezes (nao se preocupe com as mensagens de errol, ative a CAPS (fazendo a luzlnha acender outra vezl. digite SCREEN 1 e pressione 0 RETURN.

A tela fica limpa e voce pode brincar a vontade. familiarizando-se com as teclados do HOTBIT.

Toda vez que voce quiser limpar a tela, basta presslonar simultaneamente as teclas

+

16

IcLSl ~

Figura 1.17 - Os caracteres basicos.

Normal

Com SHIFT CAPS :

Observacao :

Letras rnlnusculas e simbolos inleriores. letras matusculas e simbolos superiores. Trava em maiusoulo so as letras.

As teelas de acentuacso so sao executadas apes a pressso da vagal.

Figura 1.18 - Caracteres obtidos pressionando a recta GRAPH .

• As teclas sornbreadas sao descritas no capitulo 4

17

f~gum II 11'9 - C!lrl;ic~er'I!lS o~'tido:s ~fft:SSlUmlnu{l 'SHIFT + GRAPH"

rn ~I

,. As 'leels:; sombreadas sao' descrltas no capitulo 4

HI,

HOTBIT E SEUS APLICATIVOS

!?/

HOTBIT HB·8000

Este e um microcomputador eonstruido segundo 0 padrao i nte rnac iona I MSX.

Alern do teclado e das conexoes. que ja foram descritos no capitulo 1 deste manual, ele tem em seu interior alguns dlspositivos que devem ser conhecidos.

o m icroprocessador e seu cerebro prine ipa I: no pad rao MSX utiliza-se 0 Z-BO, a mais moderno, veloz e eficiente mlcroprocessador de B bits ja fabricado.

o VDP (Video Display Processor) e um cerebra auxillar que gerencia as funcces de video do HOTBIT, permitindo os incrfveis efeitos grMicos a 16 cores do seu micro. Ele e assistido por uma memoria RAM {ou seja, memoria na qual podemos escrever e ler] de 16 Kbytes (cada Kbyte equivale a 1024 caracteres).

o PSG e 0 outro cerebra auxillar que gerencia os efeitos sonoros do HOTBIT. Ele perrnlte produzir ruidos, SOnS e rrulslca em 3 vozes!

Alern dlsso. voce tern 64 Kbytes de memoria RAM para armazenar as lnformacoes e os programas.

Seu micro ja vem de fabrica com 32 Kbytes de memoria ROM gravados.

A ROM e uma memoria que podemos ler mas na qual nao podemos escrever. Nela estao gravadas as lnstrucoes do Sistema Operacional e 0 Interpretador Basic.

Este Interpretador Basic e um verdadeiro tradutor que transforma as instrucoes dadas pelo usuario em linguagem Basic (de facll aprendizado, como voce vera no capitulo 4) para a complicada linguagem de Maqulna que so o' Z-BO entende.

19

HOTLOGO

Neste cartucho voce tern urn interpretador de linguagem LOGO. Ao utiliza-lo. seu HOTBIT torna-se um poliglota!

EI e passa a traduzi r comandos de outra I inguagem: 0 LOGO, Esta linguagem foi desenvolvida especial mente para principiantes e representa a chave de aura para se abrir a primeira porta do fascinante universo da Informatica.

HOTWORD

Este cartucho transforma seu HOTBIT num versatil processador de texto. ligando·se 0 micro a uma impressora de boa qualidade. damos um pass a gigantesco para 0 futuro, fazendo a maqulna de escrever ficar tao obsolete quanta uma vitrola de 78 r.p.m.!

o texto e escrito. apagado, reescrito e corrigido na tela do computador.

Somente apos flcar do jeito que voce quiser, e que ele e impressa ou gravado em fita (au disquete).

Eo fim do corretor e da borracha! E se voce quiser produzir um texto parecido com urn pre-qravado, par exemplo, urn cantrato no qual voce quer mudar um nome e uma clausula. basta carregar 0 texto anterior e fazer apenas as correcoes necessarlas. sem precisar digitar tudo de novo!

HOTDATA

Neste cartucho esta contido um gigantesco Hchar!o no qual voce pode fazer desde um controle de estoque ate uma agenda.

Em relacao a urn ftcharlo de papel ele tern a vantagem de ter uma certa inteligencia propria: voce pode pedir, par exernplo, a relacao de tad os as seus clientes que fazem arnversar!o no mas que vem e obte-la em questao de segundos!

HOTPlAN

Se alguma vez voce ja fez uma complicada sequencia de calculos e foi obrigado a refazer tudo porque apareceu, no meio do caminho uma rnudanca na taxa de cambia ou um Plano Cruzado. voce e urn serio candidato para 0 cargo de usuario fanatlco do HOTPLAN.

Com este cartucho voce transforma seu HOTBIT numa enorme planilha de calculus que permite desde a conteccao de um

20

orcarnento dornestico ate a elaboracao da tolha de pagamento de uma pequena empresa.

COMO SE INICIAR EM COMPUTACAO

Os capitulos seguintes deste livro podem ser lidos em qualquer ordem, em fum;:ao de seu interesse e de seus conhecimentos 'previos sobre a cornputacao.

Se voce tem interesse em se iniciar na linguagem BASIC, aconselha-se a leitura atenta do capitulo 4.

Apes essa leitura introdutoria, se voce qulser uma reterencia mais completa sobre 0 BASIC-MSX, aconselha-se a leitura do "M anual de Basic" ad itado pela EPCOM.

Ouerendo aprofundar seus conhectrnentos sabre 0 BASIC e a arqultetura da maqulna, aconselha-se a seguinte literatura:

* MSX - Guia do Usuario - Paul Hoffman - Editora McGraw-HiI.1 - Discute exaustivamente 0 BASIC·MSX e orienta 0 leitor no usa do DISK BASICe MSX DOS (para usa de discos maqnetlcos].

* APROFUNDANDO-SE NO MSX - Plazzl, Oliveira, Maldonado et al. - Editora Aleph - Discute com detalhes as caracterfsticas da arquitetura da rnaqulna. Indicado para quem domina 0 BASIC e quer cornecar a elaborar programas em Linguagem de Maquina.

* COLEQAO DE PROGRAMAS PARA MSX vol 1 e 2 - Oliveira et aL - Editora Aleph - Jogos, deserrhos, rnuslcas e utilitarios em BASIC-MSX. Indicado para principiantes na linguagem BASIC.

* MSX - PRATICA E DOMfNIO - Nelson Casari - Editors Atlas - Programas comentados em BAS.IC-MSX. lndicado para principiantes ..

21

* JOGOS MSX vol. l e ll - Young e Burd - Editora McGrawHill - Coletanea de programas listados em BASIC-MSX.

* MSX - GUIA DO OPEAADOR - Young e Burd - Editora McGraw-Hili - Manual de referencla raplda dos comandos e funcoes do BASIC-MSX.

* JOGOS DE HABILIDADE - Martins, Sung. Dias e Guazelli - Editora Aleph - Coletanea de programas em BASIC e Linguagem de Maquina para MSX.

* PROGRAMACAO AVANCADA EM MSX - Figueredo.

Maldonado e Rossetto - Editora Aleph - Para os programadores mais experientes que querem usar recursas descobertos no livro .. APROFUNDANDO-SE NO MSX", utilizando a velocidade da Linguagem de Maquma.

Se voce quer aprender a programar numa linguagem mais acessivel que 0 BASIC. aconselha-se cornecar pel a leitura do capitulo 3.

Nesse capitulo. voce tera uma introduc;:ao ao LOGO, linguagem desenvolvida especial mente para crlaneas e de incrivel potencial em apllcacces didaticas. Algumas pesqulsas mostram que quem se .. alfabetlzou" em LOGO, tern muito rnals facilidade para aprender outras linguagens, incluinda 0 BASIC.

Nesse caso, aconselha-se, depois de ler 0 capltulo 3, a leitura do livra:

* HOTLOGO - Godoy, lacerda, Lepiscopo e Mendes - Editora Aleph - Livra dldatlco especialmente escrtto para crlancas, mas indicado tarnbern para programadores principiantes nessa linquaqern.

Numa prirneira etapa do seu cantata com a cornputacao. voce pode decidir nao cornecar pela proqramacao, Ha a posalbilidade de se lnlciar na utlllzacao de urn aplicativo util para usar seu HOTBIT como uma maquina de escrttorlo bastante sofi sticada.

Se voce dlspoe de uma impressora e quer utlllzar seu HOT· BIT como uma sofisticada rnaqulna de escrever, conecte 0 cartucha HOT WORD e comece pela leitura do capitulo 7.

22

D£I mesma fertna. se ","oe,' quisar ccmecar crtande urn SUI· per·'Jlicluirio eletrOnllco, corrects '0 C;:!lrluchO do HOT DATA e lela o ~~plftuio 5,

Se voce j,~ c,uviu falarem plallilhas el'etrDr1Iic~Si e qulser se ini'cial" nn mundo de informatica sprendendo a IIda,r c,o:m um8 delas; t;Onect8o cariJ;l.Jlcho HOl PLAN Ie leta atantamante 0 CH''pitulo 16.

Anters pgrem, urn 'Iembr,e'hi; CD:NEC1E OU DESCONIECTl~ 06 CAATUGIH'OS SIEMPIFtE COM S'EIlJ HOlan DESUGADO!

Como (I usn clesses tre9 esrtuehus e desertte de Imaneira Ire:s,umllda nDS oapltuhJs 5 [HOoT IDA1A), S I[HOT PlAN] e 1 (IHOT WORDJI, acnnaelhe-ee a lettura d08 livroiS:

* I-liOTDA1A - R. M.Watanabe ~. Edltol!'8 ,Aleph. * ~-ilQHJlAN ~ R. M. Wat,anabe - EditlQra Ah~'ph. * H01WDR'D - IR. M, Watam!lbel - Edlr:o,ra A'I'eph.

Nos Uvro5 aelrna c,itados, todas as, p'Dtenola~ldades dnse-a lires programas, 580 des'crit8s de maneirQ detalhada ,e extremamen te d idlirU C,91.

A:pesl:.lt de ser p05,sive:1 () usc de Uta eessete par,1lI ar,qu.lv,ar es dados p rodlJ.z~dos 'P 01' esses p rogrramas. a corn sellha.se (J usa de um dusk drive de menelra (I, !l'erillif [lliquhros am disco, magneti:co. Ap,en8s des sa form.a '0 usa' dos plr'lJgram~8 HOT DATA. HOT PLAN B 1&-101 WORD pod e ser cons Iderado 'rea I rn entsp roflls,si,on Ell.

Para sefamlll~aril311' ,CDm '0' usn de urn disk drill/,e, ac::onselhase a laitura do Uvro:

:1: USA'NDO 00 D'ISK DAIIVE INO MSX: ~ Rube'ns, Perel ra Jr. - EdUor:EI Aleph -IDescrh;:ao e 1000 da9~Lln~Oes e eornendos dCl, IJS,K IB.A-SIC 'e dO!8,Sllhs:~emas opera Chlfil'B is, HIIS.OOS EI IMB·MOP.

Ou IiII:quer que se~aa sua oPQa,I), 16l111brfj·se de e'xtfl!Hniill velfsa,· tllldade do SilI'Y eomputadcr e 111'180 se IIiImite ill uma 'OIU dus,s a;pli. tacoes till! IllinglJagetHli .

.0 MaX e Ufll'l pad rao extJlI'e m am8fne e lastleCi. j:I errrrdtlllilldo a cOfl,iiixio com uma gama, vastii5JsiRl!ll1 de pBrUBricos. de mane_riB a Implem'!:!ntar ,IiIS mama veri.ades ,apUca!;:oes .•

,Reilaci:ona·se a segUlir ~!I,g,iJns, perif~i']cDliI l' exlstel'lltes no Ime'i'cado e sua utlUdade qll'aqdo conectM'·Q,9, 81 seu HOTBIIT.

2Ji

* GRAVADOR CASSETE - Oualquer gravador cassete de boa qualidade pode ser conectado ao HOTSIT para gravar programas e arquivos sequencia is. 0 HB·2400 e um gravador cassete fabricado pela SHARP especialmente para 0 usa com 0 HOTSIT, permitindo alta confiabilidade na grava<;ao de dad os em fita.

* IMPRESSORA - Oualquer impressora com conexao paralela padrao CENTRONICS pode ser conectada ao HOTBIT. Certlfique-se de que a impressora tem a tabela de caracteres MSX ou ABleOM? para poder imprimir os caracteres acentuados.

Existem no mercado interfaces que permitem a conexao do HOTBIT com maquinas de esc rever eletr6nicas.

* DISK DRIVE - Existem no mercado actonadores e centroladores de disco padrao MSX. 0 acionador de disco deve ser padrao IBM-PC e a interface controladora padrao MSX, ou seja, ela deve trazer uma cornplernentacao da linguagem BASIC restdente no micro. 1550 torna seu HOTSIT apto a gerenciar discos.

A SHARP lancou seu HB-3600 que permite operar 0 disco com 0 DSK BASIC e, alern dissc, permite 0 uso de dais sistemas operacionais: 0 HS-DOS, compativel com 0 MSX-DOS, e 0 HBMCP, compativel com 0 CP/M.

A unidade acionadora de discos que deve operar com a interface citada e a HS-6000, tarnbern fabricada pela SHARP.

E a pertferico indispensavel para usos profissionais de seu computador que permite rodar uma quantidade enorme de software desenvolvida anteriormente para outros computadores.

::: JOYSTICK - Apesar de estar associado a imagem de "video-game", a joystick e um perlferlco muito uti I nao 56 para jogos como para utilizar determinados softwares para desenho.

* MOUSE - Alern de funcionar como .. paddle". 0 mouse conectado ao seu HOTSIT pode ser usado como substituto do Joystick.

* CARTUCHO DE EXPANSAO - ~ urn cartucho que contern ' memoria RAM e. ao ser conectado ao micro, arnplla sua memoria disponivel. Ouando 0 HOTSIT esta ligado a urn controlador HB·3600 acoplado a urn acionador HB-6000 e esta sob a gerencia do HS-Mep, reconhece a cartucho como drive F. 1550 significa que, apesar de ter urn unico drive, a usuario pode operar como se

24

hv fi:S.!i·l!I dDi:1l. 881':10 Q U m del as de ace ssaextrema mente ve~.o.z. M u ito uti I. per e~empil o, pa ra quem uttl ~z:a 0 dB iIDlse II.

*RAM DISK- I~ urn banco, de memdna qus 3ub5t~Wlli au eamplementa '0 d~sk drive a ~ tie ~u;.e!lSo e'xtremameme rollpido_

~t EX PAN SCU~ 'I) IS U:lIil'S - !: tlm~, espec Ie de ~ b enjamlm '. que aerrntte a cone)(;1!i[ij de vB'rk.ls carnu:::hos e/~m ,expa!il!soes. 0 padrao M ax lP~wmHe 0 e 11 d III rll::ca rn ante d~ t 6 X 1J4 klby11e:s, IJ U ~e.~'a .11 M (:jig abyte:. A tr~ve5 de ex,pariU3:or de slots teda essa petenclahdade podeser utlliz,ada.

* ,PL~,CA, ID:EBfIi ,CO:LllJNAS - PermitI;'! ~jgar 0 HOTBlla urn m'ontltor de video. prodUl'~ndo, urna tela de' 00 eolunas. tndtspensavel PM.:! 0' 1LJ8'C de eertes priOg.ramasqulll L}.'I(,iigem 80 C:aJNICht·, re.s pn r hnha ne tel a.

:::: MOIDEM - D~ Sl=lOS i t i:vo' qlle een e eta '[l' is eu HOTSll a La ma I j n ha tEi I ef,ij n iea, If,l,erm ~ t Iindo comunl Cal!;; ao m I,em ,;]1 mi e m, a01;l39,O' ~, VfDEO·HX10 e CIIRANDAO, scesso 1iiI. computado,res del banens, 'lise do m~cro como pSG'uda.-telex., ere.

:$ P~O,"EIA - Irata-se deum dispo:sr'uVQ, dr1! c"H~enho nn qual uma caneta se m,ov[menta para. n3Qar desenh.o,s r comand.!IDGil!! pe,le rnlera. No Bfe:9i~ Iii exi~~e urn modele de plotter de batxo CUS~C1 cQ,nectavel il saida CENTRONICS [d.,1 impreSilSOr8l) que pa rm,~le pmduOl: i r G I:i,sernh ~JS, em fQ,~has de pa&a e I !lIa d rao A4 (:2', ,em .11 3'0 eml

,lEss a p loner p ods usa r llI'm'!;'I calm e'tilt de M !Jo,nts pDfosa '. OUl' Clii ",918 ~ nan k Lm ~ . P'ritfEi desenhoiS 'teen ~CICl5 e~em u m ,a.lfab€'~o I"U.S idente CfJ m d e:z tam anhos de ~ etras, se !'!llci on ~ve ils per snft· ware.

E S~:IiL\I ~ 1:11 r ilfi8rh;;o ., Imul~to I mpDrt'alnte ipara us ill F s'e:u IHOTielT em des:enhos teon~cos (mlnICAO).

(;,(1 me VOGe p ode peraeber, sell! H OllElHe lapenaJs 0' co m€lQc de urn ststema que p:ode se tOtlU'ar e.xtlremam~nte sof]:s~ic.e,d'll ,e lI.::ompte'!io,.,

Pan em,cerlfar ,e,s~a caplitu 10 :llndici::IimOS a t:e I aCB I) das edn(lras c uJos Ii v,ras fc,ra.m oi tados ~

25

ALEPH - Av. Brig. Faria Lima, 1451 - conj. 31 01451 - Sao Paulo - SP

ATLAS - R. Cons. Nebias. 1384

01203 - Sao Paulo - SP

McGRAW-HILL - R. Tabapua, 1105

04533 - Sao Paulo - SP

Para maiores lnforrnaccss sobre os pertferlcos citados e sobre outros softwares disponiveis no mercado contacte:

Nucleo de Apoio ao Usuario - SHARP Estrada do Campo Limpo, 6197

CEP: 05787 - Siio Paulo - SP Telefone: (011) 842·9461

26

INTRODUCAO AO HOT-LOGO

Info rrnatl ca, co m p utado r, prog r a maGa o. Es 5 as p a I avras ca usam, rnuitas vezes, urna sensacao de lntlrrtldacao, distancia, e nao rare, um clima de "guerra nas estrelas ",

Para a maioria dos educadores e pais que se preocupam em preparar seus ftlhos para 0 futuro, os computadores sao encarados como "alqo " alienante e temeroso. A rapida e recente expansao da industria de cornputadores colocou a nossa dlsposiyeo e uso, todo 0 potencial dessa .. maqulna estranha ", !: compreensfvel, portanto, que nao estando Iamlltarlzadcs com os rec u rsos co rnputa do nzados: ex i sta m reservas qua nto 0 futuro um tanto impessoal que os computadores produzlrao no cotidiano de nossas crlaneas.

Os computadores, por terem ampla abranqencia, reallzarn um numaro de tarefas multo rnaior que as dernais maqulnas, Consequenternente. e valldo supervalortzar seus desempenhos e imaginar estruturas complexas e de dificels oompreensao.

Entretanto, como os computadores estao mars facilmente disponfveis nos dias de hoje,e rnals simples nos farniliarlzarmos com eles e atuarmos para detectar modos por meio dos quais melhoraremos nossa qualidade de vida.

Saymour Papert, professor do Instituto de Tecnologia de Massachusetts, criou uma linguagem de proqrarnacao denornlnada LOGO, que torna 0 cornputador acessfvel ate para crlancas de baixa faixa de idade. A proposta de Papert e levar a crlanca a ensinar, com toda sua vlvencia.o computador ..

Papert imaginou que cada crranca tera num futuro, um computador a sua dtsposicao. Ele crlou 0 LOGO na esperance de que a criarrca rnanipulara seu computador como se fosse um poderoso lapis.

A SHARP, por sua vez, criou 0 HOT-LOGO, que e uma linguagem compatrvel com 0 LOGO idealizado por Papert.

A grande facilidade de acesso ao computador por meio do HOT-LOGO vem, em parte, da sua pr6pria simplicidade.

A linguagem consiste de um vocabularlo composto par palavras baslcas em portuques tais como parafrente, paratras, pa rad i re ita e par aesqu e rd a.

27

P,arEli e'X8cutar os eurnaudcs do HOr·LOGQ di~8p(Jmos de TAR1ARUGA. Ela e' uma entldada 9if,Ujca e lurnlnusa, que vlve n8 tala do compulitador e Que pertenca an Unlverso HOT·LOGO.

,E8so=l T,AATARUGA f,ln'~1 os deaenhes qU'9 emdnarmos. pots e~a pede 50 mDvl mentor pe la t.il! I a e del x Elf urn ra'stfq;J1 par onde

ela passar., .

COMO IINSTALA'R 0 HOT·'L.OGOI

Para USSr (I HOT-lOGO, slg.a as IIl'lstrur;;O'8~ iii S8gllif!

~ - Com ,Q H()TIEIH deslig'ado. co,~oqu~' 0 ,car·ttuclilo do HOT· lOGO num cos slots, mantendo sempre 0 furo do cartueha voltado ,para 0 lado ,e~'tIU,e,do e ill leUqu,eta vo,ltad;;l panil yoci.

2 - 8e \!loci vai UiWizar 0 9U!lIadQj"'1 veri~lique sle e~e ,e.sta eenec tade 1iI0 cemputador.

:3 - Ugu:e " compUitador 19, depo,j,s de alguns, lnstantee. 0=1 00 1.El, dev,e,r~ sa rnostrar cQ,nform:e' 8 figulra 3 .. 1 .

..... D':I"-II-ODO y· .. r'lllla tl ~ i IEP C,OH £996

O .. ny I n,do ';,II;) LDJlO 1'.

••

Essa tela tndtca qll.!le vace lest~ nn untversn HOT"tOGO. A u.ll1:~ruga que 8panl,oe no eli3: n Iro da te 1,i'Jj estill pr'D.nta p'ara re aebel" suas, ordens.

o pontio, de interrogS'lj!ao (1) I~ ,chamado, 51inal de ,prO!'litid80 €I 0 pequenD Cluadra_do que aparec,e piscamdo 00 seu lad,o, e (I C'iUIl'SOI' qLU!' IndlcllI 0 IliIQ'ar '011'1013 vai 8psreeer (I, car,aci!e:1' UBt!ra, nUffier(h eu:.), que: ,",oelli €Hgltaili'.

A'TE:N'eA'O': v'eraiqUiIil 86 ,a luz verde rB~etente l! 00010 CAPS estl';i, i1IpDgod~. Se esUver aceaa, pre:s.s:~one e:SSQbil'c'lal. Iss'o, deve set' teilO pOiis o HOT·LOGO SIO' nD5" permlte '!lJUU:zar ~etlras rnlnuscul'as ernseus coma ndos.

CONVERSANDO COM A TARTARUGA

Vamos tentar conversar urn pouco com aquela tartaruga que esta no meio da tel a ever 0 que ela e capaz de fazer.

Para lsso. vamos tentar alguns comandos. Agora lernbre-se: pressione a tecla RETURN apes a digitac;ao de cada comando. Essa tecla faz com que 0 HOT-LOGO interprete a ordem que esta sendo dada.

Experimente dig itar:

alo

Pressione a tecla RETURN e obtera como resposta:

Ainda n~o aprendi al0

Essa mensagem significa que a pafavra al6 nao pertence ao vocabularlo HOT-LOGO, lsto e, ainda nao Ihe foi ensinado como proceder com esse nome.

Agora comande:

paraf"rente

E obtera como resposta:

Nic ha entradas su~icientes ~) para paraf'rente

Isso significa que 0 cornando primitivo parafrente necessita de uma entrada: 0 nurnero de passos que a tartaruga deve se deslocar.

Apague a tela de texta camandando att e tente agora:

paraf'rente 50 au

pf' 50

Voce devera obter a tela da figura 3.2.

Da rnesrna maneira podemos deslocar a tartaruga para tras utilizando a comando prlrnitivo paratras (pt). Tente, par exernplo:

paratras 70 cu

pt 70

29

Figura 3.2 - Tela apes a comando parafrente 50.

A tartaruga pode tarnbern girar. Ela ~ entende " as giros a serem dados como anqulos medidos em graus a partir da direcao em que se encontra.

Se quisermos, par exempla, girar a tartaruga para a direita 1/4 de volta (90 graus) devemos digitar:

paradireita 90 au

pd 90

Observe que a tartaruga obedeceu ao comanda paradireita, giranda 1/4 de volta mas manteve a sua POSi<;:80, isto e, nao satu do local ande estava.

Se voce quiser girar a tartaruga para 0 lado contrarto, utilize 0 comando paraasquerda (pel. Par exempla, para dar 1/2 volta (girar 180 grausl para a esquerda, digite:

parallsquerda IS0 au

Pll' IS.

DESENHANDO FIGURAS

Para iniciarmos uma nova figura vamos primeira Iimpar a tela. Para issa, comande:

tat

30

Esse comando e a abrevlacao de "tartaruga apague tudo ".

Ouando executado. a tela gnlfica e de texto sao limpas e a tarturaga e colocada em sua postcao original.

Se quisermos apagar apenas 0 desenho e manter a posicao e crlentacao da tartaruga usaremns:

ad

au lIPllguedesenha

Com alguns comandos, podemos desenhar ate figuras complexas. Vamos no entanto, cornecar com algo mats simples como um quadrado.

Antes de cornecar. lembre-se de separar com um espaco comandos sucessivos e as comandos de seus parametres. Nao se esqueca tarnbern de pressionar a tecla RETURN apes a digitacao dos mesmos.

Para obter um quadrado, comande a sequencia que se apresenta a seguir:

pf" 90 pd 90 pf" 90 pd 90 pf" 90 pd 9. pf" 90 pd 90

Para obter a mesmo quadrado, voce tarnbern pode simplesmente comandar:

,.. .. p it:a 4 [pf" 9. pd 90]

o comando primitivo repita permite ordenar ao HOT-LOGO um determinado nurnero de instrucoes que se repetem. Esta lista de lnstrucoes deve vir sempre entre colchetes ([]).

Sempre limpando a tela apos cada desenho com 0 comando tat. tente agora desenhar as figuras da tabela 3.1.

Note que para obtermos a circunferencia, pedimos para que a tartaruga tracasse um poligono regular de 360 lados. E clare que nao faz sentido falarmos em lados de circunferencla. 0 efeito e apenas visual. Por ser um polfgono regular de muitos e pequenos lados, ele se confunde com uma circunfer encia. Para fazer areas e circunferenelas de outros tamanhos, varie 0 mimero de repettcoes, 0 valor do passo e do angulo.

31

Experimente:

rep ita IS0 [p. 0.5 pd 1]

rep ita 9 (p. 10 PH 10]

Tabela 3 _ 1 - Figuras

FIGURA C(}M~~IOO A SER O~OO
TR I !tIGULO reo I t a 3[Df 5~ pd lC'~l
POLrCDND DE 6 LADDS replta S(p! 50 pd S0J
POLfGONO DE 12 LADOS rep I ta , 2 Cp f 20 pd 30J
CIAGUNFER!NCIA r e e i t a 360(pf 1 P ~ 1J A llrnitacao do HOT-LOGO e praticamente a sua imaqinacao.

Procure fazer alguns desenhos como par exemplo os mostrados na figura 3.3.

Figura 3.3

Para que voce tenha alguns recursos adicionais ao tentar fazer as suas figuras, e interessante conhecer mais alguns comandos:

1. Para andar com a tartaruga sem deixar rastro: usenada (un).

2. Para voltar a deixar rastro: use lapis lull,

3. Para apagar linhas: useborracha (ub). Para desativar ub use ul.

4. Para tirar a tartaruga da tel a: desaparecatat (dt).

5. Para que ela volte a tela: aparecatat (at).

32

PROGRAMANDO EM HOT·LOGO: PROCEDIMENTOS

a HOT-LOGO s6 reconhece uma serie de comandos chamados primitivos, mas 0 seu vecabularlo pode ser arnpllado.

Programar em HOT-LOGO consiste exatamente em "ensmar a tartaruga" como proceder diante de uma nova palavra au comando. Jsto e, programar 0 HOT-LOGO e enriquecer 0 seu vocabularlo.

Por exemplo, ao digitarmos

ret" angula

a HOT-LOGO respondera:

Ainda n~a aprendi retangula

Teele agora,

aprenda ret"ingulo au

ap ret"ingulo

Dessa forma, entramos no modo de "Edicao de Pro cedi mentos " e enquanto nao sairmos dessa rnodalidade 0 HOT-LOGO nao executara as nossas ordens. Elas irao diretamente para a memoria do computador onde serao armazenadas ate desligarmos 0 HOTBIT ou pressionarmos 0 batao de RESET ou ainda se ordenarmos que 0 HOT-LOGO os esqueca.

A tela mostrara:

aprend. retin~ul0 -Fi.

Aperte a tecla RETURN, e obtera como resultado

aprenda ret"ingulo •

f"i.

Voce pode, a partir deste ponte. digitar as suas lnstrucoes para desenhar urn retanqulo e a tela flcara asslrn:

aprend. retingulo

repita 2 [p-F 50 pd 90 P-F 10 -) pd 90J

f"i.

33

n~iildo tell"mi!1l~do 8S in!arlJqOes. pre.ssio:nEi a t~ecla ESC para sail' da ,edl.:;:llo e 0 HOT-LOGO dalr;iilI D seglul!'1i11:e m,iltl1sagem:

~.t~ngUlD .prvnd.do ?

Com esta mensanam 0 HOT·LOGO avlsa 'qu,a '~aprell'ldeu" 0 reUinglJ~o que: im.agllnamo:s. 0 lrnpestante 2g,'0r.1J e que Iteliingulo pass'ou ii, fazer p8rte~ dos cemandoe do HOT.LOGO. Para te8tilJr, comande:

o HO],~LOGO antendeu 0 ql:.ie e retlnguiu e!iltartarug,9J 0 desenhou na tela.

1N'9SSE!' ex,emiplo. retiDgolu e urn eomando seclUndid1ri,a e racebe '0 nom e de IP AOC!EO I MENTO. EI e p ode SIU LD U UIado (I I!.I ehamadn sempre que voce' quis,er.

Digite ;ag,Dra,

.p ,c: .. t ."".111'11:: a p~ 45

~~~~ta 4 t~.tinBUlg p~ ,8] pd .. 5 ,pic S.

f' ~.

Comande entao

tat

c.t ~ ..... n:D

Voci deve obtido aflgur,a 3.4. IsfO mostra qlUD ,0 HOT-LOGO, a'iem deter aprandldo ret5.ngu]o, e usa,..I(I' agor'~ como um SUBPROCEDIMENTO" 8,ptendeu tambem cat,av,eniWi,

Como outras linguagens modernas, programas em HOTlOGO consistem de pequenos e claros procedimentos cada um com um trabalho especifico a executar, Vejamos um exemplo.

Deseja-se desenhar a cara do palhac;o da figura 3.5. Depois de cuidadosamente planejada, podemos digitar:

figura 3.5

a,pr-enda ,palh ... ~a cabe~a

chapliu

othos

nariz

boc;jl

f'l.

o 0 L:::. <::>

Agora devemos ensinar ao computador como desenhar cada parte, como par exernplo:

apr-enda ca,be~a

rep ita 4 [pf' ~. I'd 90] f'i.

ap chapeu

r-epit ... 3 (pf' 50 I'd 120] f'i.

Em seguida definem-se olhos, nariz e boca, porern antes de mandar executar 0 procedimento palhar;:o deve-se ehama-lo novamente com 0 comando

editR -palha~o ou

ed .... palh ... ~o

Usando as aetas e a teela RETURN devemos inserir as linhas com as lnstrucoes de posicionamento. Assim, 0 procedlrnento palhaco ficara estruturado da seguinte maneira:

apr-enda palha~o

cabe~a linha de posicionamento para que 0

«e ~.pd 3.-----cha'peu tique aclrna da cabeca chap.ru

35

Asslm, 110 HOT-LOGO, prnhlemaa padem ser dividido!ll em paqusnas partes .. P'roGt!dimentO!'l pcdsrn ser criados em sepa· rsdo para cad,a parte. ,o'86~e modo, podlemos dl'll~d.r trabalhos em preeedlmanms menores e d6POW:S, combhiH!i.los para '~ormr;!Jr SUPERP'AOCEOIMENTOS. P,odemos aiflda f.az,e'r Intera.:;i'iftl entre os iPl!'ooedfmefilitos.

Essefato evideRci81 que HOT~LOGO e e~f;la,nsliy.rill" pOlis ,0' usuari 0 e ns,i na eo CiD m Ilutador I'll Oi~OS C,ij m Eilfil,[:hllS, C IlJ iJ'al'~a'llras.

o HOT.LOGO ,~ tambem ~"tll:lrath/!). isto e, (I, 'Inoglr,amadQr ppde d~g~tar urn eemando ou IIJroglram'a e ~ VEllf" sua ,~xecul;iD I medmatamenilte ,

Alem d~S5D, D !-IOT·tOGO e. recursivo. I,sto Ie. urn prccedi· menta pnde - chamar" ;;I ail meSilla OU faze .. uma W oopia ~ dele p rrip rfo. Arulii's,Q 0 pro cedi menlo !'II $ e gt! i r:

fir.n," ."C;!J

hflliiiill.t.

pd 9. pf 2. p. 99 c:.,.,c'.

'fll.

ond~ haste pode ser d~finido como

aIP .... ndli lliliiiiit e fI".t, inl3llu'l a

IP i' 58 p,d :;I,. tr Hin~u10 IP~ 3,. ,pt 5.

" hi!

o p'I'ocedlmento l'IefiPQIUlfa jafo:i ens I naidol para F,az'8fmos (I CO\l,tfJv,ento. mes a I nda fa Ita - d~fp n'I i r tr.iingIllID. Ith:~s,ta form a.

~p~.nd. tfl"lln9U~O r_plt. 3 EpF Ie pd 12.J If' ,I m

A'90ra llmpa III tella com 'tat, c:omandle ceres ,ev1eJa ,0 Iresultade.

IPara interromper e:s~el p~Oicediimento ba:sta preS8~on8Ifmo9 S i mu It81f1l ilU!IM,BI1'tie' B Si tee I as, eTA L III STOP.

A t6 fisse POIiI/to, pa ra 'h!u::ern1 D!lI a mas rna fl~gura del d i ferle:ntes tEimanhos. dev,erl!amos .. en s!ina·,1 as ~ separadamante, AJ8slm. p,ilIlral 'obterrno<s um ,quadradc de lamo -1 (I b:~lri,'lImos umproc,ed:imBIJ'ito.

36

para urn 'q uad rade tie' ! ado 20, ~ ens! li1a r lamas· eutro preeed i mente e assl m filii cessi V,alm ente,

:1 mag~ne ae ~ i vessemos ill pess i bll id;e,d e de de fin irma,s, IJI m procedl me nto qUi El' des e n hess e figtlJras, d 6 U!ma n has 'q us;!!;;,!! lJe r.

QI H 01 ~LQiGO nos t,raz" para torner puss ivtld: fils$<a h,l.EiI ia; urn oubO "e,curs p: a, vairil~veL

A ''IIOWIaV!l!I !1~df:l m~,is e do qlue uma ~ gaveta Ii reservada niil memoria do, C'Qmp~ta,dof. ende depo,s,i,li:!lmii],s irl~orma'C~es,.

IPar,aensinalr urn If!)rQGBd~lrn~nto eern entr,ed~s, ~,Shl' e,. Ultili7 :i!lal'l do varl avei s, d evem,oI50'D edecs r '~8rtlllS r~9r,~8. IPs ra ill:USltN1IJ i Vf!'J~II'I'H)5 U,ffi exem,p~o .

• 'pr iiiii-lill d'. C. II H. Ii '~ ;.d'D' r~p~ta • [p' ;lado ~d 9.] 'f' I !!!!!

ObS'!lII'V~ que .Iogo depois do pli'ocedi~mento eaiXiil co'~oC:aJmos :lado quel ,e (I Inome: dO'!!: ~ 98ve,t,a ~ !)l1I:d:e: :!l'e r~ ewmBze lliill,d,[I' CI fUliflllil:et'D carre s P Iilndenrte aa tam,mho do ~Ia do, de leil~l';i!!!. i£e !!.at.iilll'!lll e !1tt1j! (Ii S!inal ~ [dois ,pa:ntasJ ,que tndleeeo HOT·lOGO qU!1!I esta pal.~vr.!ill de<U nl! uma valriav€:! (! nio urn prooe·d i me",~ol.

Pr~UhJ!1 and I) 81recla lESe va ItJlre mas :liD modo d~lI"ao.

Par~ 'fU,8ClJJ~a,rrmos Ii!! SUI pn::u)e d i mente, deve mmlos s~imp~.€i 51- mente digltar:

('l. obi~ill,mrrl;Ll),s 'COfll'lO rill suitado um quad rado de 5'[1 P~Ui'5gS dt!tar~a· nu:gfll ,eCIiITn.(!J' l,flId:D.

Pa 1'8 que te nham OIS quad~adQ:S de d ife rel1i~eSi tam anh,o. basta m udantJt~Hi a ~n!itr ad a. i sto i~. 0 numer'o' ql!.il e se ra a,Jl'm'llilelITu;u:J;oi n a ~ 9 iilveta m des I'g nada,

D,i gl'~e entaQ,:

~ .. II ~J., ·4,. ca II >I. :3:.' c., ~ H:_, ,~.

Usando ;;!J l"e'ClIlr$aO '1:1 a V'flri ~vt!ll. podiemos c!ria rum I~noce· di rnentc 'q us desen ha quad radeae Ilju·a: pare quando lima de~ef'· Imhll eda I[mind i'Qilafor verdad el ra. !Par ,axe mp,lol;

:3'1

~prenda CaiMas :lado se =lado )1. Cpare3 COl i ><111 ; 1 ada

caixa. IIOldo-5

f'i.

Experimente executar este procedimento e tente explicar o que aconteceu. Para isso, digite, apes pressionar a tecla ESC, as restrtcoes:

caixa. se caix •• 1. e.ix •• S

MAIS TARTARUGAS

Trabalhamos ate aqui, somente com uma tartaruga: a de numero O. a HOT-LOGO nos permite desenhos com ate 30 tartarugas. Para isso precisamos chama-las com 0 comando prlrnitivo atenc;aotartaruga (atat) e dar-lhes ordens. Por exemplo, digite 0 seguinte proqrarna:

atat 1 pd 45
.. tat 2 pd 9.
.t at 3 pd 135
atat .. pd 18e
.tat 5 pd 225
atat 6 pd 27.
atat 7 pd 315
atat tad ... at pf' :sa Observacoes:

1 - Os comandos pd 225, pd 270 e pd 315 poderiarn ser substituidos respectivarnente por pd -135. pd -90 e pd -45.

2 - 0 cornando todas chama todas as tartarugas, isto e, a llsta [0 ..... 29].

3 - No exemplo aclrna, aparecem as tartarugas apenas quando 0 comando todas e executado.

Se quiserrnos que as tartarugas 0, 2. 4 e 6 desenhern um cfrculo alternadamente e que as tartarugas 1, 3, 5 e 7 desenhem urna estrela nas mesmas condtcoes. faremos assim:

38

.11" C 1:1' II ·Ii,. ra 'tat

.!lit .It :t pd 45 ,.,~ • t :Ii!! P<i:ll ;p·e atalt :I pd i 3~ .1: at 4 11"£11 113'. a,tat 5 pod 225 .t ii!j'!i:: 6 P' ell 27 • • t~t '7 pd 3:t~

.tat tod.~ .t UA pr 50 u~

,Ii,t III/I: C. ,2 .. &J le.,da [II'"'IIIP I 't ill -,) 5 [p. 3. pd i443]

;.t.t [l 3 5, 7.] le.d. [pd ".' r-,) _pit. 36. Cp¥ •• 2~ pd ~Jl

fl.

ri observe a figlura apli'esentada.

o com andOl cadI!! hilz com qlll e ,as tartar ug8S: 'execul~e m as hlslrm;:oes da ltsta s'eguinttl, sequenetalmente.

Perceb~ qlle no Inlclo do Ipmced~roento c€l~lsa foi usadc 0' coma ndD r9'. E:sse cam i!lindc e mu ito pod erose, al e apaga a tel18 Igraflca e leva as tartarugas para as suas con.diQaes tnlolais. Para me ~ore'5 deta U'IIE'!S Cion sui te a U 5 talglem doe eemandos no tinal deste ca,pltul,o.

COLoe,ANDIO A 'TARTARUGA IE,M MOVIMIENTO

A tarteruga no seu leataCio o rl,g:illna I esta corn velocldad,e O.

Se qutserrnes que ella se movimell't,e pala tela, basta mudar a sua \f,ell DC i!dade, q UJ"e IPodelol'a r jar de - 128 aN:i '1'28.

E._:w:p er im8l'1te:

IEUa comecara ,21 8'8 rnovlmentar na (ilif'leQao qua uUi indicado. A,pesar do mOlvllmento, lil80 nerdemos contrele sobre ela, OU sej it. 018 calma ndos pod em 5 e r da;dlolS; nerma lm Ililnt'G'. Ex·p erl mentla:

li'I"d 3'. pili 12e' pf! 2,.8

39

Podemos a i nda faz e-!a aiJi:lgm as Ii nhas por onde ela passa usando 0 comando useborracha (ub) ou andar sem deixar rastro com usenada Iun),

MEXENDO NO TEXTO

Voce notou que no HOT-LOGO trabalhamos ao mesmo ternpo com uma tela qrafica (onde desenharnos) e uma tela de textn (onde escrevemos l. Para que possamos vlsualiz ar melhor o nosso desenho, pndernos apagar OJ tela de textos com 0 cornando primitivo apaguetexto (aU).

Podemos tarnbern fixar 0 nurnero de linhas a serem usadas.

Por exemplo:

.. udet:ext:o 2.

Assim fixaremos as 4 ultirnas linhas para texto.

AS CORES DO HOT·LOGO

o HOT-LOGO oferece 16 pass i bi I idades de cores.

Para trocar a cor de fundo uti I ize 0 comando mudecf segui-

do do nurnero da cor desejada (consulte a Tabela 4.1 da

pag 92). Por exernplo:

.udecof' 1

Para trocar a cor do lapis use mudecl seguido do mirnero da Gar. Exemplo:

.udecl 2 pof' 20 .udecl 4 P' 2-) o Mudecl 6 pf'" 28

Para alterar a eor da tartaruga cornande mudect e 0 mirnero da Gar. Exemplos:

.udect: 2 IIIudect 10 .",dect: 13

Podemos tambern pintar fiqur as. Assim, S8 desenharmos urn quadrado na tela e posicionarmos a tartaruqa no seu interior, podemos pinta-lo com 0 comando primitivo pinte. Par exemplo:

40

rg

replt~ 4 [p' 4. PW 9.]

pe 45 un p' 5 ul .ud.cl 6 pinte

o quadrado sera pintado de vermelho.

Sempre que quiserrnos plntar urna figura, devemos colocar a tartaruga dentro da area limitada pela figura. Em sequida colocamos 0 lapis da cor que escolhermos e s6 entao damos 0 comando pinte. 0 lapis nao pode estar sltuado sobre qualquer linha.

Alern de pintar, 0 HOT·LOGO permits carirnbar um determinado esoaco, com figuras da tartaruga em usa e com a cor do lapis em questao, Experimente a sequencia:

rg .udec' ~ .udecl 6 repit~ 6 [p' 5. pd 6.J

pd 3. un p' 1. ul .udecl 12 c~ri.betudQ

EDITANDO FIGURAS

o HOT-LOGO nos permite trabalhar com 60 figuras diferentes, a titulo de "tartaruga ". numeradas de 0 a 59. Veja a tabela 3.2.

A tartaruga que utilizamos quando entramos no HOT-LOGO e a figura 36. Para "charnarrnos " outra figura devemos usar 0 comando primitivo mudef.ig seguido do rulmero da fiqura desejada. Por exemplo, tente:

.udc'lg 1 .UdEf" i II .7

t: possive! tambern alterar uma figura ou .criar uma nova.

Para isso devernos utilizar 0 editor de figuras.

Com a telagrafica restaurada Irg) e sem tartaruga (dt) proceda da seguinte maneira para redefinir a figura 10 por exemplo:

edf"ig 1.

Na tela aparecera urn grande quadrado em cute vertice superior esquerdo localiza-se 0 cursor piscando.

41

Experimente pressionar as teclas de seta e observe como o cursor se movimenta.

Pressione agora a barra de espaeo e uma seta qualquer.

Note que 0 lugar que 0 cursor estava ocupando flcara em branco. Isto significa que aquele ponto estara apagado na figura 10 que estamos criando. Tabela 3,2 - Fi~uras do HOT-LOGO

••• .

•••• ...

••

..









••

••

•••

....

••••• ......

••••••• ........

• • .. ...

•••• .....

•••••• ... _ ....

... ..

• •

.-iiii----- .iii:ii.

I ••••

••• • •••

... . ...

••• •• • ••• .. .. . ...

• •••••••••

· .

• •••••••••••

• •••••• • .1

. ...•......••••. ................

· ................

ill .

.. . .

I " •••• ••

• •• II

· .. . ..

•• •••• .1 •••• I. ••••• • a •••••••• ' ••••

•• •••••• • ••• .. ... .

.1 •••••••••••••

.............

o - Crrculo 1 - Co~a~ao 2 - Gato 3 - Cacho~~o

................ ..................

•••••••••••••••• .....••••••.•...

•••••• •••••• . .. . ..

:

•••••••••••••••• ...... . ...

•••••• • ••• ................

•••••••••••••••• ............•...

• •• 11 •••• ' ••••••• ....... . .....

...... 1111 ••••••

••••••• .lilli •••

....... . .

.......... . .

....... . .

..... . .

.... . .. .... . ..

::: .. .. :: ::: .:': ::.::

••• ••• • •••• ... ••••..... ..

................

.... .

.... .

................ ••••••• ••••••• ••••••• •••••••

•••• ••••••• •••

.... .

•••• ••••••• •••

••••••• •••••••

....... .

••••••• •••••••

4 - Caminhao 5 - Foguete 6 - TIJolos 7 - He Li c dp ,

••••• ••••••••••

... .

••••••• • •••• .. .. .. .. ....

•••••••••••••••• ........... . ..

•••••••••• • ••

...... .

:: : : :::

•• :=

••• ... . ..... .

••• • •• II ................

• ••••••••••••••• .......•........

•••••••••••••••• ..............•.

.. ' .

.......•.......•

• ·

: : : : : : : ::

• •• •

· . . ..

I • • ••

................

• •••••••••••••••

....... . .

•••••• • ••••• •••••• • •••••

...... '. . .

.... .

••• • •• •••• • ••••

•••• • •••

•••• • •••

•••• • •••

••••• • •••• ••••• • •••• ••• •• •• • •• •••••••••••••••• .............•..

8 - Locomotiva 9 - Vagao 10 a 35: 36 a 59:

Quad~ado ch~lo Td~ta~ugas

Para treinar um pouco tente fazer a llustracao '(a) da figura 3,6,

Figura 3,6 (aJ

42

(b)

(e)

(d)

Podemos ainda apagar toda a figura 10 pressionando as teclas CTRL e K simultaneamente.

Quando voce terminar sua .. obra de arte ", saia do modo de edicao de figuras apertando a tecla ESC.

Para voce visualizer a figura crlada comande at e em seguida mudefig 10.

Para apurar seu sense artistico tente tarnbern fazer as ilustracoes (bl, (c) e (d) da figura 3.6. Para tsso, siga os seguintes

passos:

,..g dt edf'ig 11 Copie a llustracao B e tecle ESC. edf'ig 12

Copie a ilustracao C e tecle ESC. edf'ig 13

Copie a ilustracao 0 e tecle ESC.

Para" charnar " as figuras criadas, comande: at .. udef'ig 11

..... def'lg 12

.ud.,f"ig 13

OBJETOS HOT·LOGO

o HOT-LOGO e uma linguagem facil, simples e interessante para a exploracao de jogos, qraficos e geometria. Mas seu poder nao para ai, Como no HOT BASIC, a HOT-LOGO manipula mimeros e cadeias de caracteres atraves de palavras e de listas compastas de palavras. NLimeros, palavras e listas sao chamados de OBJETOS HOT-LOGO.

Em HOT-LOGO uma palavra e uma sequencia de caracteres sem espacos. Uma lista e uma sequencia de palavras au de outras I istas.

Enquanto no HOT BASIC uma cadeia de caracteres deve ser manipulada caracter per caraeter, no HOT-LOGO pode ser manipulada como um todo, au palavra par palavra, au alnda caracter par caracter.

Como jii vimos, a HOT-LOGO superpoe duas telas, a de texto e a gratica. Para rnanipular os OBJETOS HOT-LOGO usamos apenas a tela de texto e para tanto tiramos a tartaruga edt).

Para escrever na tela quaisquer OBJETOS HOT-LOGO, usamos 0 comando prirnltlvo escreva (esc). Digite, por exemplo:

43

Alii

o resultado apareee na linha seguinte:

Repare que as aspas sao obrigat6rias antes da palavra para que 0 HOT-LOGO nao as eonfunda com nome de procedimentos.

Quando usamos numeros, as aspas sao desnecessarlas. pois HOT-LOGO nao aceita proeedimentos com mimeros como nome. Par exemplo, digite:

esc 4:5

Vamos agora, par exemplo, trabalhar com uma lista de anirnals. Para lsso, digite;

atr Uani.al. ~gato cachorro -) pato •• po]

o comando prtrnltlvo atribua (atr) rotula com um nome um espaco na memoria do HOT-LOGO. Com este cornando. aeabamas de reservar uma "gaveta" de nome animals, onde foi arrnazenada a linha [gato cachorro pato sapo]. Veja a figura 3.7.

Figura 3.7 - "Gaveta",

[gato cachorro pato sapo J

Para vermes, na tela. a conteudo de tal gaveta pedimos ao HOT·LOGO:

o resultado e:

gato cachorro pato .apo

44

N ere (I USD de do i s POrlitos l: JI po lis sa CQ m~llI!d~,srseimQS ;;:10 ,HOT-tOGO eSC "sntrnals, lerU£lJfii,QS como resultado natela 3 pa lav ra a II! i m a is e nio " (;o!liJ~euda da 'g ~Vli:lt2i1 chi amada ani mars.

Podemostambem '(;01'1 cate n~r pa Ilaivr.ascomo can't eudo de urns II lsta. Co rnande, p ~r exe mp le:

o nl'sUI.itadoe!

~o ~1.'iI ~"030-

g~t~ c~chor~D ~~to •• po

10 ueo d~ b1:lrr8 invertid€il r'J permlta triElltalr ii!:l' siniFlill de iilgu,al (=) como urn caracter normai a niio, como urn compa~aclor. p,ara, Obtl~::r a pal,i;1j\l'lra entmats Eli a saida da :I:~st;a anilmai.s nUfI1:!IJ rn es rn a Ii 111 11211, linti 1 ~:z€t pall'!!nrteses;

~n~.~~.~ a~to c~~ho~rD p~~g -) ji,IIPO

~ imp arts ntl'! sa ~ hlmt.a1rq u e Oltlfi bu.ilI p e rmrte arm a2!eIil2l1l' qUla~quer OBJETO Hor-LOCO.

0$ Ci(lm~ndos primitiv'Os ,prjmelro (prU, o~timo (u'il]. rsre~'Fl.' meiro (5;pll~ selfH!ll:tim~ (suI,. 11;!1,ementfl' e: nUm1lU~~BIiIIl 1[II1BU nos dao tnnmeres p~!5sibil~d'adesdfJ manilpuhu;:,a,o dc~ objetos. Siio 'IoI,i!ili~

destanto IP,a,ra ll sta 5 C~ me Ipara pa 1~~lr.as. .

V,ejam:I:l<S! alguns .exemplos utili;!::eilflldo como 'tH'Itrada 0< conUlludQ da mga'l.rieta: ~ de nome anlmais atribuida antertermente.

o 1'~:3:lu~tado c'~~reSFHH'Ide aD p,dm~lro e~~emento da llsta an·i:· m"~:s:

Agora digite.:

ESC ult= .. nl.ais

A res posta e 0 ultimo elemento da lista:

SOlPO

Tente agora:

o resultado deve ser 0 elemento ruimero 2 da lista animals.

cachorra

Comande agora:

A resposta deve ser 4, pois trata-se do nurnero de elementos existente na lista animals.

Vamos agora atribuir e rotular uma outra gaveta na mem6ria do HOT-LOGO:

Armazenamos na gaveta A a palavra LOGOMANIA. Note que o HOT-LOGO aceita letras rnaiusoulas como nome de varlavels apesar de nao aceita-las em seus comandos.

Se quisermos ver na tela 0 ultimo elemento de A faremos:

Se quisermos 0 terceiro elemento de A:

ESC prj sp SP = A

au

ESC Ele~ento 3 =A

Imagine agora se pudessernos digitar um comando e obter na tela as seguintes saidas:

45

LOGOMANIA LOGOMANI lOGAMAN ILOGAMIA lOGOM l.!OGO

LOG

lO

l

ou

A

III.

NIA

AN'IIIA.

MAN~'A. OMANIA (~OMANIA OGOMANIA IlOGOMANIA

P,ar,aJ ee obter esses resu hados. 0 HOT ·lO G 0 usa dOli S lP~iIJ. ted! mentes rn u 1110 sl m pI G'S. \11;1 mes bal~il,"hl's de h;iallligiu lar1 iI;! f:~~anllilh:I1'.2'.

'h:llr'lloS ens i n'I.Cllr 0 plr{l eed i mei1l~o lJ'h:w,g;u'I';m11;

.p' t,l'" I a!n.1iIull ... t InQ.e

~.~. = !l'O." - .N! ['p •. I'""R J

.·'Sc !!,no ••

t!'" l ;!!J!flIlJjjJ ~ <l!lr' t ~YI ~ .n"!:IlaR "'11.

Ap'p9 ~reSi:sio,"alr IESO pElIrB SSllir do 0001:1:01 de edi~.io ,e limpsr atel a eom ~H: d,i9 nte:

'tl" ! IIJfi!IiI!UJ it iIIi.-l "'LODOHAHIAI ou.

Itr ,ian!lliu 1 ... 1i" iI. ,t.

Veja '0, resultado.

r es~:e eSiS:e' ;p rocedhll1e!'l~Q tamb~ rn com OIJ trs s pa~a,:vras. POI" Bxemlpio:

t: II'" II al!l!l!lu I· .... :l. ....COi"P !lJITADo:R' ~ H'O'liBI- ~. :n

~p tli"'."gq~.r2 ~no •• 5'!It ; pf:ill.· ... •• [p.r.:JI

It I!" 'an g'u'l ::III" 2: .pl nlO_,_ •• £ Ina.i.

""hil

Para vi sua ltaa r aseglii n t:h)1 I~esu~t:ad:lill preeeda da m 6lS mal m ~ neir3 q,uea ,eXfJtlllltada em ·lriliiUlgumar1.

N~o~e Qlue 'COrni peq'lUII1.:!IS mudanaas no, p~ocedim:ento I(!'btemes resultados mumto di~erent~s.

Vejamos um exemplo simples usando procedimento de listas (Iembre-se que Iistas devem vir sempre entre colchetes).

ap su.indo :~~a~e

SR :F~aSR =[] (pa~e]

su.indo su I~~ase ~i.

Digite:

su.lndo [EU VOU SUHIR AGORAJ-)

Como resultado voce deve obter:

EU YOU SUMIR AGORA EU YOU SUMIR

EU YOU

EU

OS OBSERVADORES

o observador e urn recurso muito poderoso do HOT-LOGO.

Permitindo urn modo de proqrarnacao que funciona independente de todo 0 procedimento em execucao. Ele fica atento a determinados acontecimentos e, assirn que as detecta, executa uma lista propria de instrucoes.

Temos dois comandos primitivos que produzem observadores: em.colisao e quando.

Os observadores do comando em.colisao, vigiam colisao entre tartarugas e as do comando quando observam a producao das occrrenclas de acordo com a tabela 3.3.

Tabela 3.3

N6MERO OCORR!NC'!
0 a p r 0 I( r m a d am e n te urna vel ~ 0 r segundo
1 pr.ssiio d e uma lee"
2 pressiio do be tao do j 0,5 tick 1
3 pressao do botao do jOJstick ;:
'I movlm.ntc do J 0 1st I c k 1
5 mavlm.nlo do j (J , I; t jell: ;: Para desativar os comandos em.eollsao e quando usamos elobs (elimine observadoresl au rg (restaure graficos).

Para exemplificar. vamos definir urn procedimento chamado demobs. Sua funcao sera vigiar 0 teclado. Toda vez que uma

48

teela ~Ilr presstenada, sora desenhade urn sel e com e comandUlI toque SIEm':! pfoduzido urn lOom sequencral.

Den a fo rma. dig tta:

.p dle.Db ..

Fill .t t !!'ludec: £!' i qu'.nd,o i ['_'E11 J f"ill!!l

ap IIIC!11 t.1l'

.,t!'" .... 1 1

.t" "'r9 &e,

F.P~t. 72 tr.~a II I~ .tr d1-J ~1+~ at~ ~¥ 1~.45J

,. I! II!!

'ap ... I CI 11 ~ .l' un

IPf' ,;!e' .,11'1::1'.1:'1 ,_ 'I

lul

pf' 5,.

t oqluli!! :It 11:,,, lUI I.

qn pI: ;t8

pd 5 ul

r ilii

C'omandre

e vej,a (I eFeito pI"'Od'iJ~idol.

IPara e ~ I m ln ~r ta I efe i ~o. coma nde le,I'obs: ~ u 1'19' mea me qu e !.I()~ nlJo aossa VitlUit,uz81i 0 que teclou.

o ~rocedimento ~D'ke,. deHnido al seg!!Jir, observa a t;oUsao eli1trl[! duJ~'s tartelNJgas e quando 165(1 aeonteee, Ie escrtta a palalJra HOT~lOGO;

~p MIil'Ii. Ir"li!

"lot:

I.U,i!I.,C f '1

.. ta.t, • pd 9'., .1II,dect II •

• t at 1 IP~ " •

• u,d.'c,t :I a

.t ii!lt 1:. 1 J ,1IIOt un, p' 1 • • udle .... ltl ,2_

ei!!i _ colll'i!iiIlia • 1 '1:." I'_Qd'.C!JIF'.a,~ J If' (liI.. 12:1 •• c [,1'1:0'1' L..'(U~OJI]

1'1.

Note '0 1.1501 do conH:l[1do mUd8GUrSOr 'qUI:! coloca e CliJlisor n a [II nha e eolun a especH~ cadas.

P,lIIr<! de,sativall' 0 comando 8D1M;:ol'isi.iol dlgit,ee:I'oIb5 au II'\g.

0\6 OPEIIflADORES MATEMIATICOS

Os IOJ)'~radores iTUiltemlliticos bliilsicos d'o HOT·tOGD :s,io: *. +. /. e '-. Com elee pod,gmOl!I, uti[lizar 0 ,compl.I~ador como uma ca leu ladora.

VeJamo,s como llsa·los na tabela J..4.

lobe'IEi 3 4 - OpaflltiO'rn Mat>lImlitiOO:!l

,
O~'EfUD:O~ fUNi;IQ [ EIIEf.1FlUI ~E5POS~'lI,
I
• P""ililll!l IUle :u-s H"
+ !\dido ~ ,,1: 2 .. 5 '1
I [] ~ ~ 1'5,10 1'1 e il!5/5 I~
~ !iLi ~ ~ r n lio !~~ 2:5-1'~ I~ as resultados dills opera'itoes t,illFl'llbdm podle.m ser usadns como leil1t!l'ada pa ra eutros coma "doe. POor I:Ixemplo:

p~ 31) '. '2 p' t ," 'q 2:::U'.

0. ope'radoil' Irq f,lii'oduz OOITiOI Ii'Bsl.:III'lado a ral,z quadrada de num(ll'io, Indlca,do.

o o,per,ador' sen produz ceme reeultade 0' ,seno do numera indh:ad,o tom ado como valoll' d;o angu~,o, em grraus ..

EJdstem alnda outro~ oper,adores martemtitlc[ls tala como a~. quOCi!enhl', $Olillla. eu;. Para tanto consulre ,i Iistag,em dlls cemandos no fl nal dess'El cap:lwlo.

A I'~m des m atema'tlcos, d isplJlm [l'S Iii 01 HOl,·LOGO d'i:iiSi ope. radores 16{11iCiOS 'que nos permltern c;omparar' nUlIflifllrOS Otl el<pf,es;. soes. IEles SliD apresE!ntados ria ~abella, 3 .. 5.

ObservaQD es~

1: - (,11 Icomlpal"ador == pode ser usado com qualql.ler 08JE'lrO HOT~LOGO (num:eros, pallavt,as ill' lisms).

'2 - Os Oil m,p,Bradil res ::> • < e =: norm allD'lenre sao uti iii· zado,s dentro ,de' progt'amas juntamel'll'te eom I) operBl,dor condlr:. clonal 51B, eorno hi vlmna em exemples anteriorEls.

50

3 - as operadores mate maticos e 16gicos sao simbolos reservados pelo HOT-LOGO, portanto nao podem ser utilizados como caracteres comuns.

Por exemplo, digite:

esc II.

e obtera como resposta a seguinte mensagem:

NaD ha entradas su~iciEntes -) para *

Agora digite:

esc ",.

A resposta agora sera:



Tabela 3. 5 - Ope rado res Log icos

OPERAOOA [)(U1PLOS RE2POSTA fLlNe'l]
= esc le=3+7 VHd rndlc~r vera ~. a elpres-
) e.c 10)5 lalso sao for v e r e a c e l r a " '.150
< esc i e cs v!'rc C3S0 c c n r r a r r n . Conforme jii vimos, a barra invertida ("-1 permite usar as caracteres reservados como se fossem caracteres normals,

GRAVACAO E CARREGAMENTO

Todos os procedimentos, varlaveis e figuras que definimos no HOT-LOGO, sao guardados em urn local denominado espaco de trabalho (memoria livre do computador).

Ouando desligamos a computador todo a conteudo do espaco de trabalho e perdido e se voce quiser preserva-lo, ele deve ser armazenado em disco au fita.

Antes, porern. de gravarmos 0 espaco de trabalho vamos ver a que nele se encontra. Comande:

m,otudD

51

o HOT-lOGO mostrara os procedimentos e variavsis arrnazen ados em sua mem6ria.

Se nao quisermosgravar todos eles, devemos eliminar do espac;o de trabalho os que nao nos lnteressarn. Para tanto, usamos os comandos eln ou elns para eliminar variave!s e el ou elps para eliminar procedimentos.

Agora, tendo no espaco de trabalho 56 a que precisamos, podemos gravar da seguinte manetra:

9 r ....... et ud 0 ":NOME ou

gravetudoo::: "'NOME

o primeiro comando grava em disco e 0 segundo em fita cassete.

o nome dado para 0 arquivo e aleat6rio, porern sernpre deve vir precedido de aspas l "I.

Para gravar figuras, 0 HOT·LOGO utiliza numeros que representam a confiquracao dessa figura. Assim, antes de gravar uma figura, devemos arrnazena-la em urna varlavel.

Por exemplo, se tivermos editado urn robo na figura 10, procedemos da seguinte maneira:

Feite lsso. 0 robo esta armazenado na memoria do cornputador. Para grava-Io, basta usar gravetudo (ou gravetudoc) sucedido pelo nome que quiser dar ao seu arquivo. Nao se esqueca das aspas.

Para carreqar urn arquivo do disco ou fita para a mem6ria do cornputador, usamos, respectivamente, as cornandos:

o:::arregUR "NOME

ou

o:::arrRSlUI!:'C "'NOME

DICIONA.RIODO HOT·LOGO

ENTRADAS

A seguir sao relacionadas varlas palavras, simples au compostas, sem qualquer espac;o entre seus caracteres. Nos diversos comandos e operacoes do HOT-LOGO cada uma dessas palavras representa umaentrada necessaria a sua slntaxe,

52

CANAL: um inteiro de 0 a 2.

CARACTEA : uma letra do alfabeto. Um numero ou um sinal de pontuacao,

COLUNA : um nurnero inteiro de 0 a 28.

CORNUMERO: um nurnero intelro de 0 a 15. 0 HOT~LOGO aceita nurneros maiores, divid indo-os par 16 e uti iizando 0 resto como nurnero de entrada. Exemplo : se 0 nurnero for 16 0 resto sera 0 e entao este sera 0 nurnero utilizado.

DEC: um nurnero decimal inteiro de 0 a 255. ENDEREQO : um nurnero inteiro de 0 a 65535.

FJGURALISTA : Jista de 32 numerus que representam a forma de

urna figura de tartaruga.

FREQUENCIA : um nurnero de 40 a 4095. JOYSTICKNUMERO : 0 inteiro 1 au 2. lINHA : um nurnero inteiro de 0 a 23 ..

USTA : in+orrnacoes contidas entre colchetes, LlSTAINSTRUQOES : lista de procedimentos executavels pelo

HOT-LOGO, entre colchetes.

lISTANOMES : llsta de palavras que nomeiarn procedimentos., variaveis au llstas de propriedades. Deve estar entre colchetes ..

USTANUMEROTARTARUGA: lista de nurneros intetros de 0 a 29, entre colchetes.

NOME : palavra que denornina um procedimento, uma vartavel au uma lista de propriedades.

NOMEARQUIVO : palavra unlca que denomina um arquivo. A palavra pode ter no maximo 8 caracteres para disco e 6 para fita-cassete. Nao pode incluir pontos au virgulas e deve ssr precedida de aspas (").

NOVONOME : palavra uttlizada para denominar um novo procedimento.

NUMERO : um rnirnero qualquer.

NUMEROFIGURA ou NUMERONOVAFIGURA : um inteiro de 0

a 59.

OBJETO : pode ser uma palavra, uma lista ou um rnirnero. OCORRENC1ANUMERO : urn lnteiro de 0 a 5.

PALAVRA : uma sequencia de caracteres sem espacos, PORTA : um ruimero de 0 a 255.

PRED : predicado, e uma operacao que produz como salda a palavra "fa lso " ou "verd",

53

PROP: palavra que denornina urna propriedade. TARTARUGANUMERO : urn inteiro de 0 a 29.

TEMPO : urn inteiro que varia de 0 a 255 (60 equivale a 1 se-

gundo).

SOM : um inteiro de 0 a 31. VOLU ME : um i nteiro de 0 a 15.

X ou Y : ruimeros que representam as coordenadas x ou y.

apaguetexto

Apaga todo 0 texto da tela.

(apaguetexto = att)

COMAN DOS PRIMITIVOS E OPERA<;:OES

algum PREDt PRED2

I nd ica "verd " se a Iguma das suas entradas for verdadeira e

"false" se todas as entradas forem falsas. Exemplo: aprenda teste :x

se algum :x>3 :x>7 [esc [maior que 3]] [esc [menor que 3]]

apaguedesenho (apaguedesenho = ad)

Apaga a tela grafica sem alterar a poslcao da tartaruga.

aparec;atat (aparer,;atat = atl

Torna visfvel a tartaruga ou as tartarugas que estao sendo usadas.

aprenda (aprenda = ap)

Perrnite que ensinernos novas comandos ao HOT-LOGO ativando 0 modo de edlcao. Para sair do editor pressione ESC. Exemplo:

ap quadrado

arctan N U M ERO

Signifiea areo tangente, produz um valor em graus (-90 a

90) da tangente do ruirnero. Exemplo: esc arctan 20

arquivos

Lista todos os names contidos no arquivo em disco. Equiva-

54

Ie a mostrar 0 indice dos arquivos ou diret6rio. Exemplo: arquivos

arredonde NUMERO

Arredonda 0 valor de urn numero para inteiro. Exemplo: esc arredonde 2,7

ascii CARACTEA

Produz 0 numero correspondente ao codiqo ASCII do caracter em questao. Exemplo:

esc ascii "c

atencaotat NUMEROTARTARUGA

atencaotat LI STAN U M EROT ARTARUGA (atencaotat = atat)

Ativa a tartaruqa ou tartarugas que obedecerao aos comandos subsequentes. Exemplo:

atat 0 pf 50 atat 1 at pt 50 atat 2 at pd 90 atat [0 1 2] rep ita 4 [pf 20 pd 90]

atribua NOME OBJETO (atribua = atr)

Cria uma gaveta na memoria do computador que armaze-

nara objetos HOT-LOGO. Exemplo:

atr "cor [amarelo azu I branco] atr "A 1 0

atr nome" Maria

aumentelimite (aumentelimite = al)

Estabelece uma modalidade qrafica em que a tela constitue uma janela muito maior, nao permitindo que visualizemos a tartaruga fora dos limites da mesma.

cada LIST AINSTRUCOES

Permite que cada tartaruga ativada execute sequenclalrnente a lista de lnstrucoes. Exemplo:

pe 90 atat 1 pd 90 dt

atat [0 1] cada [repita 360 [pf 0,5 pd 1]]

caractere NUMERO (caractere = car)

Produz como saida 0 caracter, cujo c6digo ASCII se espect-

55

fica em NUMERO. Exemplo.: esc car 65

care.ntrada (car. entrada = care)

lnterrornpe a execucao do procedirnento, se for 0 caso e espera uma entrada via teclado (1 caracter). Exemplo:

esc care (e digite qualquer tecla)

(esc [eu pressionei] care)

carimbe

Carimba na tela uma c6pia da figura da tartaruga ou tartarugas ativadas na posicao que elas se encontrarem. A figura carimbada tera a cor do lapis que estiver sendo usada. Exemplo: carimbe pf 50

rep ita 18 [carimbe pf 20 pd 20]

carimbetudo

Carimba a figura da tartaruga ativada com a cor do lapis per toda a tela. Se quisermos carimbar a figura da tartaruga dentro de uma regiao limitada. basta coloca-la nesta reqlao e nao deixa-la sobre 0 limite. Exemplo: se quisermos um quadrado carimbado com a figura 1.

repita 4 [pf 80 pd 90]

pd 45 un pf 10 ul mudefiqt carimbetudo

carregue NOMEAROUIVO

Carrega 0 arquivo NOMEAROUIVO do disco para a area de trabalho (mem6ria do cornputador}. Exernplo:

carregue ~ trabalho

carreguec NOMEARQUIVO

Significa carregue cassete. Carrega 0 arquivo NOMEARQUIva da fita cassete para a area de trabalho. Exemplo:

carreguec .. trab

Observacao: E i mprescindive I que a tecla PLAY do gravador esteja pressionada e que a arquivo NOMEARQUIVO exista, pais senao 0 HOT-LOGO ficara procurando-o indefinidamente.

carreguedes NOMEAROUIVO

Significa carregue desenho. Carreqa a desenho NOM EAR-

58

QUIVO do disco para a area de trabalho. Exemplo: carreguedes "carro

coloque OBJETO NOME (coloque = col)

Cria uma vartavelanaloqa ao atribua porern, com as entra-

das invertidas. Exemplo: col 10 "A

col "Maria "nome col [ abc] "Ietras

coloqueprop NOME OBJETO

Cria urna gaveta com a nome da propriedade que armazena

um valor. Exemplo:

co loqueprop "zerar "can 0 ap contar :con

S8 : can> 10 [esc: con atr "con prop ~ zerar "con esc: con] [mo :con contar :con + 1]

fim

com i mpressora

Ativa 0 canal de salda da impressora. Use-o apenas se vocs tiver uma.

congele

Suspende a velocidade da tartaruga ou tartarugas ativadas ate que se descongele. Exemplo:

mudevel 20 congele espere 90 descongele

conteudo NOME

Indica 0 conteudo da varlavel NOME. Exemplo: atr "forma "trianqu 10

esc conteudo "forma

trlanqulo

coorx

Significa coordenada x. Indica a coordenada x da tartaruga em uso. Exemplo:

pd 90 pf 70 esc coorx

coary

Significa coordenada y. Exempla: mudey (coary + 30)

57

copiafig NU M EROFI G U RA N U MERONOVAFI G U RA

Significa copla figura. Copia a figura especiftcada em NUMEROFIGURA para ser a figura de NUMERONOVAFIGURA. Exemplo:

copiafig 1 15

Observacao: agora a figura 15 sera tarnbern um coracao.

cordefundo

Indica cor do fundo. Exemplo: esc cf

(cordefundo

cf)

copie NOME NOVONOME

Faz uma ccpia de modo de edlcao do procedimento NOME com NOVONOME. Exemplo:

copie "quadrado U quadrtlatero

Observacao: 0 procedimento quadrado deve ter sido definido anteriormente.

cordebaixo (cordebalxo = cb)

Indica a nurnero da cor existente sob a lapis da tartaruga.

Exemplo:

esc cb

cordolapls lcordolapts = cl)

Indica a cor do lapis que a tartaruga esta usanda. Exemplo: esc cl

cortat

Indica a cor da tartaruga ativada. Exemplo: esc cortat

cos NUMERO

Significa cosseno. Indica 0 casseno de NUMERO em graus.

Exemplo:

esc cos 60

criafigl NUMEROFIGURA FIGURALISTA

Significa cria figura lista. Concede a NUMEROFIGURA. a

58

forma definida em FIGURAUSTA. Veja expllcacoes de listafig. Exemplo:

criafigl 10 listafig 3

Observacao: tara com que a Figura 10 tenha a mesma forma que a Figura 3.

cursor

Indica a poslcao do cursor na forma de uma lista [x y].

Exernplo:

esc cursor

defina NOME LlSTA

Define urn procedimento sem entrar no modo de edic;:ao.

Exemplo:

defina "clrculo [[] [repita 360 [pt 0,5 pd 1]]] cfrculo

Observe que 0 HOT-LOGO exige que a primeira lnstrucao da lista seja 0 nome da entrada do procedimento. No caso, como circulo nao exige entrada, a primeira lnstrucao e uma lista vazia.

desaparecatat (desaparec;:atat = dt)

Torna lnvisivel a tartaruga ou tartarugas ativadas.

descongele

Desativa 0 comando congele, fazendo com que as tartarugas voltem a ter a velocidade definida no comando mudevel.

diferenc;:a NUMER01 NUMER02

Indica 0 resultado da subtracao dos nurneros lndlcados.

Exemplo:

esc diferenca 50 10 esc - (diferenr,;:a 10 50)

dire~ao Idirecao = de)

Indica em graus e no sentido horarlo a orientacao da tartaruga em relacao a sua direcao original que e a norte. Exemplo: de;:

rnudedc 50+dc;:

direc;:aopara [X YJ

Indica em graus 0 giro a ser dado pela tartaruga para apontar

59

o ponto [X Y] a partir do norte. Exemplo: esc dlrecaopara [20 20]

dlstanela [X YJ

Indica a distancia entre a tartaruga ativada e a poslcao [X V]. Exemplo:

esc dlstancia [25 30]

e PRED1 PRED2

Indica "verd " sempre que todas as entradas forem verda-

dei r as e "fa I so" qu ando u ma del as fo r fal sa. Exem pi 0: ap inter :x

se e .x > 10 :x < 20 [Iesc :x [pertence ao intervalo]) pare]

(esc :x [nao pertence ao intervalo]) fim

edHg NUMEROFIGURA

Significa edite a figura. Coloea a figura NUMEROFIGURA no modo de edicao de fiquras. Exernplo:

edfig 10

edite NOME ou lISTANOMES fedite = ed}

Entra no modo de edicao de procedlrnentosvldentlco ao do eomando aprenda s6 que admite a edicao de um ou rnais procedimentos. Exemplo:

ed "desenho1

ed [desenho1 desenh02 desenh03]

edns

Signifiea edite names .. Coloca no modo de edlcao todas as variaveis ja criadas.

elemento NUMERO OBJETO

Indica 0 elemento que esta na poslcao NUMERO em OBJETO.

Exemplos:

esc elemento 3 "Maria

A resposta deve ser r, pais se trata do elemento nurnero 3 de Maria.

esc elemento 2 [Ana Maria da Silva]

60

A resposta deve ser Maria. pais se trata do segundo elemento da lista.

eJimine NOME ou LlSTANOMES Elimina da area de trabalho eados. Exemplo:

el "circulo

(elimine = el) o(s) proeedimento(s) especifi-

eliminearq NOMEARQUIVO

Signifiea elimine arquivo. Apaga do disco 0 NOMEARQUIVO.

Exemplo:

eJiminearq .. arqulvo i

eln NOME au LIST ANOMES

Signifiea elimine nome. Apaqa da area de trabalho 0 NOME ou LIST ANOMES de variavels espeeificadas pelos eomandos atribua e coloque. Exemplo:

atr "cor [azu 1 amarelo bran co] el n ~ cor

elns

Signifiea elimine nomes. Apaga da area de trabalho todas as variaveis.

elps

Signifiea elimine procedimentos. Apaga todos os proeedimentos da area de trabalho.

eltuda

Signifiea el im i ne tudo. Apaga da area de trabal ho todos as proeedimentos, variaveis e propriedades. Deve ser usado com mu ita atencao.

em.colisao TARTARUGA1 TARTARUGA2 LlSTAINSTRUCOES

Ativa um "observador " que ficou atento a uma colisao entre as duas tartarugas determinadas. Quando elas se chocam executa a LlSTAINSTRUCOES. Veja explieac;6es de observador. Exemplo:

ern.collsao 0 1 [mudevel 50]

envie OBJETO

Detern 0 procedimento em curse e envia 0 resultado para

61

o nivel superior. Deve-se usar dentro de procedimentos. Exemplo:

ap en

envie .. Maria tim

ap Frase

(esc [eu me chama] en) fim

escreva OBJETO

Imprime 0 OBJETO designado

linha seguinte. Exemplos: esc 1

esc" Maria

esc [eu sou uma lista]

Ohservacao: Este comando s6 permite uma entrada porern. podemos amplia-lo usando parenteses. Exemplo:

(esc "eu "sou Maria)

(esc "ola [eu sou 0 HOT-LOGO])

(escreva = esc) na tela e coloca 0 cursor na

espere NUMEAO

Provoca uma pausa na operacao, cuja duracao sera NUMERO 60 avos de segundo. Exemplo:

espere 120

Deve provocar uma pausa de aproximadamente 2 segundos.

falso

Indica a paJavra reservada "falso ",

fa~a lISTA

Manda executar as instrucoes que estiverem em LlSTA.

Exemplo:

faca elemento 2 [[pf SO] Cpt SO] [pd 90] [pe 90]]

fig

Indica 0 numero da tartaruga em usa. Exemplo: mo fig

62

tim

E usada para determinar a fim de urn procedirnento enslnado pelo coman do aprenda.

gravedes NOMEAROUIVO

Significa grave desenho, isto e, armazena a imagem da tela no arqulvo NOMEARQUIVO. Exemplo;

gravedes "dese1

gravetudo NOMEARQUIVO

Grava todos as procedimentos, variaveis. propriedades que estiverem na area de trabalho em um arquivo de disco denominado NOMEARQUIVO. Exemplo:

gravetudo "arqu ivo1

gravetudoc NOMEARQUIVO

Grava tudo que estiver na area de trabalho em um arqulvo de fita cassete chamado NOMEAROUIVO. Exemplo:

gravetudoc "arq1

Observacao: NOMEAROUIVO s6 pode canter 6 caracteres,.

Nao aceita virgulas, pontos ou espacos em branco.

int NUMERO

Indica a parte inteira de nurnero. Exemplo: esc int 3.7

inverta

Substitui a figura da tartaruga em uso pelo desenho que estiver sob a mesma. Deve-se tornar muito cuidado para usa-lo pois, se a tartaruga em uso for de nurnero 36 a 59, rnudar-se-a a sua conflquracao e nao poderemos rnais te-la de volta.

t aconselhavel usar 0 comando inverta apenas com as figuras de 10 a 35 e quando a area sob a tartaruqa nao estiver em branco. sense teremos urna tartaruga i nvisivel.

joy JOYSTICKNUMERO

Indica um nurnero de 0 a 8, que se refere a poslcao atual do joystick. Exemplo:

esc joy 1

juntenofim OBJETO LIST A (juntenofim = jf)

Acrescenta urn OBJETO no fim da L1STA indicada. Exemplo: rna jf "seis [quatro cinco]

Deve resultar em [quatro cinco seis].

63

juntenoinicio OBJETO LlSTA (juntenoinfcio ji)

Acrescenta urn OBJETO no lnicio da LIST A indicada.

Exempla:

rna ji [urn] [dais tres ]

Deve resultar em [[urn] [dais tres j ],

Iiberemem

Significa libere memoria. Rearranja a memoria do computador, crianda rna is espaco.

lin.entrada (lin.entrada = line)

Interrompe a execucao do procedimento, se for 0 caso, e espera uma entrada via teclado, devolvendo uma lista depois de pressionada a tecla RETURN. Exemplos:

mo line

esc line

lista .. 0 BJ ETO 1 OBJ ET02

Indica uma lista formada por suas entradas. Se as entradas farem duas palavras, forrnara uma lista com as duas porern, se as entradas forem duas listas formara uma terceira lista contendo as duas primeiras. Comando similar a sentence. porern conserva as colchetes das entradas. Exemplos:

esc (Iista .. eu .. sou .. uma .. lista) esc linha [eu sou] [uma lista]

Observacao: usando 0 parenteses podemos utilizar lista com mais de duas entradas.

listafig NUMEROFIGURA

Produz uma lista de 32 elementos que representa a configuraC;ao da tartaruga NUMEROFIGURA. Utilizado na crtacao de figuras por lista normal mente com a criafigl. Exempla:

atribua .. coracao I istafig 1

memlivre

Signifiea memoria livre. Indica a area de trabalho disponfveJ.

mons

Significa mostre nomes. Imprime na tela 0 nome e a conteudo de tadas as variavels armazenadas na area de trabalho.

64

moobs

Significa mostra observadores. Mostra todos os "observedores " definidos pelos comandos em.collsao e quando. Veja explicacao de observadores.

mop NOME lISTANOMES

Significa mostra procedimento. Mostra 0 procedimento NOME ou os procedimentos especificados em L1STANOMES que estiverem na area de trabaJho. Exemplos:

mop .. circulo

mop [circulo quadrado retanqulo ]

moprop

Significa mostra propriedades. Mostra todas as propriedades incluidas na area de trabalho.

mops

Mostra procedimentos. Exibe na tela todos as procedlrnentos incluidos na area de trabalho.

mostra OBJETO (mostra = rna)

Mostra na tela 0 OBJETO especificado. Se for uma lista conserva os coJchetes. 0 cursor e colocado na linha seguinte. Exemplo:

atr .. cor [azul arnarelo verde] mo : cor

Deve resultar em [azul amarelo verde].

mostrearq NOMEARQUIVO

Significa mostre arquivo. Mostra 0 conteudo do arquivo de nome especificado por NOMEAROUIVO que esteja armazenado em disco. Exemplo:

mostrearq .. meuarq

mots

Significa mostra tftulos. Mostra a nome (titulos) de todos as procedimentos incluidos na area de trabalho.

motu do

Significa mostra tudo. Mostra todos as procedimentos, varlaveis e propriedades incluidas na area de trabalho,

65

mudecf CORNUMERO

Signifiea mude cor do fundo. Muda a cor do fundo para a CORNUMERO especificada. Exemplo:

mudecf 1

mudecl CORNUMERO

Muda a cor do lapis da tartaruga au tartarugas ativadas para a cor especificada em CORNUMERO. Exemplo:

mudecl 3

mudecor CORNUMER01 CORNUMER02

Troea a cor do qrafico desenhado na tela e do texto da CORNUMER01 para a CORNUMER02. Exemplo:

mudeeor 15 8

mudect CORNUMERO

Muda a cor da tartaruga au tartarugas para a cor especlflcad a em CORNUMERO. Exemplo:

mudect 8

mudecursor [COLUNA LlNHA]

Muda 0 cursor para a [COLUNA LlNHA] especificada.

Exemplo:

mudecursor [20 10]

mudedc NUMERO

Muda a orientacao (em relacao ao norte) da tartaruga au tartarugas. cctocando-as na dlrecao espeeificada em NUMERO em graus. Exemplo:

rnudedc 90

mudefig NUMEROFIGURA

Muda a figura da tartaruga ou tartarugas ativadas para a figura especificada em NUMEROFIGURA. Exemplo:

mudefig 3 .

mudepos [X YJ

Coloea a tartaruqa ou tartarugas ativadas na pOSiC;:BO [X YJ espeeificada. Nao se esqueca que a tartaruga deixa rastro, Exemplo:

mudepos [-30 40]

66

mudeproporcac NUMERO

Modifica para NUMERO 0 tamanho do passo da tartaruga no eixo x em relacao ao eixo y. 0 valor habitual de prOpOt980 e 1,1. Exemplo:

rnudeproporcao 0,5

mudeteto LlNHA

Apaga a tela de texto e fixa 0 cursor na LlNHA determinada, deixando a margem superior livre para graficos. Exemplo: mudeteto 20

mudevel NUMERO

Muda a velocidade da tartaruga ou tartarugas ativadas para o rnirnero especificado. A velocidade normal da tartaruga e a e pode variar de -128 a 128.

mudevelx NUMERO

S.ignifica muda a velocidade x. Estabelece a componente x da velocidade da tartaruga au tartaruqas ativadas fixando-a em NUMEAO. Exemple:

mudevelx 20

mudevely NUMEAO

Significa muda a velocidade y. Estabelece a componente y da velocidade da tartaruga ou tartarugas ativadas fixando-a em NUMERO. Exemplo:

mudevely 10

mudex X

Faz com que a tartaruga se desloque para a postcao X especificada. Nao altera a poslcao y. Exemplo:

mudex 30

mudey V

Mantem a posicao X da tartaruqa, fazendo com que ela se desloque para a postcao V especificada. Exemplo.

mudey 70

nurn.elem OBJETO (num.elem = nell

Devolve 0 nurnero do elemento que compos OBJETO. Se for uma lista, devolve 0 ruirnero de palavras. Se for uma palavra.

67

devolve 0 nurnero de caracteres. Exemplos: esc nel [ABCD]

esc nel "Hot

nivelinicial

Cancela a execucao de todos os procedimentos e devolve o controle ao HOT-LOGO. Exemplo:

esc [vau voltar ao Logo] nivel inicial esc "ADEUS

nao PRED

Indica "verd" se PRED for falso, ou "falso " se PRED e ver-

dadeiro. Exemplo: ap emaior :X

se nao :X>O [esc [menor que zero]] [esc [maior que zero] ]

tim

e maier 10

Observacao: Nao entre 0 valor zero neste exemplo ou ocorrera urn erro.

palavra PALAVRA1 PALAVRA2 (palavra == pal)

Concatena PALAVRA1 com PALAVRA2 sem deixar espac;:os.

Exemplo:

esc pal • Mari "ana

esc (palavra .. Ma "ri "ana)

Ambos as exemplos devem resultar em Mariana.

paracentro (paracentro == pc)

Leva a tartaruga au tartarugas ativadas para a centro da tela delxando-as na sua posi(,':ao orrqinal. Nao se esqueca que a tartaruga deixa rastro ao se deslocar.

paracentroa (paracentroa == pea)

Leva a tartaruga au tartarugas ativadas para a centro e apaga a tela grMica.

paradireita NUMERO (paradireita == pd)

Vira a tartaruga ou tartarugas ativadas para a direlta de urn numero de graus especiflcado par NUMERO. Examplo:

pd 90

68

pal'Si:!squBrda NUMERO [paraesqLlfrrda, = pel

Vlira a ta'rtll1r1uga ou tartarugillJS atlvadas para 8 esquliI'rda de urn mjmerQ de ,graus especincado par NUMERO: Ex,emplo:

pe 90

parafflll!nte NUMEAO [parafrente = pU

De s: I (lea a ~aJl"~a ru g,a au tartarugas atlvadas pa r8 f rel'lll~,e' 0 rlilmero de passoa sspi1lciiiijcado par NUMEAO. Exelmp,~o:

pf 1,00

Ipal'at11',as, NIJMERO l[p,I!!Jr'a,trolis = pt}

D'esl'oca a tall'taruga Oll tartarugas ativad<ls para trssl 0 numero de passes especilieade pair NU,MERO. Exemplo:

pt 1100

,paine

lntarrompe 01 prccedtmento ati'i,l"~Jdij'. So, S'I:!! usa denlrQ de procedlrlmen~05 •

IPWnllle'

Preenche a tela, ou parte dsla, que Bste]a llmltada corn a co~ do lapis us-ado pela t,l1!Jrtaruga. Esse cornandn SD tern efei~o se a tartalruJga nio estiver sabre' um t rliil<j 0. Exem,p,I'il':

mudecl a pllnte

ponha OBJ ETO

Mos ~ra, 08JIETO n a tel ill e eeleca Q c ursnr il,!ii mesma In ntn 8.

S8' usa do com ~I!I i s de Uma entlroda. concaeen ill sam d:ei xa r esp:a~o,. A,1iI ~l OgiD ~Ujl coma n do pa ~.elI'l;rlra. ExetrlFII.os;

pcnha " 0 lie

(pDnh~ M ola ~ 11,'0

ponhaponto [X V] (ponhapolilto,

Colocal urn ponto na eeordenade [)C, V]i. E!(emplo.: mudeof 1

pp nm 20]

posi !jl30 (pos iCi::iD == pas)

Ilndh::lt a posrC;~o a~uilll da t.artarug,aJ ,at:iv,ada Ina f'CrflillEi LX V]. bemplo;

esc pas h;; aD

primeiro OBJETO (primeiro = pri)

Devolve a primeiro elemento do OBJETO. Exemplos:

esc pri .. Logo

esc pri [gato cachorro pato]

primitivas

Mostra na tela a lista de palavras primitivas Icornandos) reservadas no HOT-lOGO.

produto NUMER01 NUMER02

Indica a produto de NUMER01 par NUMER02. Exemplos: esc prod uta 3 5

esc (produto 3 5 10)

proporc;ao

Devolve a atual proporcao entre 0 passo vertical e 0 passo horizontal da tartaruga. Exemplo:

esc proporcao

propriedade NOME PROP (propriedade = prop)

Devolve 0 valor da propriedade NOME. Exemplo:

coloque prop .. tartaruga "cor 5

esc prop "tartaruga .. cor

quando OCORRENCIANUMERO LlSTAINSTRUC;OES

Estabelece um "observador " para que execute a lISTA· INSTRUC;OES quando houver uma OCORRENCIANUMERO. Veja expilcacoes de observador. Exemplo:

quando 0 [pf 5 pd 5]

quem

Mostra a I ista de tartarugas que estao ativadas no mornento. Exemplo:

esc quem

quoclente NUMER01 NUMERO 2

Devolve 0 resultado da divisao de NUMER01 par NUMER02.

Exemplo:

esc quociente 30 5

70

raizq NUMERO (raizq rq)

Indica a raiz quadrada de NUMERO. Exemplo:

esc rq 9

repita NUMERO LlSTAINSTRUC;OES

Executa a LlSTAINSTRUCOES 0 NUMERO de vezes determinado. Exemplo:

repita 4 [esc "HOTBIT]

reproduza

Armazena a numero ou sequencia de nurneros sorteados.

Exemplo:

reproduza scrteieate 10

resto NUMER01 NUMERO 2

Indica 0 resta da divisao do NUMEROt pelo NUMER02.

Exemplo:

esc resta 7 3

retireprop NOME PROP

Retira a propriedade PROP e seu valor da lista de propriedade especificada em NOME. Exemplo:

retire prop .. zerar .. can

reti retodasprop

Apaga todas as listas de propriedades da area de trabalho.

rg

Signifjca recomer;:a graticos. Restaura a tela gratica ill sua ccndicao inicial. Apaga as observadores, as desenhos, leva as tartarugas para 0 centro e devolve a cor branca para textos e desenhos e azul para 0 fundo.

saoiguais OBJET01 OBJET02

Verifica se OBJET01 e OBJET02 sao iguais devolvendo "verd " ou "falso ", Exemplos:

esc saoiquals "A "a

esc saoiquals 2*3 6

S8 PRED LlSTA1 LlSTA2

Se PRED for "verd" executa a LlSTAl de lnstrucdes senao

71

executa a lISTA2 ou a linha seguinte do procedimento.

Este coman do deve ser escrito na mesma linha e LlSTA2 e um pararnetro opcional. Exemplo:

se postcao = [0 0] [pf 90J [pt 90]

sem impressora

Desativa 0 canal de saida da impressora.

semprimeiro OBJETO (semprimeiro :::: sp)

Retira 0 primeiro elemento de OBJETO e retorna 0 que restou. Exemplo:

esc sp "Logo

semulttmo OBJETO (sernulttrno = su]

Retira 0 ultimo elemento de OBJETO e retorna 0 que restou.

Exemplo:

esc su [HOT LOGO]

sen NUMERO

Indica 0 sene do anqulo especificado em graus par NUMERO.

Exemp.lo:

esc sen 90

sentence OBJET01 OBJET02 (sentence = sn)

Concatena suas entradas com espacos formando uma lista unlca. Retira as colchetes externos de objeto. Analoqo ao cornando lista .. Exemplos:

esc sn "a [b c]

esc Isn "a "b [c [d]])

som TOM VOLUME TEMPO

Emite urn ruldo com as caracterfsticas TOM. VOLUME e TEMPO. Exemplo:

sam 20 7 50

soma NUMER01 NUMER02

Indica a soma dos nurneros fornecidos. Exemplo: esc soma 25 36

esc (soma 20 10 40)

72

sorteleata NUMEAO

Gera urn rulrnero pseudo-aleatorlo de 0 a 1. Exemplo: repita 3 [esc sorteiate 10]

s6tat TAATAAUGANUMEAO USTA ou USTANUMEAOTAATAAUGA USTA

Permite que a TARTARUGANUMERO ou a USTANUMERO TARTARUGA executem uma USTA de instrucees. Nao altera a lista de tartarugas .ativadas pelo comando atat (atencaotatl Exemplos:

s6tat [13] [repita 3 [pf 50 pf 120]] sotat 2 [pf 50]

tartaruga (tartaruga = tat)

Apaga a tela greifica e de texto, colocando a tartaruga no seu estado original ou seja, no centro da tela com velocidade 0 e orientada para 0 norte.

temcar

Indica "verd " depois que alguma tecla for pressionada. Em caso contrario indica "falso ", Exemplo:

esc terncar

temvalor NOME

Indica .. verd " sempre que 0 nome tenha s ido defi nido como variavel. Em caso contrarlo indica "falso ". Exemplo:

esc temvalor .. nome

texto NOME

Indica em forma de lista as instrucoes do procedimento NOME. Exemplo:

rno texto "quadrado

tirelimite (tirelimite = tl)

Quando a tartaruga sai da tela, permite a continuidade do desenho no lade oposto da mesma. Corresponde ao estado normal do HOT-LOGO.

todas

Gera uma lista de 0 a 29. E utilizado para ativar todas as

73

30 tartarugas. Exemplo: atat todas pf 30

todasprop NOME

Indica uma lista de todas as propriedades relacionadas com NOME. Para criar propriedades usa-se 0 cornando coloqueprop. esc todasprop "zerar

toque CANAL FREQUENCIA VOLUME TEMPO

Emite urn som pelo CANAL desejado, na FREQUENCIA, VOLUME e duracao (TEMPO) especificados. Exemplo:

toque 2 500 10 50

troquesinal NUMERO ou NOME

Indica NUMERO ou conteudo de NOME com sinal invertido.

Exemplos:

esc troquesinal 7

en (soma 7 troquesinal 4)

useborracha (useborracha = ub)

Faz com que a tartaruga ou tartarugas ativadas apaguem as Iinha par onde passarem. Para desativar usa-se ul.

useinversor (useinversor = ui)

Permite que a tartaruga ou tartarugas ativadas tracem Iinhas onde elas nao existam ou apague-as se ja existirem. Para desativar usa-se ul. Exemplo:

quadrado ui quadrado

Observacao: 0 procedimento quadrado deve ser definido previamente.

uselapis [uselapls = ul)

Faz com que a tartaruga use lapis e deixe rastro par onde passar, Corresponde ao estado natural do HOT·LOGO.

usenada (usenada = un)

Permite que a tartaruga se locomova sem deixar rastro. Para desativar use ul. Exemplo:

un pf 100

74

vel

Significa velocidade. Indica a velocidade da tartaruga ativada. Exernplo:

esc vel

velx

Indica a componente horizontal da velocidade da tartaruga ativada.

vely

Indica a componente vertical da velocidade da tartaruga ativada.

verd

Indica a palavra "verd ",

versao

Indica a versao do seu HOT-LOGO.

ultimo OBJETO (Ultimo = ult]

Devolve 0 ultimo elemento de OBJETO. Se 0 objeto for uma palavra, devolve um caracter, se for uma llsta, devolve uma palavra. Exemplo:

esc ult .. Logo

esc ult [HOT LOGO]

ebotao JOYSTICKNUMEAO

Indica .. verd" sempre que 0 botao do JOYSTICKNUMERO estiver pressionado; caso contrario, produz "falso ". Exemplo: esc ebotao 2

ejoy JOYSTICKNUMEAO

Indica "verd" sempre que 0 JOYSTICKNUMERO estiver acionado: caso contrarlo, produz "falso ". Exemplo:

esc joy 2

elista OBJETO

Indica "verd" sempre que 08JETO for uma lista; case contrario. indica "false". Exemplo:

atr b i cho [gato pato]

esc elista :bichos

75

enumero OBJETO

Indica "verd " sernpre que OBJETO for um nurnero: caso contrarlo. indica "falso ". Exemplo:

esc enurnero 10

epalavra OBJETO

Indica "verd" sempre que OBJETO for uma palavra: caso contrarto. i nd lea "falso ". Exemplo:

esc epalavra "Logo

eprimitiva OBJETO

Indica "verd " sempre que OBJETO for uma palavra reservada do HOT-LOGO. Exemplo:

esc eprlrnitlva "palavra

eprocedimento NOME

Indica "verd " sempre que NOME for um procedimento defintdoe que esteja na area de trabalho: caso ccntrario, indica "false". Exemplo:

esc eprocedlmento .. 9

evazia OBJETO

Indica "verd " sempre que OBJETO seja vazio; caso contrario, indica .. falso ", Exemplo:

€ovazia .. palavra

evisivel

Indica "verd" sempre que a tartaruga ativada for vis ivel; caso contrarto, indica .. false". Exemplo:

evlslvel

COMANDOS PRIMITIVOS ESPECIAIS

Os comandos primitivos especiais no HOT-LOGO vem precedidos de ponto [.J para evidenciar sua importancla e 0 seu perigo.

Os cornandos especiais .entra e .sal sao especfficos para ver ou enviar mensagens a qualquer uma das 2.56 portas de entrada e salda disponiveis.

Os comandos .chame, .deposite e .examlne permitem utili-

76

zar rotinas em linguagem de maquina e ter acesso direto a memoria do computador.

A seguir, mostramos a sintaxe e descrlcao dos comandos especiais .

. entra PORTA

Produz como salda 0 rnimero que tenha encontrado na porta especificada pelo nurnero PORTA. Exemplo:

esc .entra 168

.sai PORTA DEC

Envia a porta especificada pelo numero PORTA 0 numero

DEC. Exemplo:

ap zumbido

.sai 170 255 .sai 170 127 zumbido tim

Execute 0 procedimento zumbido e adivinhe 0 resultado .

. chame ENDEREC;O

Transfere 0 contra Ie a urna sub-rotina em linguagem de rnaquina que corneca no endersco especificado pelo nurnero ENDEREC;O. Exemplo:

.chame 192

Deve ser produzido urn "beep ft •

. deposite ENDEREC;O DEC

Escreve no sndereco especificado pelo rulmero ENDEREC;O a nurnero DEC. Exemplo:

.deposite 65533 12

.examine ENDEREf,;O

Produz como saida 0 numero que se encontra armazenado no endereco especificado pelo ruirnero ENDEREf,;O. Exemplo: esc .examine 65533

CARACTERES ESPECIAIS

Ha urns serie de caracteres que em HOT-LOGO tern urn significado especial. Para entende-Ios passarernos a descrever suas func;:6es e sintaxes.

77

" (aspas)

Colocadas antes de qualquer palavra, lndlcarn que essa palavra e urn conjunto de caracteres que deve ser utilizado conforme fot digitado. Nao e. por exemplo. um nome de procedimento ou conteudo de uma variavel. Os nurneros nao precisam de aspas. Exemplo: esc" Maria

: Idols pontos)

Colocados antes de uma palavra, indicam que estamos nos referlndo ao conteudo de uma varlavel.

Exemplo: atr .. A 10

esc :A

[ ] (colchetes)

Os colchetes sao us ados para definir listas. Sempre que uma entrada for uma llsta, devera vir entre conchetes.

Exemplos: esc [Maria Jose]

atat [0 1 2 3J repita 4 [pt 10 pd 90]

() Iparenteses)

Sao utilizados para modificar a ordern das operacoes maternaticas. Permitem ainda variar 0 numero de entradas de alguns comandos primitives e operadores.

Exemplas: esc 2*(5+2)

(esc .. batata .. frita .. gostosa) esc (pal ~ an .. da .. va)

esc (soma 20 10 15 40)

(esc (pal .. Ma ., ri .. ana) .. gastou (produto 25 450] .. cruzados.l

".. (barra invertida)

Permite tratar como caracter normal os delimitadores (par exemplo um espaco ou um sirnbolo maternaticol. Para tanto. devemas inclul-la antes dos sfmbolos [, (, I. +. -, *. I, =. <. >. y. "... e ainda -antes de um espaco em branco.

Exemplos: esc "<, ".. ".. oi

(esc .. 3".. *5".. = 3*5)

esc r-.-. -, -, HOr".. <, ->. -, LOGO]

78

INTRODUCAO AO HOT BASIC

Para controlar um computador, voce deve dar instruc;6es numa linguagem que ele "entenda". 0 HB-8000 entende, assim como a rnaiorta dos micro computadores pessoais, varlas lingens como COBOL, ASSEMBLY, C, LISP. BASIC. etc. Para que ele entenda uma determinada linguagem, ela deve ser carregada atraves de um programa especltlco.

U rna dessas li nguagens, porern, ja vem "carreqada n da fabrica e 0 computador ja a entende assim que e ligado: e 0 BASIC (Beginner's All Purpose Symbolic Instruction Code).

Esta I inguagem apresenta varios dial etas que diferem entre si nas var ias rnaquinas. 0 HOT BASIC, ou BASIC MSX, desenvolvido pela Microsoft. e constituido por um conjunto de palavras do idioma ingles e determinadas regras de sintaxe com as quais voce pode instruir a computador a realizar irnimeras func;6es.

A fi nal idade desse capitu 10 nao e explorer a fundo tadas as recursos que a poderoso HOT BASIC oferece mas apenas dar a voce um impulso inicial que Ihe possibilite fazer seus prirneiros programas. Casa haja interesse em aprofundar-se, recomendamos que leia a livro .. Manual de Basic" editado pela EPCOM.

o TECLADO

Para cornunicacao com a computador deve haver um modo de Ihe fornecer lnstrucoes e outro dele responder.

Geralmente 0 teclado e 0 meio utilizado para dar instrucoes ao computador. E a tela de TV e 0 que ele utiliza para responde-las.

Quando voce liga 0 rnicrocornputador sao apresentadas algumas mensagens de ldentificacao do sistema (veja as figuras 1.11 e 1.12) e apos alguns segundos deve aparecer a palavra "Ok ". Essa e a lndtcacao de que a computador esta pronto para aceitar as seus comandos. Surge tarnbern um quadrado branco logo abaixo da palavra "Ok ". Ele e chamado de "cursor" e sua oostcao na tela indica a local da proxima letra que voce for digitar.

Quanta ao teclado, parece 0 de uma maquina de escrever.

No entanto, ele contern algumas teclas especiais que se fazem

79

necessanas para que haja uma comunicacao efetiva entre voce e 0 computador. Estas teclas encontram-se sombreadas na figura 4. 1 e suas funcoes sao descritas a seguir.

(1) SHIFT: Essa tecla e usada para digitar letras rnauisculas au para obter os caracteres impressos na parte superior das teclas. Quando pressionada juntamente com a tecla GRAPH (3), obtern-se a grupo de simbolos qraficos mostrados na figura 1 .19.

(2) CAPS: Cada vez que essa tecla for pressionada, havera rnudanca na apresentacao das letras: se estiverem sendo mostradas em rnlnusculas passam a ser maiusculas e vice-versa. Possui uma lampada que, se estiver acesa, indica a modo ~ maiuscula ". Ela nao influl sobre as caracteres impressos na parte superior das teclas.

(3) GRAPH ou (4) CODE: Mantendo-se uma dessas teclas pressionadas ao digitar-se outras, obtemos a apresentacao na tela dos caracteres e simbolos graticos apresentados nas figuras 1 .1 B e 1.20.

(5) RETURN: Essa tecla e uma das mais importantes e mais utillzadas. Deve ser pressionada invariavelmente apes a digita- 9.3.0 dos dados, comandos ou lnstrucoes para que sejam enviados a memoria do computador.

(6) BACKSPACE : Ao ser presslonada, cancela 0 caracter situado a esquerda do cursor. Todos os caracteres situados a direita do cursor permanecem inalterados mas sao deslocados para a esquerda ao pressionarmos BACKSPACE.

(7) SETAS : Essas teclas movem 0 cursor nas dlrecoes e sentidos Indlcados e nao afetam os caracteres ja digitados.

(8) DEL : Cancela 0 caracter sobre 0 qual se encontra 0 cursor. Todos os caracteres seguintes sao deslocados em uma posicao a esquerda.

(9) INS: Essa tecla deve ser utilizada quando voce quiser acrescentar caracteres dentro de urna linha. Mova a cursor para a poslcao posterior aquela em que voce deseja acrescentar alga, pressione INS e digite 0 texto a ser inserido.

(10) CLS/HOME : Pressionando essa tecla, 0 cursor se poslciona no canto superior esquerdo da tela (POSi9ao denominada HOME). Se for pressionada juntamente com a tecla SHIFT, obtern-se a funcao CLS que significa "Clear Screen", ou seja, ~ Lirnpe a Tela". Nesse caso, a tela e limpa e 0 cursor se desloca para a pOSir;80 HOME.

80

· , d HOTBIT.

Teclas Espectais 0

Figura4.1- _

81

(11) F1 ... F10: Pressionar uma dessas teclas equivale a introduzir 0 comando a ela correspondente. Elas existem para reduzir 0 trabalho de diqitacao pois, ao pressiona-las. 0 computador executa 0 comando nelas programado. evitando-se desta forma. que voce tenha que digitar cada caracter que compos esse cornando. As funcoes Fl ate F5 sao acionadas diretamente atraves da simples pressao de cada uma delas. As teclas F6 a F10 sao acionadas com a pressao slrnultanea da tecla SHIFT.

Na parte inferior do video sao visualizados os comandos relativos a F1 ate FS. Ao pressionar SHIFT. sao visualizados os relativos a F6 ate FlO.

(12) SlCT : Nao e usada para proqrarnacao BASIC.

(13) STOP: Ao ser pressionada, detern a sxecucao de um programa em HOT BASIC. Pressionando-a novamente, a execucao continua a partir do ponto da Interrupcao.

Para efetivar a lnterrupcao deve-se pressionar simultaneamente as teclas CTRL eSTOP.

(14) ESC: Essa tecla e rnuitas vezes usada em aplicacoes de software, Nao tern qualquer eteito se utilizada diretamente. (15) TAB : Pressionando essa tecla, 0 cursor se desloca para a direita apagando os caracteres sobre os quais ele passar. a cursor s6 para ao encontrar uma coluna multiple de 8.

(16) CTRl : Essa tecla, quando pressionada junto com outras. serve para acessar funcoes especiais. como STOP. por exemplo.

DIGITACAO E EDICAO

Para que voce se fa mil iarize com 0 tecl ado, acompanhe passe a passo a diqltacao de urn pequeno prograrna. Nao se preocupe. por enquanto. em entender como ele funciona, pais 0 que importa agora e aprender a digitar.

Figura 4.2

10 COLOR lS.1.1 20 SCREEN 2

30 FOR 1=1 TO 20 40 X:RNO(1)*2'56 50 Y=RNO(1)*192 60 R=RND(1)*40

70 CIRCLE (X,Y).R.RNO(l)*lS B0 NEXT I

90 GOTO 90

82

Inicialmente, presaione uma uruca vez a tecla CAPS de modo que sua larnpada fique acesa. Isso faz com que as letras sejam mostradas em maiusculo assim como a listagem da figura 4.2.

Comece digitando a primeira linha e observe que 0 cursor vai se movendo para a direita.

Se voce errar a dlqitacao de algum caracter. basta apertar BACKSPACE e 0 cursor volta e apaga a caracter errado:

Ao terminar a diqitacao da primeira linha, pressione a tecla RETURN. Dessa forma, a cursor pula para a pr6xima linha da tela e a linha do programa dig.itada e armazenada na mem6ria do microcomputador. Para verificar isso, lirnpe a tela (SHIFT + HOME/CLS) e liste a conteudo da mem6ria comandando LIST seguido da tecla RETURN.

A te 18 deve f.icar como a i nd lcado na fi gura 4.3.

Figura 4.3

LIST

10 COLOR 15,1,1 Ok



Continuando a diqitacao do programa, vamos novamente limpar a tela {SHIFT + HOME/CLS) e digitar alinha de nurnero 20.

N°ao S8 esqueca de teclar RETURN ao chegar £10 fim da linha digitada.

Para verificar 0 conteudo da memoria, limpe nova mente a tela (SHIFT + HOME/ClS) e liste 0 programa com a comando LIST (seguido de REJURN). A tela deve agora se mostrar conforme a figura 4.4.

Figura 4.4

LIST

10 COLOR 15.1.1 20 SCREEN 2

Ok



83

Antes de continuar. podemos aprender um pequeno truque que facilita 0 seu trabalho toda vez que voce quiser limpar a tela e a seguir listar 0 programa. Como essa operacao e muito repetitiva, e canveniente atribui-la a uma tecla de funcao.

Para programar uma tecla de funcao, comande:

KEY n , "Iconteudo do comando)"

Onde n e 0 ruimero da tecla que voce deseja programar (1 a 10).

Se voce quiser que a comando armazenado na tecla seja automaticamente executado sem que a tecla RETURN seja pressionada, entao comande:

KEY n r "(conteudo do comando)" + CHRS(13)

Par exemplo, vamos programar a tecla F1, substituindo 0 comando COLOR nela existente par CLS+ LIST + RETURN. Assim digite:

Ap6s pressianar RETURN, a listagem das palavras armazenadas nas teclas de funcoes que aparece na ultima linha da tela e alterada. Observe que a palavra "color" foi substituida par "ClS:L1Sr.

Experimente agora apertar a tecla F1 e veja 0 resultado. A tela e limpa e 0 programa e listado sem a necessidade de pressionar RETURN. 1550 acantece, pois a c6diga do caracter relativo a tecla RETURN tarnbern fOi arrnazenado na programa- 9030 da tecla F1 (CHR$(13)).

Digite agora a linha 30 e nao esqueca 0 RETURN no final.

Aperte a tecla F1 e a tela que surge e conforme a figura 4.5.

Figura 4.5

LIST

.1.0 COLOR 15.1.1 20 SCREEN 2

30 FOR 1'"'1 TO 20 Ok



84

Vamos supor agora que voce queira alter ar a linha 30 para:

30' FOR 1""1 TO 50'

Para corrigir a lnstrucao que ja esta armazenada na memoria ,temos duas solucoes:

a) Aedigitar tada a nova linha e, neste caso, ao teclar RETURN, a antiga linha 30 e substituida, na memoria.

b) Editar a linha que [a esta na tela. Nesse caso, leve 0 cursor ate ° dfgito a ser corrigido com ° auxilio das teclas do cursor. Teele 0 5 em cima do 2 e pressione RETURN. Verifique esse procedimento na figura 4.6.

Figura 4.6

• PrE5sione IE e ~ ate obter: 30' FOR 1~1 TO ~

* Pressione S e obtenha: 38 FOR 1:1 TO SIll

• Teele RETURN e obtenha: 30' FOR 1=1 TO 58

Do:

Aperte agora F1 e note que a rnudanca foi executada. Agora altere a I inha

30' FOR 1=1 TO 50' para, 30' FOR 1 :1 TO 520'

Nesse casa, leve a cursor ate 0 0 do nurnero 50 e tecle INS [INSert). 0 cursor muda de forma, indicando que 0 proximo caracter a ser digitada nao se sobrepoe ao O. Digite 0 2 que voce quer inserir e note que a 0 e deslocado para a direita. Tecle, a seguir. RETURN.

Acompanhe 0 procedimento na figura 4.7.

Figura 4,7

• PressionelE e ~ ate obter: 30' FOR 1"'1 TO ~

• Teele ~ E obtenha: 30' FOR 1=1 TO 51IJ

• Diyite ~ e obtenha: 30' FOR 1=1 TO 5~

* Teele RETURN e obtenha: 30' FOR 1=1 TO 520'

Do:

85

Teele novamente F1 e perceba a mudanca etetuada.

Vamos agora estabelecer a lnstrucao original. Leve 0 cursor ate a caracter 5 e digite DEL {Delete] e depois RETURN. Veja a figura 4.8.

Figura 4.8

* Pressione ~ e ~ ate obter= 30 FOR 1=1 TO 520

* Pressione IDELI e obtenha: 30 FOR 1=1 TO ~

* Teele RETURN e obtenha: 30 FOR 1=1 TO 20

D

Aperte F1 e continue a diqitacao do programa com a linha:

40 X=RNO(1).256

Nao se esqueca do RETURN!

Olhando para a programa original (figura 4.2), notamos que as linhas 50 e 60 sao muito parecidas com a 40. Para poupar trabaIho de dlqltacao, podemos usar a linha 40 para qerar as outras duas. Para iSso, desloque 0 cursor para 0 4 e digite 5. A seguir, desloque 0 cursor para a X e digite Y e, finalmente, digite 0 numero 192 sobre 0 nurnero 256. Ao teclar RETURN, essa nova linha e incorporada na mem6ria sem que a 40 seja apagada. Veja a sequencia das operacoes descritas na figura 4.9.

Figura 4.9

• Use a teela ~ para obter: ~ X=RNO(1)*256

• Oigite ~ e obtenha:

SIll X=R NO ( 1 )<0256

* Use a teela ~ ate obter: 50 IKFRNO(1).2'56

* Oigite ~ e obtenha: 50 Y(3;!NO(1).256

* Use a teela ~ ate obter: 50 Y=RNO(1)-I:!I56

• Oigite ~.~ e ~ e obtenha: 50 Y=RNO(1).t92.

• Teele RETURN

Para se certificar que a nova linha foi armazenada, lirnpe a tela (SHIFT + HOME/CLS) e comande LIST 40·50. Voce deve obter na tela a listagem das linhas 40 e 50.

86

Voce pode agora gerar a linha 60, usanda a de nurnero 50 canfarme a figura 4. 10.

Figura 4.10

* USE a teela ~ para obter:

ISI0 Y=RNO(1.)*1.92

* Digite ~ e depois ~ ate obter: 60 rlJ=R NO (1 ) ,.. 1. 92

* Digite ~ e depois ~ ate abler: 60 R=RND<1.)*iII92

* Digite ~.~ e ~ para obter: 60 R=RND( 1.) *40.

,.. Teele RETURN

Aperte agora a tecla F1 e depots digite as linhas 70. 80 e 90, nao esquecenda de pressionar RETURN apes a digita9ao de cada uma delas.

Nao se preocupe com a ordem na qual as linhas sao inseridas na memoria. Se voce introduzir a de numero 90 e depois as linhas 70 e 80. 0 HB-8000 se encarrega de arquiva-las em ordem nurnerlca crescente.

Ao terminar a dlqitacao. aperte a tecla F1 para apagar a tela e I istar 0 programa. A tela deve rnostrar-se identlca a figura 4.2. Confira com cu idado. pois cada virgu la e essencia I para que 0 programa funcione.

Se houver necessidade de efetuar correcoes. use tudo 0 que foi aprendido ate aqui. E nunca se esqueca de pressionar RE· TURN para inserir uma nova linha na memoria.

Outros recursos de edicao sao mostrados no Apendice II. Limpe a tela (SHIFT + HOMEjCLS) e execute 0 programa comandando RUN (seguido da tecla RETURN) ou pressionando a tecla FS.

A tela deve se por no modo grafico e devem ser desenhados varies circulos de tamanhos, cores e em poslcoes diferentes. Para pa rar 0 programa e voltar a Ii sta-le. comande CTRL + STOP e depots F1.

Quando voce desligar 0 computador, 0 conteudo da memoria em que sao escritos os programas em BASIC (RAM) e apagado. Isso acontece tarnbern se for executado 0 comando NEW. Dessa forma, para preservar 0 programa digitado ele deve ser gravado.

A gravac;:ao pode ser feita em fita cassete atraves do comando CSAVE. Posteriormente. a recuperacao (Ieitura) sera feita

87

com 0 comando CLOAD. Para utilizar 0 gravador para arquivar programas. leia 0 Apendice I.

PROGRAMACAO

o computador executa as instrucoes a ele fornecidas de duas formas:

I) MODO DIRETO ou IMEDIATO: a lnstrucao e executada assim que for diqitada e seguida da pressao da tecla RETURN. Nesse modo. uma linha de instrucoes nao e precedida de um numero.

Por exemplo, digite:

PRINT"ESSE COMANDO IHPRIME ALGO NA TELA"

Pressione RETURN e veja 0 resultado.

A palavra PRINT pode ser substitufda por um ponto de interrcqacao (?). Por exemplo:

deve resultar em:

"21"

Nesse comando executou-se a trnpressao de aspas (") com o auxflio da funcao CHR$(34). a ruimero que aparece entre parenteses e 0 c6digo ASCII do caracter desejado (consulte 0 Apendlce II).

II) MODO INDIRETO ou PROGRAMA: a lnstrucao nao e executada imediatamente apos sua introducao com a tecla RETURN. Ela e armazenada na memoria para posterior execucao. Nesse modo. as linhas de instrucoes devem ser precedidas de urn mirnero.

Uma sequencia de Instrucoes contidas em linhas numeradas na ordem em que devem ser executadas e 0 que chamamos de programa.

Para exemplificar, digite 0 programa da figura 4. t t ,

as nurneros das linhas devem estar compreendidos entre 1 e 65529. Eles normalmente estao em intervalos de 10 para facilltar futuros acrescirnos de novas linhas.

Para executar 0 programa da figura 4.11, pressione a

88

tecla F5.

Seu funcionamento e simples:

Li nha 10: li mpa a tela com 0 comando CLS.

linha 20: imprime na tela 0 texto "A RAIZ OUADRADA DE 25 E". 0 ponte e virgula (;) colocado no final da linha, instrui 0 computador a realizer a proxima rmpressao a partir da posigao seguinte a do ultimo caracter impressa.

Li nha 30: i mprime a raiz quadrada de 25 (SOR(25) = il SQuare Root" de 25).

Linha 40: imprime uma linha em branco. Tem 0 efeito de "pular " uma linha.

linha 50: imprime a palavra FIM.

F.igura 4.11

10 CLS

20 PRINT-A RAIZ QUADRADA DE 25 ~-~ 30 PRINT SGR(25)

40 PRINT

50 PRINT"FIH"

Se voce quiser apagar ou el iminar alguma linha desse programa, isso pode ser feito de dais rnodos: um e digitar a ruimero da linha a ser apagada e depois teclar RETURN. 0 outro e usar 0 comando DELETE, como par exemplo:

DELETE 20: apaga a linha 20.

DELETE 3~-50: apaga da linha 30 ate a 50.

DELETE -30: apaga desde a primeira linha do programa ate a de ruimero 30. inctuslve.

Se voce quiser acrescentar qualquer linha. basta dlqita-la e depois pressionar RETURN. Atribua a ela um rrurnero contido no intervalo definido pelos ruirneros das duas linhas entre as quais voce quer inseri-Ia. Par exernplo, para incluir uma linha entre as de nurnero 40 e 50 digite:

Ha tarnbern a possibilidade de colocar rnais de uma instrugao em uma unica linha. Para tsso, separe as instrucoes par dais pontos (:) e respeite um rnimero maximo de 255 caracteres por linha. Par exemplo:

45 PRINT-HB-B000" : PRINT"HEH6RIA DISPON IVEL=";FRE(0);"BYTES- : PRINT

89

AS TELAS DE TEXTO

Existem dais tipos de telas no HB-8000 que permitem escrever textos. A escolha de cada uma delas e feita atraves do comando SCREEN.

Comandando SCREEN 0, e selecionada uma tela de 24 linhas de texto com, no maximo, 40 caracteres cada. Esta e a tela que 0 computador apresenta assim que e ligado.

Selecionando a outra tela de textos com a comando SCREEN 1, obtern-se uma tela que permite introduzir 24 linhas de texto com no maximo 32 caracteres em cada uma.

o numero de caracteres par linha pode ser alterado nas duas telas com 0 comando WIDTH. Seu formata e:

WIDTH n

onde. n=numero de caracteres par linha. Deve estar compreendido entre 1 e 40 na SCREEN 0 e entre 1 e 32 na SCREEN 1.

Par exemplo, comande:

SCREEN 0 e depois

WIDTH 20

Note que qualquer texto digitado a partir de agora tera no maximo 20 caracteres par linha. Para retornar ao estado inicial da SCREEN 0 comande WIDTH 39 e da SCREEN 1 execute WIDTH 29.

Uma das diferencas entre a SCREEN 0 e a SCREEN 1 e que na primeira as caracteres grMicos sao "truncados " e na segunda eles sao impressos "por inteiro". Par exemplo, comande SCREEN 0 e digite as teclas GRAPH e D simultaneamente. A seguir selecione a SCREEN 1 e volte a digitar GRAPH e D. Note a diferenca.

Note tarnbern que ao selecionar qualquer SCREEN a tela e previamente limpa. Isso ocorre porque e imposslvel a co-exlstencia de dois tipos diferentes de telas no HOT BASIC.

Manipulando textos, um dos comandos mais utilizados e 0 PRINT. Ele pode vir acompanhado de alguns sinais de pontuacao ou de outros comandos que possibilitam organizar a exlblcao dos textos na tela.

Para exemplificar. digite 0 programa da figura 4.12.

90

Figura 4,12

10 KEY OFF

20 SCREEN 0 : WIDTH 30

30 PRINTHMICROCOMPUTAOOR HOTBIT- 40 PRINT

50 PRINT TAB{S)-HB-8000-TABC20)-SHARpH 60 LOCATE 2.6

70 PRINTHTEXTO POSICIONAOO POR LOCATEH

80 PRINT .

90 PRINTHABc-.HI23- 100 PRINT-ABC-;-123- 110 PRINT

120 PRINY-TEXTO SEM-

130 PRINT-PONTO E UjRGULAH 140 PRINT

150 PRINTHTEXTO COM -;

160 PRINT-PONTO E UjRGULA"

A linha 10 do programa utiliza 0 comando KEVOFF que slrnplesrnente "desliqa" a vlsuallzacao na parte inferior da tela dos comandos associados as teclas de funcao. Para vlsuallaa-los nova mente utilize KEVON.

A linha 20 seleciona a SCREEN 0 e define uma larqura de 30 caracteres para 0 texto com 0 comando WIDTH.

A linha 30 efetua uma lrnpressao a partir da primeira posic;:eo da tela.

A linha 40 tem 0 efeito de "pular " uma linha de texto na tela.

A linha 50 efetua uma lrnoressao a partir da col una 5 e outra a partir da coluna 20 contadas desde a margem esquerda da tela. Era utiliza a funcao TAB (TABular). igual ao tabulador de uma rnaqulna de escrever.

A linha 60 utiliza 0 comando LOCATE que tem por funC80 poslcionar a proxima irnpressao. Sua sintaxe e:

LOCATE a.b

onde, a = nurnero da col una (0 a 39). b = ruirnero da linha (0 a 23).

As coordenadas das telas de texto sao definidas de acordo com a figura 4. 13.

As linhas 90 e 100 most-am a diferenea entre separar textos por vlrgulas ou ponto-e-virgulas.

As demais linhas do programa sao auto-explteattvas.

91

Figura 4,13 - Coordenadas das telas de textn,

o 1 2 3 39

1& r.==========::::;:"( 1

2

3

, ,

SCREEN ()

!Ill 23 31

QJ r;::==========::::::;~ 1

2

3

,

SCREEN 1

23 '-- -'

,

23L- -J

CORES

Ouando se liga 0 HB-BOOO, a tela apresentada e a SCREEN 0 em fundo azul escuro e caracteres impressos em branco. Essas cores podem ser alteradas com 0 comando COLOR. Sua sintaxe e a seguinte:

COLOR x,y,z

onde. x = c6digo da cor do texto Ifrentel, y = c6digo da cor da tela (fundol.

z = c6digo da cor das bordas da tela.

Os c6digos e as cores correspondentes sao mostrados na tabela 4.1.

Tabela 4.1

C6DIGO DA COR NOME OA COA
0 I n c o I c r
, preto
2 verde
3 verde el.ro
4 a~ul EI'5curo
5 azul claro
6 v e r m e I h o escuro
7 azul • n I I
8 v e r m e r h o
S v e r me r no cl~ro
'0 amarelo aura
11 amarelO
12 verde escuro
13 rOXD
14 cinza
15 branco Se, por exernplo. VOCe comandar:

COLOR 1.11

92

deve ohter caracteres pretos em fundo amarelo. Experimente agora:

COLOR 8.B

o texto desaparece e a tela fica toda vermelha. Se voce digitar qua Iquer col sa, apenas ouvi ra 0 .. cl ic H das tedas mas os caracteres digitados nao aparecerao,

Isso ocorre porque voce esta tentando escrever com tinta vermelha sabre papel vermelho. Para voltar a visualizar os caracteres pressione RETURN duas ou tres vezes e a seguir presslone SHIFT + F1 (F6).

o terceiro ntimero do comando COLOR e referente a cor da borda. Ele nao foi utilizado ate agora pols a borda nao aparece em SCREEN O. Se, por outro lado, voce estiver em SCREEN 1, podem ser especificadas as tres cores: de frente, do fundo e da borda. Por exemplo, para obter-se texto em cinza sobre tela vermelha de bordas amarelas, comande:

SCREEN 1 e depois

COLOR 14.B.ll

CONST ANTES E VARIAVEIS

A memoria do computador esta capacitada a armazenar nao somente linhas com instrucoes mas tarnbern outros elementos bastante lmportantes para a elaboracao e exeeucao de prnpramas. Esses elementos sao as constantes e as varlavels.

CONSTANTES

As canstantes contsm informacoes que nao mudam durante a execucao do proqrarna. Elas podem ser de dois tipos: alfanurnericas (" string ") ou nurnerlcas.

As constantes alfanurnerericas podem canter urn maximo de 255 caracteres que devem sernpre ser colocados entre aspas ("). Par exernplo. .. COMPUTADOR" au "2378" .. Note que apesar dos caracteres que camp6em a constante "2378 W serem rulmeros, ela nao e tratada como urn e nao podera ser utilizada diretamente em calculos.

Uma constante numerlca pade ser positiva ou negativa, intetra au nao, No cornputador. assirn como nas rnaqulnas de cal-

93

cular, a virgula decimal deve ser substituida por um ponto. Por exernplo. 0 numero 378.75 deve ser escrito como 378.75 (nota- 9aO anqlo-saxontca).

o HOT BASIC reconhece sels tipos de constantes numertcas:

1) INTEIRA : numero inteiro compreendido entre -32768 e 32767. Exemplos: 279 ou -577.

2) PONTO FIXO : nurnero real positivo ou negativo que contern casas decimais. Exemplos: 72.7ou -23.15.

3) PONTO FLUTUANTE : nurnero positivo ou negativo reo presentado na forma exponencial. analoqa a notacao cientfflca. Uma constante com ponto flutuante e constituida por uma constante inteira ou de porrto fixo (positiva ou negativa) seguida da letra E (au 0) e 0 numero de poslcoes que 0 ponto decimal deve andar (se 0 deslocamento for para a esquerda. esse rulrnero e negativo).

Exemplos: -373.97E5 = -37397000 ou

797.2E-3 .7972

As constantes de ponto flutuante devem estar compreendi· das entre 10 elevado a - 64 e 9.9999999999999 vezes 10 elevado a 62.

4) HEXADECIMAL: numeros hexadecimais precedidos por &H. Exemplo: &HFB.

5) OCTAL: rnirneros octais identificados pelo preflxo &0.

Exemplo: &037.

6) BINARIA : numeros binartos precedidos por &B. Exernplo: &810001101.

As constantes nurnericas podem tambern ser declaradas como nurneros de precisao simples (6 algarismos significativos) ou dupla (14 algarismos significativos).

o computador reconhece uma constante como sendo de precisao simples quando. em ponto flutuante. utlliza-se a letra E. au entao se ela e seguida por urn ponto de exclamacao (I). Par exemplo:

378.23E9 au 277.23!

A constants e tratada como de preclsao dupla se, em ponto flutuante. for utilizada a letra 0 ou se ela for seguida par # . Exemplos:

279.2D-3 ou 44.55 #

94

Alern dlsso, se nenhum expoente, ! au # for atr ibuido a uma contante ela sera tratada com precisao dupla.

VARIAVEIS

As varlavels podem ser entendidas como ~ caixas que

guardam lnforrnacoes. Essas lnformacoes podem ser alfanurnericas au nurnericas e podem ser atrlbuldas diretamente pelo programador au atraves de calculus real izados pelo programa.

Para que a computador saiba loealizar as lnforrnacoes, eada "caixa " que as guarda deve ter um nome.

o nome de uma variavel pode ter qualquer tamanho. Ele pode conter letras au ruimeros mas a prirnelro caraeter deve ser sernpre uma letra.

Alern disso. 0 nome da variavel nao pode coincidir com a de qualquer comando, funcao au termos do HOT BASIC, tais como OR, PRINT, IF, etc.

Convern notar tarnbern que a computador considera apenas as DOIS PHIMEIROS earacteres do nome de uma variavel para lderrttftca-la, lsto e, os names PRECO e PRAZO sao ldenticos para 0 BASIC·MSX pols ambos cornecarn cam PRo

Assim como as eanstantes, as variaveis padem ser alfanurnericas au nurnericas.

As alfanurnericas devem sempre terminar com Seas numer1fas podem terminar cam % Hntelrasl, ! (preclsao simples) au ~_ Ipreclsao dupla),

Ouando 0 nome de urna varlavel nao termina com qualquer urn dos caracteres mencianados aclrna (S, %, ! ou # ), 0 HOT BASIC a considera nurnerica e de prectsao dupla.

Exemplos:

A$ = nome de variavel alfarrumerica.

1% = nome de varlavel nurnerlca inteira.

AZ~I = nome de variavel nurnerlca de preclsao simples. PI = nome de variavel nurnerica de precisao dupla.

I = nome de variavel nurnerica de precisao dupla.

MANIPULANDO AS VARIAVEIS

Assim que voce liga 0 computador, todas as "catxas" que podem conter informac;6es lvartavelsl estao vazias. Se as variaveis sao nurnericas. elas contern inicialmente zeros (0) e caso

95

sejam alfanurnerlcas contern cadeias vazias de caracteres (" ").

Para "quardar " alguma inforrnacao numa varlavel. devemos usar 0 cornan do LET. Esse comando atribui a uma varlavel uma lnforrnacao como se a estivesse guardando na U calxa " correspondente.

Par exemplo, rode 0 programa da figura 4,14.

Figura 4.14

10 SCREEN 0 20 LET A=20 30 LET B=6

40 LET AS=-.ultipl icado porN S0 LET P=A*B

60 LET BS=-~ igual aH 70 LOCATE 8.1.

80 PRINT AJAS;B;BS;P 90 END

No programa anterior foram atribuidos os valores 20 e 6 as variaveis A e B, respectivamente. Na linha 50 foi feito 0 produto dos dais nurneros e 0 resu Itado foi .. guardada" na varlavel P.

Se voce quiser, nao ha necessidade de utilizar a comando LET para atribuir algum conteudo a uma variavel. Assim, as linhas 20 a 60 podem ser substituidas pelas que aparecem na figu· ra 4.15.

Figura 4.15 20 A=20 30 B=6

40 AS=-.ultiplicado porn '50 P=A*B

6. BS=-i igual a-

Acrescente agora a linha:

25 A=30

Note que a lnforrnacao guardada na variavel A na linha 20 (A = 20) e simplesmente substituida na linha 25 (A = 30).

Mude agora a linha 25 para:"

25 A=A+30

Pode parecer estranho para um maternatlco a lnstrucao cantida na linha 25. Para ser entendida, essa lnstrucao nao deve

96

ser encarada como uma equacao e sirn como uma atribulcao de urn novo valor a varlavel A. Ou seja, 0 computador executa a linha 25 tomando a valor antigo da varlavel A atribuido na linha 20 (A = 20) e adiciona a ele mais 30 unidades. 0 resultado (50) e entao atrlbuido a mesma variavel: A. 1550 equivale a acrescentar 30 unldades as 20 originais contidas na "calxa A". Veja a figura 4.16.

Figura 4.16 - Atrtbulcao de valores a varlavets.

A=2fD

Outra forma de atribuirmos uma inforrnacao a uma varlavel e atraves do comando INPUT, Sua sintaxe e:

INPUT nome de variavel

Ouando executamos um programa, 0 computador interrompe a execucao ao "encontrar " 0 comando INPUT. E. mostrado urn ponto de lnterroqacao e se aguarda que "alqurna cotsa" seja introduzida como resposta.

A resposta digitada pode ser urn rnirnero ou uma sequencia de caracteres que serao atribuidos a varlavel associada ao comando INPUT utilizado.

Para exernplificar, digite 0 programa da figura 4.17.

Figura 4.17

10 SCREEN 0

20 INPUTuQual 0 s£u prj.eiro nomeH;H$ 30 PRIHT:PRIHTUEntre dois nd.eros.- 40 INPUT-QuaID priMeiro-;A

50 INPUT-Qual 0 se9undo-:B

60 LOCATE 0.10

70 PRINT N$;ll. 0 produto deles ~-;A*B

97

o comando INPUT pode ser usado tarnbern sem qualquer texto associado. Por exemplo, as linhas 40 e 50 podem ser digitadas como;

40 INPUT A 50 INPUT B

Nesse case. surgem apenas os pontos de interroqacao. Alern dtsso, podemos pedir a entrada dos dois valares num unlco comando INPUT. Para verificar isso. cancele a linha 50 e troque a de numero 40 par:

40 INPUT A.B

Para entrar os valores agora. separe-os por virgula. Por exemplo, quando surgir a ponto de lnterroqacao. digite:

38.47 e depois tecle RETURN.

OPERACOES

o HOT BASIC permite que seja realizada urna serie de aperacces com constantes au variaveis. Essas operacces padem ser divididas em quatro grupos:

1) Aritrnetlcas.

2) Rei acionais.

3) L6gicas.

4) Funcionais.

Os operadares arttmeticos sao. em ordem de prioridade, os refacionadas na Tabela 4.2.

Para mudar a prioridade (ordem de execucao), devemos utilizar parentesas.

Todas as operacoes aritmeticas s6 podem ser efetuadas com constantes au variaveis nurnericas. a excecao da adlcao, que pode tarnbern ser uti I izada para "sornar " vanaveis alfanurnerlcas (concatenacao de .. strings "). Por exemplo:

A~ = "COHPUTADOR " B~ = "HB-Bee."

A~+B~ - "COHPUTADOR HB-Beeen

As ooeracoes relacionais permitem cornparacao de canstantes ou variaveis. Os operadores relacionais estao na Tabela 4.3.

98

Tabela 4,2 - Operadores Arltmettcos

PRIORloaOE Of'ER~OQR OPERACAO EXEMPLO SIGNlflFICADO
I ... Expo n e n c i .can 8 ..... 'I 8 e t s v a e c • "l
2 - Mudanca de 51 n a I -10 -10
3 * MU I tip lie a ~ iii 0 7 * 6 7 -x 6
3 / Drvlsiio 20/4 20 4
4 \ Q,vlsiio t n t e t r a 10 \ 3 10 \ 3 - :3
5 MOO Resto da Oivisiio 10 HOD 3 10 MOO :3 = ,
S + Adl~ao 10 + 5 10 -t 5
6 - s u n t r e c s n 20 - 7 20 - 7 Tabela 4,3 - Operadores Relacionais

A" E r. A DOR OPER~CAO [XfMPLO
= I 9 u a I • A : B
< > d l I e r e n t e d e A < > 8
< me n or que A < B
> malor que A > B
< : menor ou 19 u a I • A < : B
> e rna lor ou Igu.1 a A > = B Os aperadares 16gicos SaO usados para determinar condlc;6es rnultiplas, Os principais sao: OR e AND.

Para entender esses aperadores imagine duas express6es que podem ser verdadeiras ou falsas. Assim:

* (expressao 1) OR (expressao 2) = VERDADEIRO se a expressao 1 au a expressao 2 au as duas forem verdadeiras.

* (expressao 1) OR (expresseo 2) FALSO se as duas

express6es forem falsas.

* (expressao 1) AND (expressao 2) = VERDADEIRO se as duas express6es forem verdadeiras.

* (expressao 1) AND [expressao 2) = FALSO S8 a expressao 1 ou a exprassao 2 ou as duas forem falsas.

99

Exemplos:

(5 = 5) OR (3 = 1) = VERDADEI RO

(5 =6) OR r ABC" =" 123") = FALSO

(2 = 2) AND {" ABC" = " ABC"J = VERDADEI RO (7=7) AND (8=6) = FALSO

As operacoes funcionais sao as que utilizam as func;:6es do HOT BASIC tais como, LOG. SIN, CHRS, etc. Ha um nurnero bastante grande delas e alern disso, 0 usuario pode definir novas func;:6es utilizando DEF FN. Para conhece-las, consulte 0 Dlcionario do HOT BASIC, no tim desse capitulo.

DECISOES

Durante a execucao de um programa, muitas vezes 0 seu fluxo normal pode ser alterado, dependendo do resultado de algamas operacoes.

Para que lsso seja possivel. utllizarnos os comandos GOTO elF/THEN.

o comando GOTO (~va para") provoca um desvio na execucao do programa para a linha especificada. Por exemplo, GOTO 100 provoca um desvio para a linha de nurnero 100 do programa.

o comando IF/THEN ("se/entao") faz um "teste" e sua estrutura e:

IF (a condilfao e verdadeira) THEN (execute um comando)

Por exemplo.

IF A~B THEN GOTO ~ ••

pode ser traduzido como: ~ se 0 conteudo da varlavel A for igual ao da vartavel B entao desvie para a I inha 100 do proqrarna".

Para ilustrar 0 expasto selma. analise 0 pragrama da figura4.18.

Nesse programa, se 0 numero introduzido for par entao 0 resto de sua divlsao par 2 e igual a zero (A MOD 2 = OJ. Assim, ocorre desvio para a linha 60. Casa 0 nurnero introduzido seja impar. nao ocorre tal desvio e sao executadas as linhas 40 e 50 do programa.

100

Figuril 4,1S :1,'11 CLS

2~ IHPUT~En~r~ ~. "~~~rg-~~

3. IIF j:/! !,,!~IO ~ '" t!< WII'!EN ~O'1rQ 6''"''

~0 PRINT~O nd~er~ ~fil~o~y~~~O ~ i~P~R~ 58 DDTO ~.

~0 ~RINTnO n~~~~D in~~Ddu~~dD ~ PA~~ 79 G'~'1H) :~e

Execute es se pf\ograrma earn andando RUN ..,1 ~ntl!ilo~:hJz:1 ndrn allguns m:imetos. Para tnterromper, ciomarndle ClRL+SJ'OP.

Me d ifi q IJi e agora 0 programs canca I,'-Ino,o a s Un ha s 60 e 70 e :!II ~era ndo a de n!]lm era ,30 p'!i!ra:

3. l[ F ill! H,!)!!)' ~ - '. i!"1o! E:i!'I IP'IR !U"T "0 In,!ill .'.'" ~ lin trQd~~~~g • PAR~ ~ GOTa ~.

0< ~uwu::lonamefll~,(Ii do programs, ",aos alter:e,d(!l. NlC'i~e que a i nstru(:ao GOTO :20 Il'Intlrod !i.!li da na m eSI'Il8 Iii nha P81SS8 f;lIH:III'~enCie r 21(1 teste executad'o par ~ F /l~IEN.

Outra lITlud:an'~1iJ que pod8Set fel~a 61 lolimlUn<lI!l" a ~lnh{J, 40 e novamentea lfie rar (I, denlume'!i\o, 30 para:

38'iI:IF AI HOD' 2 - I. T'j.I,E:N P'IR':I NIli' '~PAR '" e!!..s~ P'N 11"1i' "'l"P~R""

A tradUCHO dess!l!i I~nhf) e; ~ SE [IF] 0 reSIO da divisii~' pot' 2' fo r~glUa I a zen:!1 EN" AO (11"1 EN) i rn iJ'r i rna P'AA, C,ASO leo NllRAAIO (ELSE) impr~ma 'IMPA,R ~ .

D,ilgU,~1ilI9:oral aprotJlrama da Hguta 4.19.

Fflgur~4. ~9 UJ clbs 2,0 A-I

3. LOCATE A.~

~~ PRI~T flHB-se.eY ~'!i!' ~"'A+1

,6,6 I!l= A(~:Il TH'EIN !JOTO' 3., 7., E~'D

Esse prognilm<a estebeteee equ e c ham1a mOS de ~ ~aco·. N a Mnha 201 ,~,aI'l:ribllJid,o um Wl~OI' Inlernal 3varl.i3iv,el A (11fI(:ICa<&o. 11. N a II nha30. pos ich::IJ1i'8-Sa ,81 pn5xima i It'Ipl'1e&s~o' de modoq ue tanto a eeluna qUaJfilltq)l CI llnha 8mJ qlil~{!11l! dl€lvese' inieiar eerresp L'),l'Idia mao v01,lor de A,. .A II nha40 e'fe'hJ3 a i mpressio. IJ\ Unh a 501 at r ! bu! UflI'll n avo v,9iI~or ml vaJ~~.ve:l, A com 0< sendo 0 sen va I'~ratua I

1'01

acrescido de uma unidade. A linha 60 verifica se a varlavel A e menor que 21 e se for, ocorre desvio para a linha 30, .. fechando o laco" e repetindo 0 processo. Quando a variavel A assumir 0 valor '21, a programa "ascapa " do laco definido pelas linhas 30 a 60 e termina.

o efeito do programa acima pode tarnbern ser obtido com as ccmandos FOR e NEXT. Teste isso rodando a programa da figura 4.20.

Figura 4.20 10 CLS

20 FOR A=i TO 20 30 LOCATE A.A

40 PRINT HHB-8000H 50 NEXT A

60 END

o comando FOR dec lara 0 nome da varlavel e de quanta a quanta ela deve variar. 0 comando NEXT fecha 0 laco. Ambos devem ser sempre utilizados canjugadamente. Nao use um, sem a outro.

o incremento da vartavel e sernpre igual a 1 a nao ser que voce especifique outro incremento com 0 comando STEP. Par exemplo, substitua a linha 20 por:

20 FOR A ~ 1 TO 20 STEP 2

Note agora que as impress6es sao realizadas em linhas e colunas alternadas pots a variavel A assume os valores 1,3,5, ... ,17 e 19.

AS TELAS GRAFICAS

Existem mais duas telas, alern das ja mencionadas, no HOT BASIC. Elas permitem que sejam desenhados grMicos e figuras. Tambern devem ser selecionadas pelo comando SCREEN.

Comandando SCREEN 2, obtemos a tela para desenhar em Alta Resolucao Graflca. Ela contern 192 linhas e 256 colunas.

Ao executarmos SCREEN 3, selecionamos a tela para desenhar em Baixa Resolucao Gratica. Ela disp6e de 48 linhas e 64 colunas.

As telas qraficas sao desativadas toda vez que urn programa termina ou e interrompido por CTRL+STOP. Nesses casos, ativa-se automaticamente a SCREEN 0 au a SCREEN 1.

102

You might also like