Você está na página 1de 169

COLEÇJO LIMO MtlE

-7-7 PROQRAW&S PRFÍA A


LINHA APPLE
TONS OS COMTÍVEIS COO «Ml E TUOW

CARLD8 ALBERTO C.

Uk*«

MICROKIT
0 livro veiam !

MM VI6C0NK Dí PIRMIÍ, 303 - fiRUPÜ 1005


010 M JMIM - U - BRASIL
Ctr: 22010 - Itl. (02l> 521 UM
001 6
A.145X»
MICROKIT
Linha Sinclair - TI 82, 83, 85, CP 200 e outros.

Curso do Basic voluae I

Teoria, eieaplos e eierclcios resolvidos, eiplanados ea 10 aulas, oferecendo uaa


abordapee siaples e direta.
Dicas para adaptar propraeas de outras alpinas para linha Sinclair.
Poder} ser usado por auto-didatas, ou coao livro didltico.

Curso de Basic voluae II


propraaaçlo avançada

Tea coao objetivo coapleeentar o livro Curso de Basic voluoe I.


Procura coodunr o usulrio, a construir seus próprios propraeas, e nlo se licita
ser apenas ua dicionlrio de coaandos e funpbes. Todos os propraeas possuea o respecti­
vo (luiopraea e uaa eiplicaplo coaentada da sua aontapea. E ue livro didltico.
Ua dos capítulos f dedicado a ensinar coao desproteper propraus da linha Sinclair.

linha Apple - todos os coaputadores coapatlveis coa Apple e TI 2000.

77 Propraeas para linha Apple

Atravh de JOSOS e PR06RARAS EDUCATIVOS vocd seri indulido a pensar, resolver


problms, e tonar conheciaento de coao poder} usar bea o coaputador, de foraa siaples e

Propraeas Coeerciais da linha Apple


para Pequena-Eepresa

late luro tris a Iistapea coapleta dos propraeas coao: Hala-direta, Controle de
rslopue e Contas a receber e a papar, indispensiveis 1 pequena-eapresa.
Mdidv 1 void de aprender a prograaar, alta de orientar o pequeno eapreslno coao condu-
rií se, na kea de inloreltica, de loraa econdaica.
77 PROQRAMAS PARA A
1_ I NH A APPLE

Apresentação do autor Carlos Alberto Abreu

0 autor desta obra ê engenheiro de Sis-

temas com mestrado na COPPE - Coordenação de

Progr;imação de Pós-Graduação da UFRJjdiretor-

técni<zo da Micro-Kit Informática;membro do Con­

selho de Informática da Associação Comercial do

Rio de Janeiro;consultor-técnico de Informática

posBiii 20 anos de experiência em software.


Abreu, Carlos Alberto Castro e,19l5-
77 Propanes poro a linha Apple / Car-
loo Alberto C.Abreu . -- l.ed.— Aio de
Janeiro : Micro Kit Inl19M.
H9p: (Linha Apple i n.ll

ISM B5-7045-005-1
l.Prograeaçlo (Cooputadoreo) l.Tftulo.

Cl»- M1.M2

Todos os direitos reservados e protegidos


termos da lei. Nenhuma parte deste livro poder!
ser reproduzida ou transmitida sejam quais forem
os meios empregados:eletrônicos,mecânicos, foto­
gráficos, gravação ou quaisquer outros.

<C> Copyright tc 1984 by


CARLOS ALBERTO DE CASTRO E ABREU
Apple, Apple II*, and Applesoft are registered
trademarks of Apple Computer inc. with regard
In any computer product.
Coleçko linha Apple

1- 77 Programas para linha Apple


2- Programas Comerciais da linha Apple
3- Usando o Vi siplot
4- Usando o Assembler (no prelo)
5- Programas Comerciais da linha Apple - vol.2

ColeçAo linha Sinclair


1- Curso Basic V.1
2- Curso Basic Avançado V.2

1“ ediçSo - 1984
77 Programas para 2“ ediçKo - 1984
linha Apple 3“ ediçào - 1985
INDICE

PROGRAMAS PÁGINA

3
3 NORMAL/INVERSO/FLASH 4

Z» USO DO HTAB/VTAB 7

e DECOMPOSIÇÃO FATORES PRIMOS 10

•? CONTAGEM DE 60 SEG. 13

1 O ETIQUETA 14
1 1 CONTADOR DE TE1PO AUDÍVEL 16
1 ZS JOGO DE DADOS 17
I 5 OBA OBA 18
« 8

■ 4 DIAS DO MÊS
1 TH BUBBLE SORT
1 Z. ALFABETO 24
1 T IMP. EM 4 DIREÇÕES 26
1 B TRATAMENTO DE ESCORES 28
1 *5» 31
20 33
21 34
22 ALEATÓRIOS 35
23 FATORAÇÃO 37
2- Q DESVIO PADRÃO 39
25 INVERSO DO NÚMERO 1
26 QUEM É O MENOR 2
2V ARREDONDAMENTO 3
28 MÉDIA 4
29 METADE DO INTERVALO 5
30 QUEM É O MAIOR 47
31

32 FATURAMENTO
33 PREÇO UNITÁRIO 52
3- Q 53
35 TARJAS NA TELA 54
3<5> CRIAÇÃO DE TABELA NA TELA 55
37 MENSAGEM CENTRADA 57
3B DIVISÃO DE DOIS NUTEROS 59
3*5» NÜFEROS DE ARMSTRONG 61
•*40 CONVERSÃO P/BASE 1EN0R QUE DEZ 62
1 ÁREA DE TRIÂNGULO 65
nz PROGRAMA DO CÍRCULO 66
■9 3 PLOT AGEM DE CURVAS 6S
A-a SORT 71
ns MERGE 74
4/j DIA DA SEMANA 77
n 7 INTERVALO ENTRE DATAS 79
nu LISTA TELEFÔNICA B2
n*z PREVISÃO DE VENDAS 84
r-.«» PREVISÃO DE VENDAS EXPANDIDA 86
—> 1 PROGRAMA DE ANUIDADE 88
MÉDIA ARITMÉTICA 90
S3 bEDIDAS ESTATÍSTICAS 91
s-a REGRESSÃO LINEAR 93

ss GERADOR DE NÚMEROS ALEATÓRIOS 96


5<S ZODÍACO 98

S"7 FATOR I AL DE UM NÚTERO ÍOO

se CÁLCULO DE PI lOi

s«? CÁLCULO DO NÚTERO E' 102


<5»O CLOCK ARITMÉTICO 103

^>1 NÚMEROS PRIMOS GÊMEOS 105


PREVISÃO DE POPULAÇÃO 107

<£»3 TRIÂNGULO DE PASCAL 109

<£»■<» NÚMEROS DE FIBONACCI 111

<Ê»S MULTIPLICAÇÃO DE MATRIZES 113


<L><S INVERSÃO DE MATRIZES 116

A-7 ÁREA DO POLÍGONO 120

<s»e ANÁLISE VETORIAL 122

<£»*? CONVERSÃO DE ÂNGULOS 125

7^0 INTERPOLAÇÃO LINEAR 127


71 rfTODO DESIMPSON 129
72 DERIVADA 132
73 FÉTODO DE NEWTON PARARAIZES 133
7^ OPERAÇÕES COM MATRIZES 137
75 REGRESSÃO LINEAR 141
7±> EQUAÇÕES SIMULTÂNEAS 145

77 OPERAÇÕES DE VETORES 148


1 TABUADA

30 HOME : VTAB IO: HTAB IO


40 PRINT-DUAL E O SEU NOME 7"
SO IIWT ZB

JOO X - 1
200 Y - INT <RND <X> • 1O>
300 Z - INT <RM> <X> • 10)

400 VTAB IO: HTAB IO


500 PRINT ZB|" RESPONDA : QUANTO E -

510 PRINT : PRINT 1 HTAB IS

570 PRINT Yl" X "IZ


5X0 PRINT : PRINT : HTAB IS: INPUT" -|A

540 IF A - Y • Z TTEN PR I NT "PARABENS "1


ZB: BOTO 560
545 PRINT""

550 PRINT-NAO.A RESPOSTA CERTA E "IZ • Y


560 GET RB
570 GOTO 50
exemplo:

QUAL E O SEU NOME ?


"’ELIZABETH
ELIZABETH RESPONDA : QUANTO E

S X 8

40

NAO .A RESPOSTA CERTA E 64

ELIZABETH RESPONDA :QUANTO E

PARABENS ELIZABETH
2 ENCURTA NOMES

10 HOME

20 IMVT'QUAL 0 SEU NDE *|A*


30 FOR I - 1 TO LEN CA*>

40 PRINT HIM <M,1,I>

45 FOR J - 1 TO 600: NEXT

50 NEXT

60 FOR I - LEN <A»I TO 1 STEP - 1


70 PRINT HIM <A*,1,I>

SO NEXT

EXEW>LO:

OUAL O SEU NOW MICRO


H
HI
HIC
HICR
MICRO
MICRO
HICR
NIC
Ml
M
3 NORMAL.X XNVERBO/FLASH

SO HOTE
ÍOO REM USO DO INVERSE/NORMAL E FLASH

200 INPUT "QUAL SEU NOME? *IA«

250 PRINT : PRINT


500 PRINT"EM MODO NORMAL -;A»

400 PRINT : PRINT : INVERSE : PRINT"


AGORA EM INVERSO *|A*
500 PRINT : PRINT : FLASH : PRINT"E
AGORA EM FLASH "IA«

600 NORMAL
+ XNVERTE NOME

Esta prograM um um técnica da conca-


tanação da strings para inverter um aaiiagas.
Usando-se a função LEN (LENGTH) - coa
prlaanto, deterai na-se o taaanho da aansagsa.
A função HIM necessita de 3 paraMtros

O priMiro detaraina o string aonde est.

O segundo,a posição inicial, e o tercei


número de posiçâes.

Caso voc* queira acoapanhar a inversão


iliqila: 55 SPEED—IO:PRINT M

10 HOTE
20 IIEUT'GUAL A fENSAGEH ? *;A«
30 L - LEN(AS)

40 FOR J - L ♦ 1 TO 1 STEP - 1
50 BS- M ♦ MIM(A»,J,1>
60 KXT J

70 HOME : PRINT BS

HO GET C*
TO IF C» - " TFEN 80

100 CLEAR : GOTO IO


ADIVINHA

IO HDE : CLEAR
20 PRINT-SELECIOC IM NUTERO DE IRES
DIBITDS-

30 PR I NT “COM TODOS OS TRES DIBITOS


IGUAIS*
40 PRINT : PRINT-S0E OS TRES DIBITOS
JUNTOS”
50 IWUT-BUAL E A SOHA DOS TRES DIBITOS
7 -IN
60 Q - 37 » N

70 PRINT : PRINT O««<7>


BO PRINT-O SEU NUERO ORIGINAL ERA *10

90 PRINT : PRINT : BOTO 20

EXEmui:

SELECIONE IM NUERO DE TRES DIBITOS


CON TODOS OS TREB DIBITOS IGUAIS

SO»E OS TRES DIBITOS JUNTOS


OUAL E A SOMA DOS TREB DIBITOS 79
O SEU NUERO ORIGINAL ERA 333
A U8Çfc DO HTAB/VTAB

HOME
REM USO DO VTAB/HTAB
INPUT"SEU NDfE "|M

FOR X - 1 TO 40
FOR Y - 1 TO 24

HTAB X : VTAB Y

PRINT M

«XT Y

NEXT X
BOTO 200
7 NÚMEROB primos

Inlcialaanta, varifiqua o núaaro da ii


riço»» qua o prograaa raaliza usando o coaJ
TRACE, qua tracaja as linhas por anda o aa|

linha lOoT* ’ *' ~"nt* °* n_cro*


Al tara , depois,o prograaa para padir I
coaando ItPUT, quantos míaarns priaos vocA q|

1OO N - 60

11O PRINT I PRINT-OS PRI1EIROS -|

115 PRINT NJ- NÚMEROS PRIMOS "J

117 PRINT- SAO : - J PRINT

120 PRINT 1,2,3


130 I - 3
140 FOR J - 1 TO N - 3

150 I - I + 2
160 K - 3
170 Q - INT (I / K>
ISO R - I - Q • K
190 IF R - 0 THEM 130

200 IF R > - Q TIEN 230

210 K - K ♦ 2
220 HOTO 170

230 PRINT I,

240 IEXT J
250 END

EXEm_O:

2
5 7
13 17
23 29
37 41
47 53
bl 67
73 79
89 97
103 107
113 127
137 139
151 157
1*7 173
181 191
-10-
S DECOMPOSIÇÃO FATORES
PRIMO8

Procure Fazer uaa coaparacão antra aata


prograaa a o anterior.
Tanta altarar o prograaa para indicar a
«ataração coa uaa outra aanelra do exibição.

100 REM DECOWOSICAO EH

10S REH FATORES PRIMOS

110 REM
120 PRINT“DECOMPOSIÇÃO EH

125 PRINT"FATOREB PRIMOS"

130 PRINT
140 PRINT"IM>IOUE O NUERO "

145 INPUT" "IN


150 NI - N
160 IF N < - O THEN STOP
170 I - 1
ISO I - I + 1
190 J - O

200 0 - INT <N / I)


210 R - N - O » I
-11-

•Z2O IF R < >0 T>EN 260

230 N - Q

240 J - □ + 1
250 BOTO 200

260 IF J - O TTEN 290

270 PRINT* E DIVISÍVEL POR *f


275 PRINT II* *|TAB <2B> I
277 PRINT JlTAB <34>|* VEZES."
280 BOTO 180

290 IF O > I TICN 180


300 IF N - 1 THEN 350

310 IF N < > NI DEN 340

320 PRINT TAB<6>>* E PRIMO.*

330 BOTO 350


340 PRINT* E DIVISÍVEL POR *1

345 PRINT N|TAB <27)1* 1*1


