


























































































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Excelente material para quem quer se aventurar em programação da HP 50g.
Tipologia: Notas de estudo
1 / 98
Esta página não é visível na pré-visualização
Não perca as partes importantes!



























































































aij = ( −1 )
j (^) i− 1 2 j−^1
k
aij = ( −1 )
( 2 ij−−^11 ) aij = ( −1 )
μi 2 −j−^11
≪ → L r ≪ { } p^ LC p^ STO L SIZE p^ N p^ STO 1 2 N ∧^ FOR I 1 N FOR J IF p^ (−1) ∧^ FLOOR((I − 1)/ 2 ∧^ (J − 1)) == 1p THEN J END NEXT DEPTH DUP p^ C p^ STO IF p^ C==r p THEN ROW→ p^ V p^ STO 1 r FOR K L p^ V(K) p^ EVAL GET NEXT r →LIST 1 →LIST LC + p^ LC p^ STO ELSE CLEAR END NEXT LC ≫ ≫
www.dmat.ufrr.br/gentil
Programando a HP − 50 g
− N˜ao ajunteis tesouros na terra, onde a tra¸ca e a ferrugem tudo consomem, e onde os ladr˜oes minam e roubam. Mas ajuntai tesouros no c´eu, onde nem a tra¸ca nem a ferrugem consomem, e onde os ladr˜oes n˜ao minam nem roubam. (Mt. 6 : 19 − 20) − Exegese: Daqui podemos inferir que tudo o que se deteriora com o tempo, ou que ´e pass´ıvel de furto, n˜ao pode ser tesouro no c´eu. Ao contr´ario, o que ´e atemporal e `a prova de furtos, tem chances de ser um tesouro no c´eu. Como por exemplo, cada uma das p´erolas a seguir:
anm = ( −1 )
j (^) n− 1 2 m−^1
k anm = ( −1 )
( 2 nm−−^11 ) anm = ( −1 )
μn 2 m−−^11
1 m^ + 2m^ + 3m^ + · · · + nm^ =
∑^ m
j=
n j + 1
a(m−j)
a(m−j) =
∑^ j
k=
(−1)k
j k
(1 − k + j)
m
(x, y, z) ≡ (X, Y ) = ( y − x · sen θ, z − x · cos θ)
anm =
∏^ m
j=
a
(n− j 1 ) 1(m−j) anm^ =
∑^ m
j=
n − 1 j
a1(m−j)
i = ⌊ n− N 1 ⌋ + 1 j = n − N ⌊ n N− 1 ⌋
0 1
(0, 23 )
1 (1,^ 1)
s
λ
⇒ λ(t) =
2 3 +^
1 3 t,^0 ≤^ t <^ 1; 0 , t = 1.
n 2 j−^1 ∈^ N^ ⇐⇒^
(n− 1 2 j−^1
e
( (^) n 2 j−^1
tˆem paridades distintas.
Topologia Qu^antica O Milagre!:conexo por caminhos
r Gentil
/fev
−
2009
A tabela a seguir mostra os comandos, sua descri¸c˜ao e exemplos.
Comando/Descri¸c˜ao
Exemplos Antes Depois ABS. Valor absoluto CEIL. Menor inteiro maior ou igual ao argumento.
FLOOR. Maior inteiro menor ou igual ao argumento.
FP. Parte fracion´aria do argumento.
IP. Parte inteira do argumento.
MANT. Mantissa do argumento.
MAX. O maior valor entre dois n´umeros.
MIN. O menor valor entre dois n´umeros.
MOD. Resto da divis˜ao entre dois n´u- meros.
RND. Arredonda o n´umero de acordo com o valor do argumento: n = 0 at´e 11.
SIGN. Retorna +1 para argumentos po- sitivos, −1 para argumentos negativos e 0 para argumentos nulos. TRNC. Trunca o n´umero de acordo com o valor do argumento: n = 0 at´e 11.
△“des¸ca” at´e 117 (marcar: X).
Gentil 7
A tabela a seguir mostra os comandos, sua descri¸c˜ao e exemplos.
Comando/Descri¸c˜ao
Exemplos Antes Depois DUP. duplica o objeto do n´ıvel 1.
SWAP. permuta os objetos dos n´ıveis 1 e 2. DROP. deleta o objeto do n´ıveil 1.
OVER. retorna uma c´opia do objeto do n´ıve 2 para o n´ıvel 1.
ROT. rotaciona os trˆes primeiros obje- tos da pilha.
ROLL. move o objeto do n´ıvel n+1 para o n´ıvel 1. (n est´a no n´ıvel 1).
PICK. retorna uma c´opia do objeto do n´ıvel n+1 para o n´ıvel 1 (n est´a no n´ıvel 1)
DEPTH. retorna o n´umero de objetos na pilha.
DROP2. remove os objetos dos n´ıveis 1 e 2.
DROPN. remove os primeiros n+1 ob- jetos da pilha (n est´a no n´ıvel 1).
DUPN. duplica n objetos da pilha, come¸cando no n´ıvel 2 (n est´a no n´ıvel 1).
2 : pABp 1 : 234
3 : pABp 2 : 234 1 : pABp 3 : 12 2 : 34 1 : 56
Gentil 9
1.2 Programa¸c˜ao de f´ormulas (equa¸c˜oes)
Para a HP − 50 g um programa ´e um objeto delimitado pelos s´ımbolos ≪ ≫, isto ´e, todos os programas devem ser digitados entre estes s´ımbolos∗.
Vari´aveis s˜ao como arquivos em um disco r´ıgido de computador. Uma vari´avel pode armazenar um objeto (valores num´ericos, express˜oes alg´ebricas, listas, ve- tores, matrizes, programas, etc). As vari´aveis s˜ao reconhecidas pelos seus nomes, que podem ser qualquer combina¸c˜ao de caracteres alfab´eticos ou num´ericos, iniciando com uma letra. Aguns caracteres n˜ao alfab´eticos, tais como a seta (→) podem ser usados em um nome de vari´avel, se combinados com um caractere alfab´etico. Assim, p^ → Ap ´e um nome v´alido de vari´avel, mas p^ → p^ n˜ao ´e. Exemplos v´alidos de nomes de vari´aveis s˜ao: p^ Ap, p^ B p, p^ a p, p^ b p, p^ α p, p^ β p, p^ A1 p, p^ AB12 p, p^ → A12 p^ , p^ Vel p, p^ Z0 p, p (^) Z1 p, etc.
Uma vari´avel n˜ao pode ter o mesmo nome de uma fun¸c˜ao da calculadora. Vocˆe n˜ao pode ter uma vari´avel SIN por exemplo, j´a que existe um comando SIN na calculadora. Os nomes reservados das vari´aveis da calculadora s˜ao os seguintes: ALRMDAT, CST, EQ, EXPR, IERR, IOPAR, MAXR, MINR, PICT, PPAR, PRTPAR, VPAR, ZPAR, der−, e, i, n1,n2,.. ., s1, s2,.. ., DAT, PAR, π, ∞.
Nota: Letras mai´usculas e min´usculas n˜ao s˜ao equivalentes.
Estrutura de vari´avel local
O comando†^ → define nomes de vari´aveis locais (isto ´e, vari´aveis que somente s˜ao v´alidas dentro do programa em que foram definidas) − ao contr´ario das vari´aveis globais, que s˜ao definidas pelo comando STO. Antes de se iniciar a programa¸c˜ao de determinado problema ´e importante que se tenha bem claro em mente quais s˜ao os dados de entrada (no programa) e quais s˜ao os dados de sa´ıda; por exemplo:
1 o^ ) Resolver a equa¸c˜ao quadr´atica ax^2 + bx + c = 0. Temos:
a b
r 1
c
r 2
Onde:
− Dados de entrada: a, b e c.
− Dados de sa´ıda: r 1 e r 2 (s˜ao as ra´ızes).
− R.E.Q.: Vari´avel que ir´a armazenar o programa (e que ser´a referenciada sempre que o programa for executado).
Obs: o nome R.E.Q. ´e apenas um exemplo, o nome poderia ser um outro, a seu crit´erio.
∗O qual encontra-se acima da tecla + , em vermelho. E acessado assim´ ≪^ ≫ †Este comando (de atribui¸c˜ao) encontra-se acima da tecla 0 , em vermelho.
2 o^ ) Calcular o n−´esimo termo de uma progress˜ao aritm´etica:
an = a 1 + (n − 1)r
Temos:
a 1 r an n
Onde:
− Dados de entrada: O primeiro termo a 1 ; a raz˜ao da P.A. r e a posi¸c˜ao n do termo que queremos encontrar.
− Dados de sa´ıda: O n−´esimo termo an.
− P.A.: Vari´avel que ir´a armazenar o programa (e que ser´a referenciada sempre que o programa for executado).
3 o^ ) C´alculo da hipotenusa de um triˆangulo retˆangulo: a =
b^2 + c^2. Temos:
b a c
⊡
a
b
c
Onde:
− Dados de entrada: Os catetos b e c.
− Dado de sa´ıda: A hipotenusa a.
− HIP.: Vari´avel que ir´a armazenar o programa.
Nos trˆes programas anteriores devemos fornecer os dados de entrada e o programa calcula e fornece os dados de sa´ıda. Uma estrutura de vari´avel local possui uma das seguintes organiza¸c˜oes dentro de um programa:
≪ → nome 1 nome 2... nomen^ p^ objeto alg´ebricop^ ≫ (1.1)
Ou, ≪ → nome 1 nome 2... nomen ≪ programa ≫ ≫ (1.2) O comando (de atribui¸c˜ao) → remove n objetos da pilha e os armazena nas vari´aveis locais, cujos nomes s˜ao listados em seguida.
1 o^ ) Entre com o programa, j´a digitado, na pilha. Isto ´e, ap´os digit´a-lo pressione ENTER. O programa ir´a para o n´ıvel 1 da pilha, assim:
RAD XYZ BIN R ∼ pX p^ HLT {HOME GENTIL} 12:24 19 : MAY
≪ → a b pABS(a - b)p ≫
2 o^ ) Agora precisamos armazenar este programa em uma vari´avel (nome´a-lo), para isto pressione plics, p^ O , e escolha um nome para o programa. Por exemplo, p^ DIST.p^. Pressione ENTER e, em seguida, pressione a tecla STO K.
Vocˆe acabou de armazenar (STO) o programa na vari´avel que vocˆe escolheu (isto ´e, no nome dado ao programa). Observe que o programa (e o seu nome) desaparecem da pilha mas o nome (do programa) aparece no menu de vari´aveis, assim:
RAD XYZ BIN R ∼ pX p^ HLT ALG {HOME GENTIL} 12:52 19 : MAY
Aqui est´a o programa.
Se na sua calculadora o programa n˜ao aparece no primeiro menu, como acima, basta vocˆe pressionar a VAR J.
Nota: O procedimento para armazenar qualquer programa ´e sempre o mesmo, isto ´e, siga os passos 1o^ ) e 2o^ ) acima.
Gentil 13
Coloque os dados na pilha (no caso do programa DIST., os n´umeros que ser˜ao armazenados nas vari´aveis a e b, por exemplo 3 e 5), pressione VAR J
(caso necess´ario) e depois a tecla do menu que cont´em o nome dado ao pro- grama.
Como funciona o programa anterior: Se o leitor colocar na pilha, por exemplo, os seguintes dados de entrada: 3 e 5; ao executar o programa o comando de atribui¸c˜ao (→) armazenar´a estes valores nas vari´aveis a e b, respectivamente. Em seguida a express˜ao alg´ebrica ser´a avaliada (calculada) para aqueles valores que, a estas alturas, j´a estar˜ao armazenadas nas vari´aveis que constam na ex- press˜ao (entre plics).
Em nosso curso utilizaremos dois modos de programa¸c˜ao, os dados nas re- ferˆencias (1.1) e (1.2) (p´ag. 10). O primeiro ´e mais pr´atico para a programa¸c˜ao de f´ormulas matem´aticas, enquanto o segundo para programas mais elaborados, como teremos oportunidade de exemplificar. Exemplo 2: Por exemplo, o programa a seguir,
≪ → b c p^ ( b∧^ 2 + c∧^ 2 ) p^ ≫
(ver p´ag. 10) calcula a hipotenusa de um triˆangulo retˆangulo. Exemplo 3: Este mesmo programa no modo (1.2) fica assim:
≪ → b c ≪ p^ ( b∧^ 2 + c∧^ 2 ) p^ EVAL
≫ ≫
O comando EVAL (acessado na tecla EVAL N ) avalia uma express˜ao alg´ebrica (isto ´e, uma express˜ao entre plics) que o precede. Sugerimos ao leitor digitar este programa e, em seguida, seguir os passos descritos nas subse¸c˜oes 1.2.1 e 1.2.2.
1.3 Para visualizar ou editar um programa
Para visualizar − ou editar um programa − coloque seu nome entre plics e em seguida na pilha. Pressionando (se necess´ario) as teclas:
VAR J p^ O ENTER
Nota: Caso o programa que vocˆe deseja editar n˜ao se encontre em um dos menus exibidos na tela pressione a tecla NXT L at´e encontr´a-lo.
Com o nome do programa na pilha pressione, em seguida, as duas teclas: △
Pronto! Agora ´e s´o editar (ou visualizar). Nota: Utilizando os quatro bot˜oes prateados, abaixo,
Gentil 15
Pressione a tecla ENTER;
PRG NXT L NXT L RUN DBUG
Neste momento o nome do programa desaparece da pilha. Agora basta ir pressionando, sucessivamente, o menu (^) SST.
Sugerimos ao leitor executar passo-a-passo o programa para o c´alculo das ra´ızes de uma equa¸c˜ao quadr´atica.
Para avan¸car passo-a-passo no meio do programa
1.5 Exibindo vari´aveis de entrada e sa´ıda
A instru¸c˜ao PROMPT faz com que a calculadora nos mostre (exiba) a(s) vari´avel(eis) de entrada num programa. Esta instru¸c˜ao ´e acessada com a seguinte sequˆencia de teclas:
PRG NXT L IN NXT L PROMP
A instru¸c˜ao →TAG rotula um objeto com um nome ou texto descritivo. Esta instru¸c˜ao ´e acessada com a seguinte sequˆencia de teclas: ∗No caso do programa da hipotenusa, a ordem em que os catetos s˜ao fornecidos n˜ao altera o resultado final. J´a no caso do programa para o c´alculo da ra´ızes de uma equa¸c˜ao quadr´atica, a ordem − na qual os dados entram na pilha − ´e decisivo.
PRG TYPE →TAG
Nota importante: Lembramos que todos os comandos (instru¸c˜oes) podem ser digitados “na m˜ao”. Se o leitor decidir digitar a instru¸c˜ao →TAG alertamos que n˜ao deve haver espa¸co entre a seta e TAG. Esta setinha encontra-se acima da tecla 0 , em vermelho. Exemplo 5: Para exemplificar o uso destas instru¸c˜oes vamos acrescent´a-las ao programa das ra´ızes de uma equa¸c˜ao quadr´atica, assim:
≪ p pEntre com a, b e c p p^ PROMPT → a b c ≪ p^ (−b + (b∧^2 − 4 ∗ a ∗ c))/(2 ∗ a)p^ EVAL
p pR1p p (^) →TAG p (−b − (b∧^2 − 4 ∗ a ∗ c))/(2 ∗ a) p EVAL p pR2p p (^) →TAG ≫ ≫
Nota: Acesse as aspas duplas assim: pp pp . Ao encontrar PROMPT o processamento do programa ´e interrompido e a calcu- ladora fica esperando os dados de entrada; coloque-os na pilha e, ap´os, pressione CONT (continue∗).
Para excluir (deletar) uma vari´avel proceda assim: coloque, entre plics, o nome da vari´avel, pressione ENTER para coloc´a-lo na pilha, ap´os pressione: TOOL I PURGE^. Para excluir v´arias vari´aveis ao mesmo tempo coloque-as (isto ´e, seus nomes) entre chaves ({...... }) e proceda como antes.
∗Lembramos que este comando ´e acessado com ON (^).
Exemplo: Crie uma lista com os elementos −1, 0 e 1, usando (^) →LIST.
Passo 1: Entre com os elementos e o n´umero de elementos na pilha.
Ap´os este procedimento a pilha deve apresentar-se assim:
{ HOME } (^) 07:52 15:APR
Passo 2: Converta a pilha para uma lista.
PRG (^) LIST →LIST ELEM PROC OBJ→ →LIST SUB REPL
Importante: Para realizar o processo inverso do anterior; digo, para desmontar uma lista (ou ainda, para retirarmos os elementos de uma lista) basta digitarmos PRG (^) LIST OBJ→
Nota: A lista deve est´a no n´ıvel 1 (tal como na tela anterior). Observe, ademais, que este comando nos devolve, no n´ıvel 1, o n´umero de elementos na lista.
As fun¸c˜oes a seguir oferecem maneiras de manipular os elementos de uma lista. Sugerimos ao leitor fazer uma simula¸c˜ao em cada ´ıtem para que os res- pectivos comandos fiquem perfeitamente compreendidos.
MTH^ LIST SORT coloca os elementos de uma lista em ordem ascen- dente. A lista deve estar no n´ıvel 1.
MTH^ LIST REVLI reverte a ordem dos elementos de uma lista. A lista deve estar no n´ıvel 1.
PRG^ LIST ELEM NXT L HEAD substitui a lista do n´ıvel 1 pelo seu primeiro ´ıtem isolado.
PRG^ LIST ELEM NXT L TAIL substitui a lista do n´ıvel 1 por todos
Gentil 19
seus elementos, com exce¸c˜ao do primeiro.
PRG^ LIST ELEM GET substitui a lista do n´ıvel 2 e um n´umero de posi¸c˜ao (´ındice) do n´ıvel pelo elemento da lista naquela posi¸c˜ao indicada.
PRG^ LIST ELEM GETI ´e similar a GET, por´em ela tamb´em incre- menta o n´umero de posi¸c˜oes (´ındice). O novo ´ındice ´e colocado no n´ıvel 2. A lista original estar´a no n´ıvel 3.
PRG^ LIST ELEM PUT toma um objeto do n´ıvel 1 e substitui um objeto existente dentro da lista. Vocˆe deve fornecer a posi¸c˜ao do objeto no n´ıvel 2 e a lista (ou matriz) no n´ıvel 3. A lista resultante estar´a no n´ıvel 1.
PRG^ LIST ELEM PUTI ´e similar a PUT, por´em ela tamb´em incre- menta o ´ındice. O novo ´ındice ´e colocado no n´ıvel 1 e a nova lista no n´ıvel 2.
PRG^ LIST ELEM SIZE substitui a lista do n´ıvel 1 pelo n´umero de elementos que ela possui.
PRG^ LIST ELEM POS substitui a lista do n´ıvel 2 e um elemento daquela lista (n´ıvel 1) por um ´ındice contendo a primeira ocorrˆencia daquele elemento na lista. Se o elemento n˜ao for encontrado, 0 ser´a retornado.
2.2 Matrizes
A HP − 50 g possui grandes recursos para entrada e manipula¸c˜ao de ma- trizes. Muitas das opera¸c˜oes descritas aqui tamb´em se aplicam a vetores (que s˜ao matrizes com apenas uma linha ou uma coluna). O nome matrizes tamb´em inclui objetos vetoriais.
Vocˆe pode introduzir uma matriz de duas maneiras:
− O Editor de Matrizes (Matrix writer). Um m´etodo mais intuitivo para entrar, visualizar e editar elementos de matrizes.
− Linha de comando. O m´etodo b´asico de entrada de objetos.
Para entrar com uma matriz usando o Editor de Matrizes:
△
△ △ △
vocˆe pode colocar o cursor em qualquer posi¸c˜ao da matriz.