347 PRINT TAB <34>l* VEZES.*
-12-

350 PRINT
360 BOTO 130

370 END

EXEMtjO:

INDIQUE O NUERO
88
E DIVISÍVEL POR 2 3 VEZES.
E DIVI81VEL POR 11 1 VEZ.

INDIQUE O MJTERO
— 13—

«P CONTAGEM DE 60 SEG.

Esta proqraaa ilustra coso sa faz conta-


gaa da teR)O aa BASIC.
Rapara qua o loop da linha SO.faz asta
iutiç Jo.
Varifiqua no ralógio, sa a ccntagaa da
laapo asta parfeita.
ORS<7> á rasponsával paio bip.
Auaanta o núaaro da bips para cada sa-

10 HOME

20 FOR T » 1 TO 60
V> PRINT CHR*(7>

40 PRINT TC SEBUNDOS-
W FOR L - 1 TO 750: NEXT L
60 REXT T

»0 FOR E - 1 TO 5
RO PRINT O*t»<7)

•m «XT E

I II MPLO:

I IWOUNDOS
• ttt.IMJNDOS
-14-

1O

Rapar* que a funçXo LEN, deteraina o cod


priaento do no**.
Agora, tente centralizar a etiqueta nl
tela. Para deacer na vertical,uee VTAB 10.
Altere o prograea,para envolver o noa
da etiqueta coa qualquer caráter que você deaq

IO HH
iwwoual seu primeiro note ? -in*
n

LN - LEN <H*>
LT - LN + 4

FOR L - 1 TO LT
m

AS* - AS* *
m

HEXT L
PRINT AS*
n

AS* - "■
8

PRINT-* -|N*|" •"

11O FDR L - 1 TO LT

120 AS* - AS*


-15-

130 rEXT L

140 PRINT AS*

150 AS* - •"

1ÓO PRINT : PRINT : SOTO 20

EXEITLO:

7NICR0-KIT

DUAL SEU PRIMEIRO NOTE ?C(>*>UTADOR

• COmiTADOR •

UIMU. SEU PRI1EIRO NONE ?


-16-

XX CONTADOR de tempo
audível

5 REM UM BEEP A CADA SEBUNDO. AJUSTE


0 TEWO DE BEEP «XENTAM» OU DINI
NUIMX) O NUMERO B NA LIMA 20

IO HOTE
20 FOR T - 1 TO B
30 FOR L - 1 TO 2

40 BZ - PEEK (-16336)
90 ICXT L
60 FOR L - 1 TO 1OO: IEXT L

70 »EXT T
SO PRINT CMW<7>

90 BOTO 20
12 JOBO DE DADOS

Este jogo deacnstra a geraçío de núaeros


alratórios usando-se a função RND.
0 lançaaento do dado.gera ua núaero ale-
ali'wio variando de 1 a 6.
Iaagine agora que estZo sendo lançados 2
tladiio ao aesao teapo. Al tere o prograaa para
■I» <> efeito correspondente.

10 HOME

ÍOO A - INT <10 * <RND <1»>>


110 IF A < 1 OR A > 6 TIEN 1OO

200 B “ INT <1O « <RND <1>>>

210 IF B < 1 OR B > 6 TIEN 200

300 PRINT'PRIIEIRO LANÇAMENTO DO DADO "IA


310 PRINT"SEGUNDO LANCAiENTO 00 DADO ‘IB
400 X - PEEK <-16384)
410 POKE -16368,0

420 IF X < 128 TIEN 400


430 PRINT : GOTO 10O

EXEMPLO:

PRI1EIRO DADO 4
SEGUNDO DADO 2
-íe-

13

L — 76 v
c 67 H - 77 87

D N - 78 X

E 69 0-79 Y - 89

F - 70 Z - 90
71 0-81 í
» »
H - 72 R

1-73 S
U

J - 74 T
—19—

IO HOtE

FOR N - 1 TO 25
8 8 $

POKE 1206,79

POKE 1209,66

POKE 1210,65
M

POKE 1212,79

POKE 1213,66
8 2

POKE 1214,65

FOR L - 1335 TO 1343


M

POKE L.47
HO •EXT L

• 20 PRINT CMt»<7>
130 •EXT N

140 HOME
—20—

1+ DIA8 DO N&8

Rapar» qua o aês é parado aleateriaaen-


te. Caso o ags soja SETEMBRO,nota qua sao fei­
tas 8 leituras anteriores no caaando DATA.
Altere o prograaa para acessar direta—
aente o ads gerado.
Observe que esta estrutura de prograad

outros tipos de estruturas siailares.

10 HOME
20 DATA JANEIRO, 31

30 DATA FEVEREIRO,28
40 DATA MARCO, 31
30 DATA ABRIL,30

60 DATA RAIO, 31
70 DATA JUM0.30
80 DATA JULHO,31

90 DATA A8OSTO.31

1OO DATA SETEMBRO,30


11O DATA OUTUBRO,31

120 DATA NOVEMBRO, 30

130 DATA DEZEMBRO,31


-21-

140 R - INT <100 * CRND <11>>

150 IF R > 24 TEEN 140

160 IF INT <R / 2) - R / 2 TEEN R - R -1

170 FOR L • 1 TO R
180 READ S«
190 NEXT L
200 PR I NT" HES E "1S«

210 READ C«
220 INPUT“QUANTOS DIAS "ID*

230 IF D« « C* THEN PRINT"CORRETO":


GOTO 300
240 PRINT"ERRADO"

300 PRINT"NUMERO DE DIAS E *;C«

510 RESTORE
520 PRINT

350 GOTO 140

exew>lo:

MLS E FEVEREIRO
QUANTOS DIAS 30
ERRADO
NUMERO DE DIAS E 28
IS

20 DIM HO<1O>
30 FOR L - 1 TO IO
«o iwvr-Nore:

SO IEXT L

60 HOTE

70 T - O
BO FOR L - 1 TO 9
90 IF m<L> < - H»<L ♦ 1) TIEN 110
too E« - n»<i_>:n»<l> - nocl ♦ i>:
M»<L ♦ 1» - E«:T - 1
11O IEXT L
-23-

120 IF T - 1 THEN 70

130 FOR L » 1 TO IO
140 IF H*<L> < > -- THEN PRINT M»<L>

150 KEXT L

EXEMPLO:

NOTE: CLAPPY
NOTE: MICRO-KIT
NOME: CIÊNCIA MODERNA
NOTE: LIVRARIA SISTEMA
NOME: LIVRARIA POLIEORO
NOTE: SACHET
note: string
note: iesbla

CIÊNCIA MODERNA
CLAPPY
C0MPU8H0N
CACHET
LIVRARIA POLIEORO
LIVRARIA SISTEMA
TESBLA
MICRO—KIT
ROBOTIC
STRING
—24—

Este prograH,uM o coaando RESTORE, rt


linha 110. para fazer coa qua o ponteiro doa da
doe seja restaurado para o início da llata dl
DATA, ou seja a letra "A".
O prograaa faz N leituras.
Adapte o prograaa, para uaa estrutura ■
vetor, para que*canhecido o valor de N, o prJ
graaa determine diretaaente a letra correapoq
dente.

10 HOTE
20 DATA A,B,C,D,E,F,S,H,I,J,K,L,
N, N, O, P, Q, R, S, T, U, V, W, X, Y, Z

30 PRINT‘DE-tE O NIMERO DE "


40 PRIMT-URA LETRA DO ALFABETO"
SO INPUT"DE 1 ATE 26 "|N
60 FOR L - 1 TO N

70 READ A»
BO HEXT L
90 PRINT : PRINT : PRINT O«9(7>

1OO PRINT-LETRA MJFERO "INI" E "IAS

11O RESTORE : PRINT : BOTO 20


exetvlo:

DE-tE O NUMERO DE
UM LETRA DO ALFAI
DE UM ATE 26 S

LETRA MJHERO SEE

DE-fE O NUERO DE
UM LETRA DO ALFABETO
DE UM ATE 26 12

LETRA NUERO 12 E L

DE-fE O NUERO DE
UM LETRA DO ALFABETO
DE UM ATE 26

LETRA 18 E R
10 HONE
20 DIM X«(1OO>

30 IM>UT-DE-tE A PALAVRA -|A«


40 L - LEN <A»>
50 FOR J - 1 TO L +1
60 X«(J> - HID«<A4,J,1>

70 REXT J
80 print : print"BAIXO:*,* ciha:*

90 FOR J - 1 TO L + 1

1OO PRINT Xt<J),X«(L ♦ I - □>


110 NEXT J

120 PRINT-PRA FRENTE: *


130 PRINT A«
140 FOR J - L ♦ 1 TO 1 STEP - 1
ISO Z» - Z» ♦ HIMÍM.J, 1>

160 ICXT J
170 PRINT : PRINT'PRA TRAS: “

IBO PRINT Z«
170 PRINT : PRINT : CLEAR : 6010 20

I XEMPLO:

Ilf ME A PALAVRA MICRO-KIT

PRA FRENTE:
MICRO-KIT

PRA TRAS:
TIK-ORCIM
1e TRATAMENTO

Repare,nesta progra*a,a transfaraação dá


uea variável string ee variável nuaérica, usarrl
do-se a funçáo VAL na linha 80. E* necessária
que se faça esta transfareaçâo para posteriores
aanipulações ariteéticas.

IO HOtE : CLEAR
20 PRINT OSTS (7)

30 PRINT-INFORME UH GRUPO DE ESCORES-


40 PRINT-DE ZERO ATE 1OO UH DE CADA VEZ
50 PR I NT "ENTRE COH 'X' APOS O ULTIMO
ESCORE*
60 PRINT I INPUT-ESCORE- "1GS
70 IF GS - -X- THEN 200

80 G - VAL <GS>

90 N - N + I

1OO IF G ■ 60 THEN F- F ♦ 1: GOTO 150


IIO IF G < 70 TIEN 0- D ♦ 1: GOTO 150

120 IF G < 80 TTEN C- C ♦ It GOTO 150

130 IF G < 90 THEN B■= B ♦ 1: GOTO 150

140 A - A
-•29-

130 IF N - 1 TICN L - e: H - 6
160 IF B <L THEN L - S
170 IF 6 >H THEN H - 6
ISO S - S + B
190 BOTO 60
200 P - 8 / N:N - L ♦ <(H - L» / 2>
210 HOTE: PRINT'EXISTE UH TOTAL DE "I
N|- ESCORES-

720 PRINT-VARIAM» DE -|L|- ATE -|H


230 PRINT-VALOR DE FEIO DO INTER
VALO E *|H
240 PRINT "ESCORE HEDIO ERA -|P

230 PRINT : PRINT-TOTAIS PARA CADA


GRAU DE LETRA"

2AU print-a: -ia

270 print-b: "IB


2110 print-c: -ic
PRINT'D: -ID

uh» print-f: -|F

lio PRINT : CLEAR : BOTO 20


-30-

EXENPLO:

INFORTE UH GRUPO DE ESCORES


DE ZERO ATE 100 UH DE CADA VEZ
ENTRE COH X* APOS O ULTIMO ESCORE

ESCORE- 23

ESCORE- 56

ESCORE- 87
ESCORE- 12

ESCORE- X
EXISTE UH TOTAL DE 4 ESCORES
VARIANDO DE 12 ATE 87
VALOR DE TE1O DO INTERVALO E 49.5
ESCORE TEDIO ERA 44.5

TOTAIS PARA CADA GRAU DE LETRA

c: O
d: o
f: 3

IWTWE UH GRUPO DE ESCORES


DE ZERO ATE 100 UH DE CADA VEZ
ENTRE COH 'X' APOS O ULTIMO ES1
1 CONVERSÃO CARATER
F»ARA ABC II

Aqui aao iluatradaa duaa funçóea qua aão


■uito usadas. Trata-M daa funçõea CHR* a ASC.
A funçio CHRS exige caao parâaatro míae
• u ABClI.e forneça o car Atar correspondente.
A função ASC recebe,coao parâaetro,o ca-
>Àler e fornece a codificação ASCII correspon-
IihiI». A codificação ASCIl.e' um aaneira de
l<a>«l<xMr o caráter ea códigos de O e l,que é
•• aólodo interno da aáquina trabalhar.

io note
20 PRINT"SELECIONE: ASCII PARA CARATER
(APERTE ’A >"

’o PRINT'OU SFI FT.IOfC; CARATER PARA


ASCII (APERTE 'C')“
40 INPUT-QUAL ? "|C«

5<> IF CS - “A" THEN ÍOO

no 1F CS - "C" THEN 200

70 GOTO 40
IOo IMAJT"QUAL O VALOR ASCII ? "I A

110 IF A > 255 THEN ÍOO

120 HONE
I to PRINT‘0 NUMERO ASCII E *IA
14o PRINT-0 CARATER E "ICFRS(A>
150 PRINT

160 GOTO 20

200 IIEUT'QUAL O CARATER 7 -1CH»

210 HOTE

220 PRINT-O CARATER E "ICH*

230 PRINT‘0 NUERO ASCII E "I


ASC(CH*1
240 PRINT

250 GOTO 20

EXEIELO:

SELECIONE:ASCII PARA CARATER<APERTE Al


OU SELECIONE:CARATER PARA ASCII(APERTE Cl
OUAL ?A
QUAL O NUTERO ASCII 779
□ NUERO ASCII E 79
O CARATER E O

SELECIUE: ASCI I PARA CARATER (APERTE Al


OU SELECIUE: CARATER PARA ASCII (APERTE Cl
QUAL 7C
DUAL O CARATER TH
O CARATER E M
□ NUERO ASCII E 77
■O IMPRE8. CARATER/ASCII

>f «lie jil»-ci»al> que e 11111111 (binariol ou ti­


ll na liytH coapletaannte preenchido coa uns.

IO HOTE

20 roR N = O TO 255
IO PRINT N,CHRt(N)

40 COR L - 1 TO 400: NEXT L


••o NEXT N

PRINT CWT«<7>

i xrHPLo:
—34—

21 PEEK

O casando ^PEEK recupera ua conteúdo d


um posicéo d* aesória. Es seguida, o progras
iaprise o conteúdo de varias aesórias.^
Modifique os endereços de aesória, e e4
piore os seus conteúdos.
Coloque ua conteúdo através de POKE,
conf tree usando PEEK.

10 HOME
20 FOR M - ÍOOO TO 11OO

30 P - PEEK <M>
40 C» - CHR* <P)
50 PRINT"VALOR ASCII EM ";Mí“ E ";P

60 PRINT'CARATER EM ";M1~ E ";CS


70 PRINT
80 FOR L " I TO 500: NEXT I

90 NEXT M

EXEiPLO:

VALOR ASCII EM ÍOOO E 170


CARATER EM ÍOOO E •
VALOR ASCII EH 1OO1 E 96
CARATER EM 1OO1 E
-35-

12 NÚMEROS ALEATÓRIOS
REVERBOS

Observe a geração de núaeros aleatórios


alravds da função RND. Note que esta função po­
la «■< ronjugada coa a função INT.
Cada dígito do núeero foi armazenado nas
•iu»»i» J, K e L. Na linha 70,é feita a con-
• lenaiàt’ no sentido noraal e no sentido rever­

ie. HOME
••o J - INT (IO • (RND <1> > >

Vi f - INT (10 » (RND (1 > > >

4» L - INT (10 • (RND (1>>>

M. If J A 1 OR K < I OR L < 1 THEN 20


J» =- STRS (J>:K« = STR* <K>:
I ♦ - STRS (L)
N« - JS ♦ KS ♦ LS:R* • Li ♦ K» 4 J«
■ MI N - VAL (N»>:R - VAL (R*>

»■ PRINT-NUTERO ALEATORIO E -»N

fRINT-DE TRAS P/FRENTE E "JR

I III r OR x - 1 to soo: next x

I • PRINT : GOTO 20
EXE1EL0:

NUERO ALEATORIO E 716


DE TRAS P/FRENTE E 617

NUERO ALEATORIO E 574


DE TRAS P/FRENTE E 475

NUERO ALEATORIO E 868


DE TRAS P/FRENTE E 868

NUERO ALEATORIO E 683


DE TRAS P/FRENTE E 386

NUERO ALEATORIO E 298


DE TRAS P/FRENTE E 892

NUERO ALEATORIO E 327


DE TRAS P/FRENTE E 723
-37-

23 FATORAÇÃO

Rapara qua a fatoração á paaquizada at


) estado do núaaro.
Para varificar se a divisão é exata,
iMda a funçlo INT.

10 HOTC

20 DIM 0(5000)
30 INPUT"NUMERO - "IN

40 FOR L • 2 TO N / 2

50 M • N / L
&> IF H - INT (H> THEN P - P + 1:
0<L) - M
70 fEXT L
BO PRINT"FATORES SAO:-

VO FOR L - 1 TO N / 2
IOO IF 0<L> > 1 TWN PRINT CHR«<7)I
Q<L»; BOTO 120
IIO Z - Z * 1

120 fEXT L
130 IF N - 1 THEN PRINT O«W)I
-|0MUH-:6OTD ISO
-38-

140 IF Z - I NT (N f 2> ThCN PRINT


c»«»<7>i*»eMuna
ISO PRINT : PRINT : CLEAR : SOTO 20

EXETPLO:
DESVX O PADRÃO

Calcula os valores da sédia, -iãncia •


faevlo padrão aaniial sente.
Coloque sob usa farsa tabular, depois
• tais no coaputadar.
Verifique se houve erros de aproxinaçao.
Procure descobrir parque.

10 HOTE
20 IWUT-VALCR - "IX

30 IF X - WWW TIEN 60
40 T - T * X:S - S ♦ X * 2:N - N ♦ 1

SO GOTO 20
60 A - T / N:V - S / N - A - 2:
D - 80R <V>
70 PRINT : PRINT CHRS<7>
■0 PRINT-TOTAL DOS VALORES: "IT
VO PRINT-1EDIA: "IA
IO0 PRINT-VARIANCIA: "|V

110 PRINT-DESV1O PADRAO: a|D


I/O PRINT : PRINT : CLEAR : BOTO 20
exemplo:

VALOR - 12
VALOR - 123
VALOR - 34
VALOR - 43
VALOR - 67
VALOR - 345
VALOR - 234
VALOR - 45
VALOR - 34
VALOR - 24
VALOR - 999999999

TOTAL DOS VALORES: 963


IEDIA: 96.3
variancia: 10774.41
DESVIO PADRAO: 103.799856
-41-

>B X NVERBO DO NUMERO

10 HOME
20 INPUT'NUEERO PARA CONVERTER
P/0 INVERSO "SN
!O R - l / N

40 PRINT--INVERSO ' "(R


!K> PRINT : CLEAR : GOTO 20

i XI wlu:

IIMRQ PARA CONVERTER P/O INVERSO 46


INVERSO - .0217391304

MM RO PARA CONVERTER P/O INVERSO 78


INVERSO = .0128205128

MM RO PARA CONVERTER P/O INVERSO 24


INVERSO « .0416666667
—42—

26» QUEM E O MENOR

Este aétodo é bastanta staples, cada nfl


acro que entra é coaparado coa o senor.
Altere o prograaa para fazer a coeparf
ção após a entrada de todos os minerns.

10 HOE : AR

20 IEU E UH NUMERO *|Z

30 IF ? - • THEN 80

40 N ‘1
SO IF I 1 TEN 0 - Z

60 IF Z < D TEN D - Z
70 BOTO 20

80 PRINT : PRINT CMW(7>


90 PRINT’D ENOR NUERO ERA "IO
ÍOO PRINT : PRINT : CLEAR : BOTO 20

EXEMPLO:

DE-E UM NUERO 12
DE-E UM NUERO 45
DE-E UM NUERO 15
DE-E UH NUERO 1
DE-E UH NUERO O
O MENOR NUERO ERA 1
—43—

■7 ARREDONDAMENTO

Esta á a técnica clássica para arradon-


tlMsnlo as BASIC.
Rapara qua asta linguagao não possui co-
«andeis rspacíflcos da arredandaaanto.

10 HOTE : CLEAR
20 PRINT"DE-ME UM NUMERO COM -
30 PRINT-NO MÍNIMO DUAS CASAS
DECIMAIS"
40 IhPUT-VALOR ORIGINAL S -|N
3<> R - INT <100 a N + 0.51 / 1OO

40 PRINT CHR*<7>
/O PRINT-S-|N|" VALOR ARREDONDA
DO "IR
•to PRINT : CLEAR : SOTO 20

riemplo:

U» HE UM NUTERO COM
Ml MÍNIMO DUAS CASAS DECIMAIS
VAi.lM ORIGINAL • 123.34239
• 1/1.34239 VALOR ARREDONDADO 123.34
20 MÉDIA

Este prograaa, ilustra o cálculo do uai


staple* aodia aritaética. Altere o prograaa pai
ra calcular uaa aédia ponderada.

IO HOME : CLEAR

20 INPUTaDE-fE O NUERO *|Z


30 IF Z -O TtEN 70

40 N - N ♦ 1
50 T • T ♦ Z

60 GOTO 20

70 A - T / N

100 PRINT : PRINT CMU<7)


11O PRINT"O NUERO ZEDIO E “|A

120 PRINT : PRINT : CLEAR : GOTO 20

EXENPLO:

DE-tE O NUERO 23
DE-tE O NUERO 32
DE-HE O NUERO 67
DE-tE O NUERO O

O NUERO tEDIO E 41.75


■* METADE DO INTERVALO

Adapte este programa para dividir o in-


Mvalo ea 3 partas iguais, e indicar os valores.

10 HOTE : CLEAR
20 IW>UT-DE-te UH NUERO '|Z

50 IF Z - O THEN 90
40 N - N ♦ 1

SO IF N- 1 THEN H - Z:L - Z

/.O IF Z< L TIEN L - Z

>C< IF Z> H TIEN H - Z

GOTO 20

90 N - L + < <H—L> / 2>


IOO PRINT : PRINT CMWC7)

110 PRINT'D MDERO fETADE DO INTER


VALO E "|M
liW PRINT : PRINT : CLEAR : GOTO 20
-46-

EXEMPLO:

DE-ME UM NUERO 12
DE-tE UM NUTERO 34
DE-tE UM NUERO 21
DE-tE UM NUtERO 43
DE-tE UM NUMERO 56
DE-tE UM NUERO 76
DE-ME UM NUERO 65
DE-tE UH NUERO 67
DE-tE UH NUERO O

O NUtERO METADE DO INTERVALO E 44


—47—

>O QUEM É O MAIOR

10 HOtE : CLEAR

20 INPUT“DE-tE UM NUERO "IZ


30 IF Z - O TIEN 60

40 IF Z > O -DEM 0 - Z

5o GOTO 20
60 PRINT I PRINT CHR«<7>
70 PRINT'0 MAIOR NUERO ERA “IO
lio PRINT : PRINT I CLEAR : GOTO 20

i «fhplo:

14 NE UM NUERO 34
14 HE UM NUERO 12
14 -MF UM NUERO 67
14 HE UM NUERO 87
14 Ml UN NUERO 45
14 NE UH NUERO 23
14 IE UH NUERO O

<i nuiíi E 87
31 MASS AI-TO/MAIB BAX1

10 HOME

20 dim mciooi
30 FOR L - 1 TD 100
40 iwvt-ioe: ■!*»

SO IF MM - — TIEN 140
60 IM>Ur-ESCORE: "I KIM
70 m<L> - MM ♦ • - ♦ MM
80 N - N ♦ 1
90 K - VAL (KIM)
100 IFN - 1 THEN LL - K:LM4 - m<L>:
m - k:nm - m<L>

110 IF K < LL TIEN LL - K:LfM - M»(L)


120 IF K > Ml THEN IM - K:Htt - M*<LI

130 IEXT L

140 PRINT-fENOR ESCORE: "|UM


ISO PRINT"NAIOR ESCORE: *|MM
-49-

EXEMPLO:

NOME: LUCIANO
I SCORE: 25
NOME: CARLA
tSCORE: 50
NONE: PEDRO
tSCORE: 78
MM: CARLOS
• •CORE: 5
NONE:
«NOR ESCORE: CARLOS 5
NA I OR ESCORE: PEDRO 78

MM: LUIS
•SCORE: 67
MW: MARIANA
I SCORE: 23
MM : PAILO
I MJCM: 15
MM: MARCELO
ittciM: 56
MM I
SM E8C0RE: PAULO IS
MAIOR ESCORE: LUIS 67
-50-

32 FATURAMENTO

)IDA - *|Q

30 IWTJT-PRECO UNITÁRIO - • ")P

70 CC ■ INT <1OO • C ♦ 0.5) / ÍOO

<1OO • T ♦ 0.5) / 100


INT <1OO 0.3) ÍOO

120 PRINT-TAXAS - • -JTT


-51-

140 PRINT

150 PRINTTATURAPENTO TOTAL - « *|FF


200 END

EXENPLO:

QUANTIDADE VENDIDA - IO
PRECO UNITÁRIO - «12500
IAXAS 2450
FRETE 4000
«TECO TOTAL - «125000
IAXAS - «30625000
FRITES - «4000

FATURATENTO TOTAL - «30754000


33 PREÇO UNITÁRIO

Obaarva qua o uao da PEEK <-163361 Q


voca ua aoa no coaputadar.

10 NOTE
20 IhPUT-NOrC DO ITEM E "|N«

30 I»>UT"QUANTIDADE DE ITENS - "IO


40 IM>UT"PRECO TOTAL PAGOS PELOS
ITENS - • "|P
50 U - P / Q
60 FOR L - 1 TO 10
70 SOUND - PEEK (-163361
80 KEXT L

90 HDTE
1OO PRINT N«|- PRECO UNITÁRIO - • "|U

200 END

EXEIELO:

NOTE DO ITEM E COTEUTADOR


QUANTIDADE DE ITENS - 5
PRECO TOTAL PAGOS PELOS ITENS - «19S
COMPUTADOR PRECO UNITÁRIO - 0310000
-53-

•4 LIBTAQEM SEM FIM

Ilustração d» ua prograaa do loop iníi-

10000 LIST
looio FOR L ■ 1 TO 100: »EXT L

10020 GOTO 10000

ritmo:

IOOOO LIST
looio FOR L ■ 1 TO ÍOO: NEXT L
10020 BOTO 10000

IOOOO LIST
10010 FOR L - 1 TO 100: NEXT L
10020 BOTO IOOOO

IOOOO LIST
IOOIO FOR L - 1 TO ÍOO: »EXT L
10020 GOTO IOOOO
-54-

35 TARJA8 NA TELA

O casando POKE possui 2 parâeetros:


O priaeiro. indica a posição de eeeórl
ee deciaal.
O segundo,representa o caráter que sw
trans-ferido para aquela posição de aaecria.

10 HOME
20 FOR V - 1024 TO 1999
30 R - INT (1OO • (RND (95>>>

40 IF R < 33 THEN 30
50 POKE V,R

60 NEXT V

70 BOTO 70
Este prograaa ilustra o uso da subroti-
«, n n*i«a subrotina é chaaada da vários pon-
‘4* do prograaa.
A subrotina 4 encerrada coa o coaando
WflXN. Quando na linha 20 e chaaada a subroti-
« giv coaeça na linha 900,a linha 30 é araaze-
tda ooaa pilha interna do sisteaa.
Quando o prograaa alcanpa a linha 910,
I* ><-«orna então, para a linha 30.

5 HCTE
10 FRINT-A-,-B","C":PRINT

20 GOSUB 900
SO IF X >50 TFEN A = A ♦ 1: GOTO 20

40 GOSUB 900
50 IF X r 50 THEN B = B ♦ 1: GOTO 2v
60 GOSUB 900
70 IF X > 50 THEN C = C ♦ 1: GOTO 20
IOO PRINT A,B,C: IF T « 19 THEN END

no A = 0:B - o:C « O:t - t ♦ i:


GOTO 20

120 END
900 X - INT (1OO • <RND <!>>>
910 RETURN
-57-

O prograaa dttirain* o coapriwnto da


•anaagea, anaa 4 , a fixa na linha 170,0 panto
Mitral da aenaagea.
Procure alterar o poeicionaaento da aen-

IOO HOTE : CLEAR


110 ItrUT'NOVA IENSA6EH a SER CEN
trada: -»h*

120 LH - LEN <H*>


I 30 LT - LH ♦ 4
140 TOR L 1 TO LT

150 AS* * AS* ♦


I .'.u TEXT L
1'0 P - <40 - LT) / 2
I BO HOE

190 PRINT TAB <P)AS«

200 PRINT TAB <P> "• ”1H»1' •"


210 PRINT TAB (Pl AS*

220 FOR L • 1 TO ?! PRINT : IEXT L


230 CLEAR t BOTO 11O
-58-

EXEMPLO:

NOVA MENSAGEM A SER CENTRADA: HICRO-KI1


• MICRO—KIT *
••••••MM*»*

NOVA IENSAGEN A SER CENTRADA: COM>UTADO

• CÇM>UTADOR •

NOVA MENSAGEM A SER CENTRADA: FITAS

• FITAS *
Procure expendir a abrangência do pro-
|< sea construindo tabelas de divieSo e eultipli-
M An-

10 HOE
20 PRINT-PARA CORRER, APERTE R -
30 imiT-PARA LISTAR, APERTE L' -|AS
40 IF AS - -R- TTCN 1OO

50 IF AS - -L- THEN 200

60 GOTO 20
100 PRINT
110 thPUT-OS DOIS NÚMEROS SAO -|X,Y
120 PRINT"PRIMEIRO DIVIDIDO PELO
SEGUNDO - -IX / V
130 PRINT
140 BOTO 20
/OO PRINT
210 LIST
220 PRINT

230 SOTO 20

EXE1EL0:

PARA CORRER,APERTE R
PARA LISTAR,APERTE L

OS DOIS NUEROS 8AO 23


??67
PRI1EIRO DIVIDIDO PELO
.343283962

PARA CORRER.APERTE R
PARA LISTAR,APERTE L
—61 —

NÚMEROS DE ARMSTRONG

ilO
IO N - 2000

20 PRIHT-NUMEROS DE MWS1
23 PRINT"ENTRE 1 E 2000“

30 PRINT
40 FOR I - 1 TO N

50 S - O
60 K ■ I

70 Q - INT <K / 1O>

80 R - K - IO • O
90 S “ 8 ♦ R * R * R
IOO K • fl

110 IF K < > O TTEN 70

120 IF I < > S TVER 130


125 PRINT I

130 «XT I

140 EM>

EXENPLO:

ENTRE 1 E 2000

153
370
371
407
40 CONVERSÃO P/BABE
MENOR QUE DEZ

Rapar* que a subrotina qua faz a eudança


4a bas* da nuaaração coaaça a* 1500.
□ vetar auxiliar aonde sSo araazenados
al gari anos na nova base é o vetar A.
Observe que este vetar é indexado pela
<a«iével D na iapressão.
A técnica de eudança de base,constste na
rflviaáo do núaero pela base salvando-se o resto,
>«te sara o algarisao na nova base.

90 HCTE

95 DIM A<15>

100 IM>UT"A NOVA BASE ? “IB


120 PRINT-PRIMEIRO E ULTINO"!

125 PRINT" MICRO PARA"

130 INPUT"CtMVERTER ? "|F,L


140 FOR I - F TO L
150 PRINT

160 60SUB 1500


180 PRINT" "IIITAB <71|
190 FOR D ■ J TO 1 STEP - 1
200 PRINT " "IA(D)I" “|

210 NEXT D
220 tEXT I

230 END

1500 II - I
1510 J - 1
1520 B - INT <11 / B>

1530 R - Il - Q * B
1535 II - B

1540 A<J> - R

1545 J - J ♦ 1

1550 IF 3 > - B TIEN 1520

1560 ACJ) - 0
1570 RETURN

1580 END

EXEIELO:

A NOVA BASE7 2
PRIMEIRO E ULTIMO MMERO PARA
CONVERTER? 123,126

123 1 1 1
124 1 1 0 O
125 1 1 1 1 1 O 1
126 1 1 1 1 1 1 O
—65—

41 ÀREA DE TRXÂNBULO

Aqui ■ usada a função aabutida SOR.que


cuia a raiz quadrada (acatara root) , tnaandn
n

baaa, o aaaiperíaatro P,» os lados A, B a C.


Calcule agcra a area do triângulo, quan—
<

a* dada a sua base a altura.

10 PRINT'COWRIMENTOS DOS LADOS*

20 IiPUT* *|A,B,C
3OP-A + B + C
40 PRINT"PERÍMETRO - -|P

45 PRINT

50 P - 0.5 * P
60 S - SOR <P > <P - A) «<P - B)<
<P - C>>
70 PRINT-AREA - *JS

80 EM>

exewlo:

COWRIKNTO 008 LADOS


15,20,25
PER1ICTRO - 60
AREA - 150
42 PROQRAMA DO CIRCULO

Esta prograaa calcula as csordenadaa


centro da ua círculo e o seu raio, aando
cidas as coordenadas da 3 pantos da sua circs
Estas 3 pantos sic fornecidos através
coaando DATA.
Altera o prograaa, para recetoer as cos
denadas,através do coaando IfFUT.

1OO PRINT'DETERHINACAO DE IM CIRCULO '


102 PRINT"PASSANDO ATRAVES DE 3 POHTTÍ
DADOS"

11O PRINT

120 REH AS COORDENADAS DOS 3 PONTOS


DEVEH SER COLOCADAS MMA INSTRU
CAO DE DATA
130 READ X1,Y1,X2,Y2,X3,Y3
140 K? - - <X2 - Xl> / <Y2 - Yl>
150 K3 - - <X3 - XI) / <Y3 - Y1>

155 D - K3 - K2
160 IF D ■ O TWN 230

170 H2 - 0.5 a <Y1 ♦ Y2 ♦ <X2 • X2


- XI * Xl> / <Y2 - Yl>)

100 H3 - 0.5 a <Y1 ♦ Y3 ♦ (X3 aX3


- XI a Xl> / <Y3 - Yl>>
—67—

190 XO - <H2 - H3> / D

200 YO - (K3 • H2 - K2 * H3) /D

210 R - SOR <<X1 - XO> - 2 ♦ (Y1


- YO» " 2>
220 PRINT-XO - -|XO»
222 PRINT" YO - “lYOl

224 PRINT- R - -|R

223 EM»
230 PRINT-PONTOS COLlfEARES "

235 PRINT-NflO TEN SOLUCAO"

240 DATA 2,-l.O,l>2>3

250 EM)

EXEM>LO:

DETERMINAÇÃO DE UM CIRCULO
PASSAMX) ATRAVÉS DE 3 PONTOS

XO -2 YO - 1 R-2
—68—

PLOTí

0 coaando DEF FN define uaa funçáo que


UMdl MAt0fwçio^eebutída ABS retorne o vai»
absoluto da variável.
Sugeriaos substituir a função defini»
na linha 120 e fazer a plotages das aesaas.
Se possível, usar uea lapressora, pa»
tal, use o coaando PR«1.

HO REM A FUNCAO FNA REPRESENTA


A CURVA PARA PLOTAR

120 DEF FN A<X) - EXP <- X * X • 0.51

130 A - - 3

135 L - 37
140 B - 3

150 Y1 - O
160 Y2 - 1

165 H - 0.2
170 6OSUB 500

180 EM)
500 D - Y2 - Y1

510 K - INT <<L - 1> /Dl

520 Z - INT <K • ABS <Y1> * 0.51


330 FOR X -ft TO B STEP H

540 Z1 - FN A<X) - VI
550 Z1 - INT <K « Z1 ♦ 0.5)

560 IF Z1 < > Z T>d 570


570 IF Z1 > - Z THEN 580

575 PRINT TAB <Z1 ♦ 1)|-.-I


576 PRINT TAB (Z «- 1)1-1-

577 SOTO 390

580 PRINT TAB <Z ♦ DI-I-l

585 PRINT TAB <Z1 ♦ 1)1*.•


590 NEXT X

600 RETURN

610 EM)
-70-
—71—

1OO DIN A<11>

110 N - 11
120 PRINT-LISTA INICIAL *

130 PRINT
140 FOR I - 1 TO N

ISO READ A<I>


160 PRINT- -|A(I>|-

170 NEXT I
ISO BOSUB 500

190 PRINT

19S PRINT
200 PRINT-LISTA ORDENADA'
210 PRINT

220 FOR I - 1 TO N
—72—

230 PRINT* "|A<I>|* -I

240 NEXT I
250 EM>

500 D - 1

510 0 - 2 • D
520 IF D < - N TIEN 510

530 D - INT <<D - 1» / 2)


540 IF D - O KEHL 700
550 FOR I ■ 1 TO N - D
560 J - I

570 L - J + D
580 IF A<J> < - A(L> TIEN 640

590 X - A(J>
600 ACJ> - A(L>

610 A<L> - X
620 J - J - D

630 IF.J 7 0 TIEN 570


640 IEXT I
—73—

RETUW
um
DATA 3,-1,4,10,8,9,5,-10,-5

DATA 25,22

EXEM>L0:

LISTA INICIAL
3 -1 4 10 8 9 5 -10 -5 25 22

LISTA ORDENADA
-10 -5 -1 3 4 5 8 9 IO 22 25
-74-

45 MERGE

Este prograaa.coa base ee dues list­


eria uaa terceira,usando a técnica de aerge,
intercala os conteúdos das list'as.
Existes ponteiros que avanças sequ**
alsente pelas trés listas.
Estes ponteiros , são representados^
índices (I, J e Kl que controlas a posiça^v
cada uaa das listas.
Agara,aodlfique o prograsa para fazer»
serge de trés listas coa entrada.

ÍOO DIM AilOOl,B<1001(C<2OO>


1IO REM READ LIST A

120 READ N
130 PRINT-LISTA A : ”

140 FOR I - 1 TO M

ISO READ A(I>

1S3 PRINT" -lAilll- -I


157 NEXT I
160 PRINT
170 PRINT

ISO REM READ LIST B


190 PRINT-LISTA B : -

200 READ N
210 FtR I - 1 TO N

220 READ B<1>


223 PRINT" -I
227 NEXT I

230 PRINT

240 PRINT

250
260 PRINT'LISTAGEN JUNTA :*

270 FOR I - 1 TO N + N
280 PRINT" -|C<I>|- -I

HEXT I

290 END
300 I - 1:J - 1:K - 1
310 IF A(I> > - B<J) TWN 350
320 C<K> - A<l>:l - I ♦ 1

330 IF I > N THEN 390

340 K - K ♦ 1: GOTO 310


350 C<K) - - J ♦ 1

360 IF J < - N THEN 340


365 REN COPIA RESTD DE A PARA C
-76-

370 K - K + 1:C<K> - A(I)


375 I - I ♦ 1
380 IF I < - M THEN 370

381 RETUV4

385 REN COPIA RESTO DE B PARA C


390 K - K * 1:C<K> “ B(J)
395 J - J ♦ 1

400 IF J < ■ N THEN 390

401 RETUW
410 DATA 5
420 DATA 4,7,9,12,45
430 DATA 4
440 DATA -1,5,6,60

450 END
EXEMPLO:

PRIMEIRA LISTA :
4 7 9 12 45
SEBUNDA LISTA :
-1 5 6 60
LISTA APOS 1EREE :
-1 45679 12 4560
♦ OXA DA SEMANA

Esta prograaa,detaraina o dia da seaana


(B datas históricas e futuras.
Vocft pode prever aniversário de parentes.
|pa coao,os dias ea que ocorreraa fatos históri-
fn« aarcantes.
Experiaente a data do seu aniversário.

100 REM PROGRAMA PZCALCULAR

iOS REM O DIA DA SEMANA


11O DIM DS<7>

120 OKI) « “SEGUNDA"


130 DS<2> - "TERÇA"

140 D*(3> - “QUARTA*


150 D»(4) - "QUINTA"

160 D»<51 - "SEXTA"

170 DS(6) - "SABADO"

180 D«<7> - "DOMINGO*


190 PRINT"DATA (ffl.DD, AAAAl "I

200 INPUT" -|M,D,V

203 IF 0 < - O TbEN END

210 GOSUB SOO


220 PRINT DS(Z>
-78-

230 SOTO 190

300 PRINT Y
505 IF Y < ■ 1732 THEN 620

510 N - INT (0.6 ♦ 1 / N>


520 L - Y - N

530 P - M ♦ 12 * N

540 C - L / 100

550 Y1 - INT (C>


560 Z1 - INT (C / 4)

570 Z3 - INT (5 * L f 4»

580 Z4 - INT (13 • <P ♦ 1) / 5>

590 Z - Z4 ♦ Z3 - Y1 + Z1 ♦ D ♦ 5

600 Z - Z - (7 • INT (Z / 7>> ♦ 1

610 RETURN
620 PR I NT “O ANO DEVE "J

625 PR I NT "SER APOS 1752"

630 END
EXETPLO:

DATA(DD,W1,AAAA> I
22,02,1984
QUARTA
-79-

47 INTERVALO ENTRE DATAS

O prograaa pada a priaelra data a trans-


Ipraa ea dias,na subrotina SOO.
Depois, faz o aaian coa a segunda data.
Calcula a diferença de dias na_ linha
NO. Na linha 570, é feita a conversão para
Ás*.
Usa este prograaa para fazer a contagea
to teapo de serviço para fins de aposentadoria.

ÍOO REN COMPUTACAO DE INTERVALO


1O1 REM ENTRE AS DATAS

110 PRINT-PRUEIRA DATA"»

115 PRINT*(MN,DD,YYYY) ?"J


120 INPUT* *|N,D,Y

130 6OSUB 500

140 Cl - C
150 PR1NT-SE6U4DA DATA"»
155 PRINT" <m,DD,YYYY> ?"»

160 INPUT* -;N,D,Y


170 GOSUB 500
180 C2 « C
185 PRINT
190 C3 - C2 - Cl

195 PRirfT-p TE|f>O ENTRE AS DATAS E ? »l


197PRINT C3J" blAS ■

200 END
5Ô0 A - Y:B - 1OO
506 GOSUB 1000:Y2 - F

51Q N ■ O
520 IF H > 2 THEN 570
525 N - 2
530 IF Y2 ■ O TTEN 550

535 A - ¥2!B - 4
536 SOSUB 1000:R - F
540 IF R < >0 THEN 570
545 GOTO 560
550 A - Yi:B - 4
551 GOSUB 1OOO

552 IF F ' > O THEN 570


560 N . 1

570 C » INT (365.25 • Y2> * INT


(30.56 • H> ♦ N ♦ D
-81-

580 RETURN
990 END

1OOO F - A - B * .INT <A / B>


1O1O RETURN

9999 END

EXETPU):

PRIMEIRA DATA<DD,HM.AAAA>? 12,06,1856


8E8UMM DATA<DD,NN,AAAA>? 24,02,1984

O TEMPO ENTRE AS DATAS E? 10118 DIAS


H?

46 LISTA TELEFÔNICA

ÍOO REN LISTA TELEFÔNICA

110 REN
120 REN

130 REN

140 REN
ISO PRINT TAB <71; “LISTA TELEFONICA

160 PRINT
170 PRINT'ULTINO “ITAB (1O1I
171 PRINT-PRItEIRO -

175 PRINT"N0»E “1TAB <10)1

176 PRINT-NOW 1 TAB <1911


177 PRINT“TELEFOFE“ I TAB <2811

178 PRINT"BAIRRO“

180 PRINT
190 I - O

200 READ LS,FS,RB,TB

210 IF LB - -ZZZ- TIEN 250


220 PRINT LOITAB <1011FBI

221 PRINT TAB <19>|RB|


223 °RINT TAB <291ITO
230 I - I + 1
240 SOTO 200

2S0 PRINT

260 PRINT-NUERO DE ENTRADAS*!


261 PRINT---II

26S EM)

270 DATA PEREIRA.HARIANA, *2809091 *,


CENTRO

200 DATA OERHONT,ADRIANA,*2871365*,


IPAKENA

290 DATA PICCOLO,ROBERTO,-2275341-,


IPAIEMA

300 DATA TATA8IBA.MARCAL, "2471339",


IPANEMA

900 DATA ZZZ,Z,3,4


910 END

EXETPLO:

LISTA TELEFÔNICA

ULTIMO PRltEIRO
NONE NOTE TELEFOIE BAIRRO
PEREIRA MARIANA 2809091 CENTRO
CHERHONT ADRIANA 2871365 IPMENA
AV previsão de vei

1OO PRINT-PREVISAO DE VEMJAS"


110 PRINT
120 PRINT'ANO CORRENTE E"l

130 IHPUT" IdEMS? "|Y,B


140 PRINT
ISO PRINT-TAXA DE CRE8CHENTO* I

160 MFUT-? -|R

170 PRINT
ISO PRINT-NUCRO DE ANOS PARA"I

IBS PRINT'PREVISAO'f

190 INPUT’? -IN


200 PRINT

210 PRINT" ANO-I

21S PRINT" VENDAS*


220 PRINT

230 PRINT" -IYITAB <16>IS


240 R1 - 1 ♦ 0.01 • R
250 FOR I - 1 TO N
260 Y - Y ♦ 1
270 S - 5 • RI
280 PRINT" ->Y|TAB <16>5S

290 NEXT I

300 END

EXEm.O:

PREVISÃO DE VENDAS

ANO CORRENTE E VENDAS? 1984,10


TAXA DE CRESCIIENTO? 12

) DE ANOS PARA PREVISÃO? 5


ANO VEMMS
1984 10
1985 11.2
1986 12.S44
1987 14.04928
1988 IS.7351936
1989 17.6234168
SO PREVISÃO DE VENDAS
EXPANDIDA

too PRINT"ANO, VOLUTE E"l

105 PRINT- FATURAIENTO*

11O ITFUT*VENDAS -|Y,V,S

120 FR1NT"TAXAS<Z> DE INCRETENTO •


-.25 t-RINT- VOLUTE E *

130 INPUT" ITFLACAO ? "10, I


140 PRINT"NUTERO DE ANOS"|
145 PRINT- PARA PREVISÃO"I
ISO ITPUT"? "IN

160 O1 - 1 ♦ 0.01 • Q

170 II >01 » <1 ♦ 0.01 • II


180 PRINT

190 PRINT- ANO VOLUTE" 1

195 PRINT* VENDAS BRUTAS"


200 PRINT

210 PRINT" -IYITAB <111|V;

215 PRINT TAB <23118


220 FOR J ■ 1 TO N

230 Y - Y + 1
-87-

240 V - V • QI

230 S - S • Il

260 PRINT* "IYITAB <11>|VI

265 PRINT TAB (23)IS

270 IEXT J

280 END
51 PROBRAMA DE ANUÍDA*

Esta prograaa da anuidada, nos dl>


axeaplo da ua prograaa da cálculo financeiro,
Aconsalhaaos criar várias,rotinas fII*
cairas,que sarão úteis na vida prática.

1OO REN ANUIDADE : CADA ANO A NESHA


FRACAO DO PRINCIPAL E PA6A.
120 PRINT “MONTANTE ,”

121 PRINT”TAXA DE JUROS , *


122 PRINT” ANOS PARA PASAR"!

123 IM»UT”? *|L,R,N

130 R - R e 0.01
140 O - LSU - L
150 Ri - L / N

l&O PRINT

170 PRINT'PASAtENTO JUROS” I


173 PRINT” TOTAL DO NONT.DEVIDO*

ISO FOR J - 1 TO N
190 I - U » R

200 R2 - R1 + I
210 0 - 0 ♦ I
220 U - U - RI
230 PRINT- *)J|TAB <11)1
23S PRINT 11 TAB (22>|R2

240 NEXT J
250 PRINT

251 PRINT-TOTAL DE JUROS -|Q

255 PRINT : GOTO 120

260 END

EXEMPLO:

MONTANTE ,
TAXA DE JUROS ,
ANOS PARA PAGAR? 500000,10,5

PAGAMENTO JUROS TOTAL DO MONT.DEVIDO


1 50000 150000
2 40000 140000
3 30000 130000
4 20000 120000
5 IOOOO 110000

TOTAL
52 MEDIA ARITMÉTICA
8IMPLES

10 h - o:N - o

11O READ A
120 IF A - - 999 THEN 170

I3ON ■ N + 1

140 M - H ♦ A
150 GOTO 110
170 M “ M / N

IGO PRINT'NUHERO DE

IG5 PRINT'EXEIELOS - “IN

190 PRINT
200 PRINT-MEDIA-1 TAB <19M

205 PRINT-- "|M


210 DATA 12,25,15,0,-999

220 END

EXETPLO:

NUERO DE EXEIELOS - 4
FEDIA - 13
100 N - O

11O Al - O
120 A2 - □

12S A3 - O

127 A4 - O

130 READ A
140 IF A - - 999 -DCN 190

ISO N - N ♦ 1
1S5 Al - Al ♦ A
160 X - A • A

162 A2 - A2 * X
16S A3 - A3 ♦ X • A
167 A4 - A4 ♦ X * X
ibo etrro 130

190 M - Al / N
200 V - <A2 - N * H * H> / <N - 1)

210 8 - SOR <V>

220 PRIMT-NWtRO DE "I

22S PRINTaEXBVLO8 - "|N


—92—

230 PRINT" "J

233 PRINT"TEDIA - -|M


240 PRINT-

245 PRINT-VARIANCIA - *JV


250 PRINT-DESVIO PADRAO - "JS

253 M2 - M * M
255 SI “ (A3 — 3 • M * A2 + 2 • M2
• Al > t (N * V ♦. S)
260 K - <A4 - 4 * M * A3 ♦ 6 * M2
• A2 - 3 • N • M2 • M2) Z <N •
V • V)

270 PRINT-SKEMESS - -JSI


280 PRINT'KURTOSIS - "IK

285 END
300 DATA i.2,3,4,5

310 DATA -999


330 END

EXEMPLO:

NUTERO DE EXETELOS - 5
TED IA - 3
VARIANC1A >2.5
DESVIO PADRAO - 1.58113883
SKEWrESS - Ò
KURTOSIS > 1.068
-93-

50 HOFE
100 DIH T<100),Y<ÍOO)

110 READ N
120 FOR I ■ 1 TO N

130 READ T<I),Y<1)


140 IEXT I

150 6OSUB ÍOOO


160 PRINT TAB (7) I - 1MX1NACAO - -JA

170 PRINT-Y INTERCEPTA - -|B

ISO PRINT
190 PRINT- T-JTAB <6>J-Y

192 PRINT*IEDIDO"|TAB (IB);


194 PRINT-Y CALCULADO"

2vO PRINT
210 FOR I ■ 1 TO N

220 VI - A • TCI» ♦ B
230 PRINT- -|T(I)
232 PRINT TAB (1O)|Y(I>1
234 PRINT TAB (22>|Y1
240 NEXT I
245 END

250 DATA 5

260 DATA O,1,1,1.5,2,2,4,3,6,4


1UOO U1 - O
1O1O U2 - O

1020 VI - O
1030 V2 - O
1040 W-O

1050 FOR 1 = 1 TO N

1060 U1 = U1 ♦ T(I)

1070 VI - VI ♦ Y(I>
1080 U2 > U2 ♦ TCI» * Till

1090 V2 - V2 * Yd) * Yd)

1100 W - W ♦ Td> • Yd)


1110 «XT I
1120 A - <W - U1 • VI / N> / <U2 -
U1 • U1 / N)
S BERADQR DE N4JMEROS
ALEATORX08

50 HOME
1OO REH TESTE DE UNA DISTRIBUIÇÃO
DE UH
102 REH GERADOR DE NUTERO ALEATOR 10

120 PRINT*I«BERO DE CLASSES*!


125 INPUT*? *|C
130 DIM A(C)

140 FOR I - 1 TO C
150 A(I> - O

160 hEXT I
170 PRINT“QUANT IDADE DE NUIEROS *1

180 PRINT"ALEATORIOS PARA PRODUZIR *

182 IW>UT- "IN

185 FOR I - 1 TO N
190 X - INT (RND <1> • C> + 1

200 A(X> - ACX) ♦ 1

210 NEXT I
-V7-

220 FOR I - 1 TO C
230 PRINT" “|I|

235 PRINT TAB <7)|ACI>


240 «XT I

EXE«LO:

NUTERO DE CLASSES? IO

1 3
2 6
3 5
4 5
5 5
6 6
7 7
e 7
9 5
10 1
=5d» ZODÍACO

Aqui • usado o casando ON BOTO na III*»


200.
Dependendo do valor da variável M,o pTV
graaa desviará para ua deterainado ponto.
Se N-l a prograaa ira para a linha 600.
Se N-2 taabáa.
Se >**3 ira' para 900,e assia por diantp,

1OO H0»E
115 DIM AS<12)

120 FDR 1 - 1 T0 12
125 READ AXI)
130 NEXT 1
140 PRINT'SEU ANIVERSÁRIO "
145 INPUT" CIES, DIA) 7 "|N,D

180 1 - «
190 L - 20
200 ON M GOTO 600,600.500.600,
500,500,400,300,300,300,
400,300
300 L - L ♦ 1
400 L - L ♦ 1

500 L - L ♦ 1
—99—

SEU ANIVERSÁRIO
(HES.DIA)? 03.24
SEU SIGNO E ARIES

SEU ANIVERSÁRIO
(HES.DIA)? 10,12
SEU SIGNO E LIBRA
— 1OO—

□ cálculo do fatorial é realizado pv


núaeros até 33.
Caso voei um ua niíaero aaior, o prapp*
■a indicará uaa condição do erro de estouro, pp
ultrapassar a capacidade do caapo.
Pense nuaa solução, para c&lculo de fato
rial,de núaeros aaiores que 33.

5 HOJE
IO IK’IIT" INDIQUE O NUERO ATE 33 *;N

20 F - 1

30 FOR I « 1 TO N
40 F - F * I

SO KXT I
60 PRINT F

EXEIELO:

INDIQUE O NUTERO ATE 33 7


3040
INDIQUE O NUERO ATE 33 8
40320
F»I

20 FOR K - 1 TO 1OOOO
30 S • S ♦ 1 / (K * II

40 PRINT <90 « S) * 0.2S.K


SO HEXT K

EXETPLO:

3.00007029 1
3.12710707 2
3.13615238 3
3.13899789 4
3.14016118 5
3.14072172 6
3.14102416 7
3.1412014 8
3.14131204 9
3.14138462 10
—102—

Sâo «altas sucessivas Iterações,ats a*


o valor da F, atinja IO elevado a 10.
Nesta altura o valor de K á 14.

10 E - 1
20 FOR K - 1 TO ÍOO

30 F - 1

40 FOR I - 1 TO K
50 F - F * I

60 ftEXT I
70 E • E ♦ 1 / F
BO IF F > IO ‘ IO TTEN ÍOO
90 HEXT K

100 PRINT K,E

2.71028183
— 103—

d>O CLOCK ARITMÉTICO

Rapar* a geração randâaica das horas * a


Iperaçáo ariteética que ■ realizada.

SO HONE
100 REM CLOCK ARITTETICO
110 FOR L - 1 TO 8

120 T - I NT (12 • RNO <1> * 1)

130 H - I NT (36 * RNO (1> ♦ 1)


140 S ■ T + H

ISO IF S < - 12 TIEN 180


160 S - S - 12
170 GOTO ISO
180 PRINT HI- HORAS DEPOIS DAS -|T|
- HORAS"

190 PRINT" 8ERAO -|S|- (ERAS ■


195 FOR Y - 1 TO 500: HEXT Y
200 PRINT
210 IEXT L
220 END
— 104—

EXEHPLO:

3OH0RAS DEPOIS DAS 7 HORAS


SERÃO 1 HORAS

SHORAS DEPOIS DAS 7 HORAS


SERÃO 3 HORAS

32HURAS DEPOIS DAS 7 HORAS


SERÃO 3 HORAS

12HORAS DEPOIS DAS 7 HORAS


SERÃO 7 HORAS
-105-

NÚMEROS PRIMOS GEMEOS

ÍOO REM PRIMOS GETEOS MENORES QUE


1OOO

110 H01C
115 DIM A11OOO1 ,B<4OO>

120 FOR X - 2 TO 1OOO


130 A(X> » O
140 NEXT X

160 S - SQR <1OOO>

170 FOR B « 2 TO 1OOO


180 1F A(B> < O UEN 250

190 C - C ♦ 1

200 B(C> - B

210 IF B > S TIEN 250

220 FOR X - B TO 1000 STEP B


230 A(X> - - 1

240 «XT X
250 NEXT B

260 PRINT-PRINOS 6EMEOS*


270 PRINT
-106-

280 FOR X - 2 TO C

290 IF B(X> - B<X - 1) < > 2 THEN


310
300 PRINT B<X - 1>|" -;B<X>

310 NEXT X
320 END

exemplo:

3 3
3 7
11 13
17 19
29 31
41 43
59 61
71 73
1O1 103
107 109
137 139
149 151
179 181
191 193
197 199
-107-

d»Z PREVISÃO DE .AÇÃO

Exeaplo da UM projeção futura. Um vez


tonhecidas as condições de cresciaento, é auito
• ac íl e rápido projetar dados futuros.

3 HOME

10 REN POPtJLACAO

15 PRINT “PREVISÃO DE POPULACAO*


20 PRINT

25 PRINT- ANO* ( "POPtlLACAO EN NI


LHOES HAB. *
35 PRINT

45 Y - 1976 ♦ T
» 8

P - 120 • <1.029 * T>


PRINT Y,P
& S

IF P > 2 « 221 T>EN 75

T - T ♦ 1
70 6OTO 45

75 PRINT

80 PRINT-A POPULACAO DO BRASIL*


-108-

83 PRINT’DOBRARA EH -|T»- ANOS'

90 END

EXEMPLO:

PREVISÃO DE POPULACAO

ANO POPULACAO EM MILHOES

1976 120
1977 123.48
1978 127.06092
1979 130.745687
1980 134.537312
1981 138.438894
1982 142.543622
1983 146.584777
1984 150.835735
S HOTE

10 PR1NT“TRIANBULO DE PASCAL*
20 FOR N - O TO 11

30 FOR R - O TO N

40 C - 1
50 FOR X-NTON-R+1 STEP - 1
60 C - C ♦ X / <N - X ♦ 1)

70 IEXT X
80 PRINT C|
90 «XT R
ÍOO PRINT

110 IEXT N

120 END
EXETPLO:

TRIÂNGULO DE PASCAL
0
11
221
3331
44641
55101051
6613201561
772135352171
88285670562881
993684126126843691
10104512021025221012045101
1111551653304624623301655311
-111-

FXBfJNACCI

100 REM NUEROB DE FIBOMKXI

110 DIN F<30>

120 PRINT-MB0O8 DE FIBONACCI-


130 PRINT
140 F<1> - 1

ISO F<2> - 1

160 FOR N - 1 TO 28

170 F<N ♦ 2> - F<N + 1> ♦ F<N>

180 IEXT N

190 REN IWRIIE NUN.DE FIBONACCI


200 FOR X - 1 TO 30

210 PRINT FIX),


220 HEXT X

230 EM)
—112—

EXEMUI:

IUEROS DE FI1 1
1
5
13 21 34
S3 144
233 610
987 2584
4181 10946
17711 46368
73025 196418
317811 832040
-113-

10 PRINT-NULTIPLICACAO DE MATRIZES*

20 PRINT
30 01H A<10,1O>,B<10,10)

40 PRINT*DIMEN8AO DA MATRIZ 1 (R,C)"I

SO INPUT Rl.Cl
60 PRINT’D!MENSAO DA MATRIZ 2 (R,C)"I

70 1M>UT R2.C2
BO IF Cl - R2 THEN HO
90 PRINT'NAO PODE SER MJLTIPLICADAI
OUTRA DIIENSAO IEEE8SARIA*

100 SOTO 40
110 PRINT“MATRIZ 1:*

120 FOR J - 1 TO R1

130 PRINT"LIMM "IJ


140 FOR I - 1 TO Cl
150 PRINT-VALOR COLIMA 'III

160 I»PUT A(J,I)

170 NEXT I
180 HEXT J
-IM­

190 PRINT

200 PRINT-NATRIZ 2:’

210 FOR J ■ 1 TO R2

220 PRINT-LHMA -|J

230 FDR I - 1 TO C2

240 PRINT-VALOR COLUTM I|


250 INPUT

260 NEXT I

270 ICXT J
280 PRINT
290 FOR I - 1 TO R1

300 FOR J - 1 TO C2

310 8-0
320 FOR K - 1 TO Cl

330 S - 8 ♦ A <I,K> »
340 1CXT K
350 PRINT 8|- -I
360 NEXT J

370
exemplo:

MATRIZ 2:
LINHA 1
VALOR COLUNA 170
VALOR COLUNA 2756
VALOR COLUNA 373
LINHA 2
VALOR COLUNA 17S
VALOR COLUNA 276
VALOR COLIMA 379
LINHA 3
VALOR COLUNA 171
VALOR COLIMA 271
VALOR COLUNA 374

13 -39
193 1235 452
-116-

10 PRINT"INVERSÃO DE MATRIZES *
20 PRINT
30 DIN A(1O,1O>,B<1O,1O>

40 PRINT"DtlENSAO DA MATRIZ"!
SO IWlir R

60 PRINT"ELE>ENTDS DA HATRIZ:"
70 FOR J - 1 TO R

SO PRINT"L»MA “IJ
90 FOR I - 1 TO R
100 PRINT"VALOR DA COLUNA "|H

11O IIEUT A<J,I>


120 TEXT I

130 B<J,J) - 1
140 TEXT J

150 FOR J - 1 TO R
160 FOR I - □ TO R
170 IF All,J) < > O ITEM 210
-117-

180 NEXT I

190 PRINT"MATRIZ SINBULAR

200 GOTO SOO

210 FOR K - 1 TO R

220 S “ A<J.K>

230 A<J,K> - A<I,K>


240 A(I,K> - 8

250 8 - B<J,K>

260 BCJ.Kl - B(I,K>

270 B(IfK) - S
280 *EXT K
290 T - 1 / A<J,J>
300 FOR K - 1 TO R

310 A(J,K> - T * A(J,K>

320 B(J,K> - T • B(J,K>

330 NEXT K
340 FOR L - 1 TOR

350 IF L ■ J TIEN 410


-11B-

360 Y - - A(L,J>

370 FOR K - 1 TO R

A(L,K> - A<L,K> + T * A<J,K>

390 B<L,K> - B<L,K> + T * B<J,K>


400 IEXT K

410 IEXT L
420 NEXT J

430 PRINT
440 FOR I - 1 TO R

450 FOR J - 1 TO R
460 PRINT INT <B(I,J) • ÍOOO *
0.5) / 10001" -I
470 IEXT J
480 PRINT

490 IEXT I
—119—

exewlo:

INVERSÃO DE MATRIZES

DI1ENSAO DA IMTRIZ73
ELEMENTOS DA MATRIZ:

VALOR DA COLUNA 1?2


VALOR DA COLUNA 2?4
VALOR DA COLUNA 3?7
VALOR DA COLUNA 1?2
VALOR DA COLUNA 229
VALOR DA COLUNA 37-4
VALOR DA COLIMA 1^5
VALOR DA COLUNA 2?8
VALOR DA COLUNA 3?4

.51 .VI .03


.033 .1 .03
.044 2E-O3 .175
-120-

67 ÁREA DO POLIGDNO

10 PRINT-AREA DE UM POLIGONO*

20 PRINT
30 DIM X(25),Y<25>

40 PRINT-NUTERO DE VERTICES (BA


TA 'O' P/TERMINAR O PROGRAMA)*I
50 IWVT N
60 IF N - 0 THEN 230

70 FOR I - 1 TO N
80 IF I > 1 TKEN 110
90 PR I NT "COORDENADAS DO VERTICE ")H

10o GOTO 120


110 PRINT* VERT I
CE -I II

120 INPUT X(I),Y<I>


130 IEXT I

140 X<N ♦ 1) - X(l>

150 Y(N + 1) - Y<1>


160 A - O
170 FOR I - 1 TO N
-121-

180 A - A + <X<I> + X<I + 1>> •


<Y<1> - Y<I + 1>>

190 NEXT 1
200 PRINT-AREA - -JA / 2

210 PRINT
220 SOTO 40

EXEMPLO:

AREA DE UN POLI6ONO

NUTERO DE VERTICES (BATA O P/TERNINAR


O PR0GRM1AI74
COORDENADAS DO VERTICE 171,1
VERTICE 274,1
VERTICE 371,4
VERTICE 474,4
AREA -O
-122-

6S ANALISE VETORIAU

1 DEF FN A<X> - - ATN <X / SQR


<- X • X + 1>> ♦ 1.5708

5 HOTE

IO PRINT"ANALISE DE DOIS VETORES"


30 DIN X<21,Y<21,Z<2>,H<2.

35 PRINT
40 PR INT "VETOR 1: X,Y,Z":

50 IM>UT X(1>,Y(1>,Z<1>

60 PR1NT-VETOR 2: X,Y,Z"5

70 I TELIT X(2),Y<2),Z<2>

80 PRINT
90 FOR I - 1 TO 2
ÍOO N<I) - SQR <X(I> " 2 ♦ Y(I> * 2 ♦
Z(I> " 2>
11O IF H<I> - O TIEN 220
120 PRINT-VETOR -|I»-:-

130 PRINT "MAGNITUDE: "M<I>

140 8 - 57.29578
150 J - X<I> 7 M<I>
—123—

160 PRINT-ANGULO COM EIXO DOS X: "I

170 J - Y<I> / H(I>

180 PRINT'ANBULO COM E1X0 DOS Y:


FN ACJ> • S

190 J - Z<I> / HCI)

200 PRINT"ANGULO COM EIXO DOS Z: *1


FN A<J> • 6

210 PRINT
220 «XT I

230 J - O
240 IFH<1) - O T«N 310
250 IF HC2> - O HEN 310

260 J - <X<1> » X<2> ♦ Y<1> * Y(2> ♦


Z<1> » Z(2>> / Mil) / H(2>
270 IF J < >0 T«N 300
280 J - 90

290 6OTO 310

300 J - ATN < SOR <1 - J * 2) / J> * S

310 PRINT'ANBULO ENTRE VETORES: -|J


320 PRINT
—124—

330 PRINT“HAIS DADOS? <1-SIM,O-NAO)

340 IMMJT Z
350 IF Z - 1 THEN 20

EXEH’LO:

ANALISE DE DOIS VETORES


VETOR 1: X,Y,Z?1,-4,6
VETOR 2: X,Y,Z?4,8,-9

VETOR 1:
MAGNITUDE: 7.28010989
ANBULO COM EIXO DOS X: ANBULO COM EIXO
DOS Y: 123.328969
ANBULO COM EIXO DOS Z: 34.4964481

VETOR 2:
MAGNITUDE: 12.6885776
ANBULO COM EIXO DOS X: ANBULO COM E1XI-
DOS Y: 50.9140515
ANBULO COM EIXO DOS Z: 135.17815

ANGULO ENTRE VETORES: -27.415868


-125-

5 CALL - 936
10 PRINT"CONVERSÃO DE ANGULOS:"

20 PRINT
ÓO PRINT*1.GRAUS PARA RADIANOS":
PRINT-2.RADIANOS PARA GRAUS"

35 PRINV3-FINALIZAR*
40 C » 180 / 3.1415927
SO IKUT-QUAL OPCAO? (POR NUrERO):*|O

60 ON O GOTO 70,150

65 GOTO 240
70 IW>UT-DE O ANGULO EH GRAUS,
MINUTOS E SEGUNDOS?"ID,M.S

80 A - D ♦ M 760 ♦ S / 3600
90 PRINT-RADIANOS - *|A / C

100 GOTO 50
150 INPUT"DE O AN6ULO EM RADIANOS?"IA

160 PRINT
170 A - A * C:A - <A / 360 - INT
(A / 360)) • 360
-126-

180 PRINT-GRAUS - “íINT <A>

190 A - A - INT <A>


200 PRINT'NINUTOS - "11 NT <A • 60>

210 A « A • 60 - INT <A • 60)

220 PR INT* SEGUNDOS - -JINT <A • 60 •


100 ♦ 0.5) / 100
230 GOTO 50
240 END

EXEMPLO:

CONVERSÃO DE ANGULOS:
1. GRAUS PARA RADIANOS
2. RADIANOS PARA GRAUS
3—FINALIZAR
QUAL OPCAO? (POR NUHERO) : 1
DE □ ANGULO EH GRAUS,MINUTOS ESEGUNDOS?
35,45,23
RADIANOS -.624066724
-127-

10 PRINT"INTERPOLACAO LINEAR"

20 PRINT
30 PR1NT-X.Y DO PRIM.PONTO"J
40 IWHH XI,Y1

50 PRINT’X.Y DO SEE.PONTO"J

60 IM>UT X2.Y2

70 PRINT-INTERPOLAR X - ";
80 II«>UT X
90 Y - Y1 ♦ <Y2 - Yl» / <X2 - Xl>
<X - XI)
1OO PRINT* Y« -SINT
<Y • 1000 + 0.5) / 1OOO

110 PRINT
120 PRINT-MAIS PONTOS IESTA LlhHA
< l-SIM.O-NAO)-J

130 IfPlH 2

140 PRINT

ISO IF Z - 1 THEN 70
-128-

160 PRINT-NOVA LIIMA <1-SIM,O-NAO)“5

170 INPUT Z

180 IF Z - 1 TIEN 20

EXE*ELO:

INTERPOLAÇAO LINEAR
X.Y DO PRIN.P0NT074,7
X,Y DOSE6.PONTO?2,9
INTERPOLAR X- ?6
Y- S

MAIS PONTOS NESTA LUMA < 1-SIM,O-NAO)■’0


NOVA LUMA (1-SIN,O-NAO>?O
71 MÉTODO DE 8IMPBON

10 PRINT* INTEGRACAOlREGRA DE SIIESON*

20 PRINT

26 PRINT
30 PRINT-SELECAO: 1 - FORMULA CONHE
CIDA*

31 PRINT" 2 - FORMULA DES


COMECIDA*

32 PRINT- 3 - FIM PROGRAM#

40 INPUT S
45 IF S « 3 THEN END
47 IF S - 1 THEN IHPUT-VOCE JA
DEFINIU SUA FUNCAO NA LINHA
50 (S OU N>?"IR»: IF R» < > *S*
TIEN END
50 REM - DEFIfE SUA FIMCAO AOUI:
FNC(X)>CSUA FIMCAO EM X)

60 PRINT-LIMITE INFERIOR .LIMITE


SUPERIOR DE INTEBRACAO-I

70 INPUT A. El

80 PRINT"INCREMENTO DE X*l

90 IKEUT XI
95 VR = (B - A) / XI

1OO IF VR < > INT (VR) TWN 80

I1O IF S - 1 THEN ISO

120 PRINT'PRIHEIRO.ULTIHO VALOR


DE F<X)“|

130 IBFUT VI,Y2


140 GOTO 170

150 VI - FN c<a:

lôO Y2 - FN C(B)

170 C - O
180 D - O

190 FOR I - 1 TO <B - A) / XI - 0.5

200 IF S - 1 TFEN 240

210 PRINT"VALOR DE F(X> NO INTERVALO


II"(X-"JA ■» I • X1J">";
220 IWUT V

230 GOTO 250


240 Y - FN C<A ♦ I • XI)
250 IF I / 2 - INT <1 / 2) TFEN 280
260 C - C ♦ Y
GOTO 290
MM
Y

PRINT" INTEGRAL E “1X1 / 3 •


<Y1 + 4»C + 2»D + Y2>
310 BOTO 20

EXETPLO:

INTEGRACAO:REGRA DE SIM>S0N

SELECAO: 1 - FORMULA CtWECIDA


2 - FORMULA DESCOMECIDA
3 -FIM PROGRAMA
?1
VOCE JA DEFINIU SUA FUNCAO NA LIMM SO
<S OU N)?S
LIMITE UFERIOR. LIMITE SUPERIOR DE
INTEGRACAO71,1
INCREMENTO DE X?1
—132—

72 DERX VADA

IO PRINT*DERIVADA*
20 PRINT

30 REN -ENTRE DEF FNC(X) AQUI


40 PRINT*(ENTRE X-99999 P/ TERMINAR
O PROGRAMA)*

SO IITUT-DERIVADA EM X-*JX1

70 IF XI - 49999 T>EN 160


80 D - 0.0001
140 PRINT* E *1
(FN C(X1 ♦ D) - FN C(X1>) / D
ISO GOTO SO
160 END
-133-

MÉTODO DE NEWTON
PARA RAIZE8

10 PRINT-RAIZES REAIS DE POLINOHIOS:


NEWTON"

20 PRINT

30 DIN AdD.Bdl)

40 FOR I - 1 TO 11
50 A<I> - O

60 Bd> - 0
70 KE XT I

BO PRINT'BRAU DA EOUACAO")
90 INPUT N
1OO FOR I • 1 TO N ♦ 1

110 PRINT-COEFICIENTE A("JI - 1;


•>-J

120 INPUT Ad)


130 NEXT I

140 FOR I - 1 TO IO
ISO Bd) - Ad + 1) • I
160 *EXT I
-134-

170 PRINT
180 PRINT-TENTATIWI

190 »PUT X

200 8-0

210 S - 1
220 Fl - O
230 FO - O

240 8 - O + 1
250 FOR I - 1 TO N ♦ 1

260 FO - FO ♦ A<I> • S
270 Fl — Fl ♦ Bill • S

280 8 - 8 * X

290 NEXT I
300 IF Fl - O TICN 360
310 8 - X - FO / Fl

320 IF X « 8 TXN 380

330 X - 8
340 IF 8 > 100 THEN 490
BOTO 210
M M
PRINT "DERIVADA - O EM X - "JX

soro too
PRINT
PRINT* RAIZ", "ERRO*, "DERTV. "
II

PRINT X,FO,F1

PRINT
I

PRINT"OUTRO VALOR < 1-SIH,O-NAO>-|


8 1 8 8 8 8

IMVT A

IF A “ 1 THEN 170
PRINT'OUTRA FUNCAO (1-SIM,O-NAO) ",

INPUT A

IF A - 1 TIEN 30

SOTO 9SO
II

PRINT"1OO ITERACOES COMPLETADAS:"


PRINT" X - "ÍXI" FCX> - "iFO
I

S1O PRINT" CONTIME <1-SIM,O-NAO) ",


-136-

520 INPUT A
530 IF A - 1 B£N 200

550 END

EXEWLO:

RAIZES REAIS DE POLIMMIOS:IEWTON

TENTATIVA?*

RAIZ ERRO DERIV.


.759517827 O -6.63324958

OUTRO VALOR <1-SIM,O-NAO>?0


-137-

r-* OPERAÇÕES COM MATRIZES

10 PRINT-ADICAO DE MATRIZES,SUB
TRACAO,HULTIPLI CACAO ESCALAR*

20 PRINT

30 DIN A(3, 3», B<3,3>


40 PRINT*1-ADICAO*
$ 8

PRINT*2-SUBTRACAO*
PRINT“3—MULTIPLICACAO ESCALAR*

70 PR INT“QUAL OPERACAO"!

SO INPUT D
90 IF O < >3 THEN 120
1OO PRINT-VALOR DO ESCALAR-1

110 INPUT S
120 PRINT-DITENSAO DA MATRIZ <
- LIMM, COLUNA)*|

130 INPUT R.C

140 FOR K “ 1 TO 2

150 IF K - 2 THEN 180


160 PRINT-MATRIZ 1:*
170 BOTO 190
180 PRINT"NATRIZ 2:“
190 FOR J • 1 TOR

200 PRINT"LIMM -|J


210 FOR I - 1 TO C

220 PRINT'VALOR COLIMA "111


230 IF K - 2 TIEN 260
240 1WUT A(J,I>
250

260 IWUT
270 IEXT I
280 terr J
290 IF 8 - 3 TIEN 310
300 •EXT K

310 FDR J ■ i TOR


320 FOt I - 1 TO C

330 IF 8 < >2 TIEN 350

340 B(J,D - - 8<J,I>


—139—

350 IF D - 3 TIO 380

360 PRINT A<J,I> * B(J,I>I" "I


370 SOTO 390
380 PRINT A(J,I) • Bl" "I

390 «XT I
400 PRINT
410 «XT J
420 PRINT
430 PRINT-MAIS DADOS? < 1-SIM,CWIAO)“I

440 I«UT D

450 IF D - 1 BO 70

460 END

EXEWLO:

ADICAO DE HATRIZES,SWrTRACAO,l«JLTIPI.ICACAO
ESCALAR

1-ADICAO
—140—

DIHENSAO DA HATRIZ (LIIHA, COLIMA) 72, 2


HATRIZ 1:
LIIHA 1
VALOR COLIMA 174
VALOR COLIMA 27S
LIIHA 2
VALOR COLUNA 176
VALOR COLUNA 273
HATRIZ 2:
LIIHA 1
VALOR COLIMA 171
VALOR COLIMA 271
LIIHA 2
VALOR COLUNA 173
VALOR COLIMA 275
S 6

IMIS DADOS? (l-SIH.O NAO>7


—141—

F= REQRE8BÃO LINEAR

io Hore

20 VTAB 3: PRINT”, LI,EAR*

30 PRINT : PRINT"ESTE PR06RANA ESTA


BELECE UNA LIMM RETA P/UN DETER
NINADO CONJUNTO DE COORDENADAS
USAM» O-
50 PRINT-MFTODO DOS HININOS QUADRA
DOS*
60 PRINT*SAO IWRESSOS: EQUACAO DA
LIMM*

70 PRINT* COEFICIENTE DE
DETRENINACAO*
80 PRINT* COEFICIENTE DE
CORRELACAO*
90 PRINT* ERRO PADRAO DE
ESTIMATIVA"

100 PRINT* VALOR DE Y


PARA LU DADO X“

11O PRINT : PRINT : INPUT-NUNERO DE


PONTUS CONECIDOS-IN
120 j - o:k - o:l - o:n - o

130 R2 - O
140 REN -LOOP DE ENTRADA DE COCR
DENADA8 DOS PONTOS
-142-

ISO

160

170

180
190

200

210
220

230
240
250
260
270

280

290
-143-

300 PRINT

310 REN -ESTIMATIVA COORDENADAS Y DOS


PONTOS ENTRAMXJ-SE COM AS COORDE
NADAS X

320 PRINT"INTERPOLACAO:(ENTRE X-O P/


TERMINAR PROORAHA": IW>UT"X - "|X

330 REN -REINICIO OU FIN PROGRAMA?


340 IF X - O THEN END
350 PRINT-Y - "JA ♦ B * X: PRINT:
GOTO 320
2020 VTAB 3: PRINT'REGRESSAO LIIEAR "

EXETPLO:

REGRESSÃO LINEAR

ESTE PROGRAMA ESTABELECE UMA LINHA RETA


P/UM DETERMINADO CONJUNTO DE COORDENADAS
USANDO O
MÉTODO DOS MÍNIMOS QUADRADOS
SAO IK>RESSOS: EQUACAO DA LIMA
COEFICIENTE DE DETERMINAÇÃO
COEFICIENTE DE CORRELACAO
ERRO PADRAO DE ESTIMATIVA
VALOR DE Y PARA UH DADO X
-144-

NUTERO DE PONTOS ONEC1DOS5


ENTRE X E V DO PONTO 1?1,3
ENTRE X E Y DO PONTO 272,6
ENTRE X E Y DO PONTO 374,2
ENTRE X E Y DO PONTO 477,0
ENTRE X E Y DO PONTO 575,5
F(X> - S.33333333 ♦ < -.561403509 • I

INTERPOLACAO: (ENTRE X^> P/TERNINAR


PROGRAM
X - O
— 145—

76 EQUAÇÕES 8It*MJI_TÂNEA8

IO PRINT*EQUACOES SIHULTAÜEAS*
20 PRINT

30 DIM A<9,1O>

40 PRINT*ENTRE "0a PARA TERMINAR


PROGRAMA*: PRINT-NUTERO DE
EQUAÇÕES*|
50 INPUT R

55 IF R - O THEN END
PRINT*COEFICIENTE DA MATRIZ:*

FOR J - 1 TO R

PRINT*EDUACAO *|J
FOR I - 1 TO R ♦ 1

IF I - R ♦ 1 THEN 130

PRINT* COEFICIENTE "Hl


GOTO 140

PRINT* CONSTANTE *1

IM>UT A(J,I>
►EXT I

NEXT J
FOR J - 1 TOR
-146—

FOR I - J TOR
I ! M M M

IF A<I,J> < > O THEN 230

NEXT I
PRINT’SOLUCAO NAD 1MICA*

GOTO 440
FOR K - 1 TOR ♦ 1

X - A<J,K>
A(J,K> - A<I,K)

A(I,K> - X
n

*EXT K
Y - 1 / A<J,J>
«

FOR K - 1 TOR ♦ 1
M H M M

A(J,K> - V • A<J,K>

tEXT K
FDR I - 1 TO R

IF I - J TIEN 380
Y - - A(I,J>

FOR K - 1 TO R ♦ 1
A<I,K> - ACI,K> ♦ Y • A(J,K>
-147-

370 «XT K
380 «XT 1

390 «XT J

400 PRINT

410 FOR I - 1 TO R
420 PRINT’X’III" - "IINT <ACI,R ♦ 1>
1000 * 0.5) / 1OOO

430 «XT I
440 PRINT : PRINT : BOTO 40

EXEOTLO:

EQUACOEB 8IHULTA«AS

ENTRE O PARA TERMINAR PROGRAMA


NU«RO DE EOUACOE872
COEFICIENTE DA MATRIZ:
EQUACAO 1
COEFICIENTE 1712
COEFICIENTE 27-4
CONSTANTE 734
EQUACAO 2
COEFICIENTE 174S
COEFICIENTE 2756
CONSTANTE 7-14

XI - 2.169
X2 - -1.993
-148-

10 PRINT-DPERflCOEB EN DOIS VETORES*

PRINT
3 8 8 8388888
PRINT-VETOR A: COORDENADAS X,Y,Z*I
IUPUT X1,Y1,Z1

PRINT'VETOR B: COORDENADAS X,Y,Z*|

HPUT X2.Y2.Z2

PRINT
PRINT"A*^*|X1 ♦ X2|*,*|Y1 ♦ Y2|'
-,-lZl ♦ Z2
PRINT*A-^*|X1 - X2|*,*|Y1 - Y21
•,*|Z1 - Z2
PRINT*A.^*|X1 • X2 ♦ Z1 * Z2 ♦
Y1 * Y2

PRINT*A*»«“IY1 • Z2 - Z1 * Y2|
*,*|Z1 » X2- XI » Z2I*,*I
XI • Y2 - VI • X2

PRINT
n

PRINT-MAIS DADOS? < 1-SIH,<WIAO> -|

IHFUT X
í

IF X - 1 T>£N 20
U

EM>
-149—

EXEMPLO:

OPERACOES EM DOIS VETORES

VETOR A: COORDENADAS X,Y,Z?í.2.3


VETOR B: COORDENADAS X,Y,Z?4,S,8

A*B-S,7,11
A-B—3,-3,-5
A.B-3S
A*B-l,4,-3

MAIS DADOS? <1-SIH,O-NAO>?

Você também pode gostar