PROGRAMAÇÃO EM
CALCULADORA HP PRIME (G8X92AA)
Programação BÁSICA e AVANÇADA
(para iniciantes)
Prof. Lauro Cesar Galvão, Dr.
Leonardo de Azevedo Dornelles (aluno de engenharia)
2018
SUMÁRIO
1 Acessando o menu programação ... 3
1.1 Abrindo o catálogo de programação ... 3
1.1.1 Programas ... 3
1.1.2 Criando um programa ... 3
1.1.3 Apagando um programa ... 4
1.2 Organizar Catálogo de Programas ... 5
1.2.1 Ordenar programas ... 5
2 HP Prime: Programação Básica ... 6
2.1 Exemplo 01 ... 7
2.1.1 Parâmetros iniciais do programa ... 7
2.1.2 Declarar variáveis no programa ... 7
2.1.3 Atribuir valores iniciais a variável... 9
2.1.4 Criando ciclo de repetição ... 9
2.1.5 Comando Print ... 10
2.1.6 Inserindo fórmulas ... 10
2.1.7 Imprimir resultados... 10
2.1.8 Comando WAIT ... 11
2.1.9 Condições para continuidade do ciclo ... 12
2.1.10 Verificando sintaxe do programa ... 12
2.2 Executando um programa ... 13
2.3 Utilização: Preenchimento da tabela ... 14
2.4 Exercício para treinamento: ... 15
2.4.1 Fazer a programação:... 15
2.4.2 Alimentar o Programa ... 15
2.4.3 Resposta Programa EQ2G ... 16
3 HP Prime: Programação Avançada ... 17
3.1 Exemplo 02 ... 18 3.1.1 Matrizes ... 19 3.1.2 Programação ... 20 3.1.3 Fórmula: FXY... 21 3.1.4 Execução ... 21 3.1.5 Alimentação ... 21 3.1.6 Utilização ... 22
3.1.7 Abrindo catálogo de matrizes ... 22
3.2 Exercício para treinamento: ... 24
3.2.1 Fazer a programação:... 24
3.2.2 Alimentar o Programa ... 24
3.3 Comandos Auxiliares ... 25
Página 3
1 Acessando o menu programação
1.1 Abrindo o catálogo de programação
Para abrir o catálogo de programas devemos pressionar os botões Shift + 1 na tela HOME
1.1.1 Programas
No catálogo de programas veremos o aplicativo em execução (neste caso o DataStreamer) e uma série de comandos (Editar, Nova e Mais) no menu inferior da tela
1.1.2 Criando um programa
Para criar um programa novo devemos clicar no comando Nova no menu inferior da tela onde teremos a opção de nomear o programa e a opção de usar o modo CAS. Selecionando o campo nome insira o nome de programa desejado usando a tecla Alpha e a letra indicada em laranja
Página 4 no teclado, para fixar o Alpha pressione o botão duas vezes e para usar letras minúsculas pressione a tecla Shift. Após nomear o programa pressione a tecla OK no menu inferior ou Enter no teclado.
1.1.3 Apagando um programa
No catálogo de programas, selecione o programa a ser apagado com o cursor e clique no menu inferior sobre a opção Mais e logo após Elimin, confirme a operação clicando em OK.
Página 5
1.2 Organizar Catálogo de Programas
1.2.1 Ordenar programas
Há duas formas de ordenação de programas no catálogo de programas: cronologicamente ou alfabeticamente. A seleção é acessada através do menu inferior na opção Mais e Orden.
Página 6
2 HP Prime: Programação Básica
Entrar no catálogo de programas
Shift + 1
Criar programa “EX01” (Exemplo 01)
Entrar em “EX01”
Após a criação do programa, automaticamente entrará na tela de edição do programa, caso não aconteça, acesse o catálogo de programas, selecione o programa e clique na opção Editar no menu inferior.
Página 7
2.1 Exemplo 01
Vamos programar as seguintes fórmulas para preencher a tabela abaixo: 1 j x x h , para j 0,1,2,, m 1 j 1 j y y j 2 h (k1k ), para j 0,1,2,, m 1 2 onde k1 f (x ,j y ) e j k2 f (x h ,j y hj k ). 1 Sabendo que x 0, 0 y 2, a 0, b 1, h =0,1, m 0 h a b m 10. Sabendo também que f(x,y)xy2.
j x j y j k 1 k 2 0 0 2 1 2 3 4 5 6 7 8 9 10
2.1.1 Parâmetros iniciais do programa
O comando EXPORT possibilita a entrada de valores iniciais para o programa, neste caso usaremos para os valores de “X0”, “Y0”, “A”, “B” e “H”.
2.1.2 Declarar variáveis no programa
O comando LOCAL serve para declarar variáveis internas ao programa. Deve ser usado sempre que usarmos variáveis diferentes das pré-existentes para realizar operações.
Neste caso declararemos as variáveis: “X01”, “Y01”, “K1”, “K2”.
Página 8 Sintaxe: LOCAL “Variável”;
Dica: Todos os comandos estão disponíveis no menu inferior, nas opções Comand para comandos relacionados a variáveis e Modelo para comandos relacionados ao programa. O comando LOCAL está na opção Modelo → Variável.
Note que todos os comandos devem ser terminados com o “;” no final como na linguagem de programação C.
Sempre que houver dúvidas sobre a sintaxe de um comando podemos usar a tecla ? Help da calculadora sobre o comando para consultar a ajuda.
Página 9
2.1.3 Atribuir valores iniciais a variável
Para atribuir valor a uma variável devemos usar o operador “:=”, neste exemplo precisamos atribuir valores a “M” e “J”.
2.1.4 Criando ciclo de repetição
Para criar um ciclo de repetição com condição de parada podemos usar o comando WHILE. O comando WHILE realiza os comandos que seguem entre o DO e o END de forma repetida até alcançar a condição de parada do ciclo.
Sintaxe: WHILE “Condição” DO “Comandos” END;
Neste caso a condição de parada do comando é o número de iterações que o programa deve executar, portanto, usando a variável “J” para realizar apenas o número de iterações desejadas.
Página 10
2.1.5 Comando Print
Neste exemplo usaremos o comando PRINT para imprimir o valor das variáveis na tela e para limpar a tela.
Quando o comando PRINT é usado sem argumentos ele tem a função de limpar a tela. Sintaxe: PRINT (“Argumento”);
2.1.6 Inserindo fórmulas
Para inserir uma fórmula devemos atribuir um valor a variável desejada, esse valor poderá ser resultado de uma fórmula.
Fórmula 1: K1 = X0 Y0 2
Fórmula 2: K2 = (X0 H)(Y0 H K1) 2 Fórmula 3: X01 = X0 H
Fórmula 4: Y01 = Y0 H/2 (K1 K2)
2.1.7 Imprimir resultados
Para imprimir resultados usaremos o comando PRINT com argumentos, nesse caso quando o argumento é inserido entre aspas ele tem a função de texto e fora das aspas representa uma variável.
Página 11 Note que as variáveis aparecem após um sinal positivo, dessa forma elas serão apresentadas após o texto inserido entre as aspas.
2.1.8 Comando WAIT
Nesse exemplo usaremos o comando WAIT para aguardar o usuário para continuar a execução. Quando o comando WAIT é usado com argumento “0” ele tem a função de esperar um toque no teclado para continuar a execução.
Página 12
2.1.9 Condições para continuidade do ciclo
Para continuar a progressão do ciclo devemos realizar atribuições as variáveis que devem progredir com a repetição, neste caso “X0”, “Y0” e “J”.
“X0” tem o valor do “X01”, “Y0” tem o valor de “Y01” e “J” tem o valor incrementado em 1 unidade. No próximo ciclo será feito a nova aplicação das fórmulas onde atribuirá novos valores em “X01” e “Y01”.
2.1.10 Verificando sintaxe do programa
No menu inferior temos a opção Verif., essa opção verifica a sintaxe do programa e informa caso haja algum erro no programa será alertado a linha e o cursor direcionado ao ponto do erro.
Página 13
2.2 Executando um programa
Para executar um programa, primeiro precisamos voltar ao catálogo de programas pressionando a tecla Esc. No catálogo de programas com o curso sobre o programa toque na opção Execut no menu inferior.
Quando o programa iniciar, devemos alimentar os parâmetros iniciais do programa
Como nesse programa usamos o comando PRINT serão exibidos os resultados das operações no Terminal.
Página 14 Para continuar a execução devemos pressionar qualquer tecla do teclado conforme o comando WAIT usado.
2.3 Utilização: Preenchimento da tabela
j x j y j k 1 k 2 0 0 2 0 0,1 1 0,1 2,005 0,095 0,1855 2 0,2 2,019025 0,180975 0,2628775 3 0,3 2,041217625 0,258782375 0,332904138 4 0,4 2,070801951 0,329198049 0,396278244 5 0,5 2,107075765 0,392924235 0,453631811 6 0,6 2,149403568 0,450596432 0,505536789 7 0,7 2,197210229 0,502789771 0,552510794 8 0,8 2,249975257 0,550024743 0,595022269 9 0,9 2,307227608 0,592772392 0,633495153 10 1 2,368540985
Página 15
2.4 Exercício para treinamento:
Crie um programa chamado “EQ2G”.
Tome a equação do 2o grau ax2 bxc0 com a0. Programar a fórmula de Bhaskara:
a b x 2 com b2 4ac. Declarar 3 parâmetros e criar 3 variáveis
“A”, “B”, “C” e “X1”, “X2”, “DELTA”
2.4.1 Fazer a programação:
Fórmula DELTA:
DELTA = B^2 – (4*A*C)Fórmula X1:
X1 = A DELTA B 2 Fórmula X2:
X2 = A DELTA B 2 2.4.2 Alimentar o Programa
Resolver a equação: x2 x4 210 Resposta: 7 3 2 1 x xPágina 16
Página 17
3 HP Prime: Programação Avançada
Entrar no catálogo de programas
Shift + 1
Criar programa “EX02” (Exemplo 02)
Página 18
3.1 Exemplo 02
Vamos programar as seguintes fórmulas para preencher a tabela abaixo: 1 j x x h , para j 0,1,2,, m 1 j 1 j y y j 2 h (k1k ), para j 0,1,2,, m 1 2 onde k1 f (x ,j y ) e j k2 f (x h ,j y hj k ). 1 Sabendo que x 0, 0 y 2, a 0, b 1, h =0,1, m 0 h a b m 10. Sabendo também que f(x,y)xy2.
j x j y j k 1 k 2 0 0 2 1 2 3 4 5 6 7 8 9 10
Página 19
3.1.1 Matrizes
Neste exercício trabalharemos com matriz, que estão definidas de M0 – M9, para inicializar uma matriz usamos o comando REDIM que redimensiona a matriz indicada para o tamanho indicado. Quando o tamanho indicado for menor que o atual, todos os elementos fora do tamanho serão apagados e quando o tamanho indicado for maior que o atual, será atribuído o valor 0 aos novos elementos.
Sintaxe: REDIM(Matriz,{Tamanho});
Para exibir a matriz ao final do programa usamos o comando EDITMAT que permite editar ou visualizar a matriz indicada conforme o “somente leitura”. Se o argumento for diferente de 0 será permitida apenas a visualização da matriz indicada.
Página 20
3.1.2 Programação
EXPORT EX02(FXY,X0,Y0,A,B,H) \\ Parâmetros do programa BEGIN
LOCAL K1,K2; \\ Declaração de variáveis
M:=(B-A)/H; \\ Cálculo de iterações
J:=0; \\ Inicialização de “J”
REDIM(M1,{1,1}); \\ Inicialização da Matriz M1
WHILE J<=M DO
U:=X0; \\ Atribui o valor alimentado de X0 em U
V:=Y0; \\ Atribui o valor alimentado de Y0 em V
K1:=EVAL(FXY); \\ k1 f (x ,j y ) j
U:=X0+H; \\ u xj h
V:=Y0+H*K1; \\ v yj h k 1
K2:=EVAL(FXY); \\ k2 f (xj h ,yj h k ) 1
M1(J+1,1):=J; \\ Atribui J para a lin. J+1 e col. 1 de M1
M1(J+1,2):=X0; \\ Atribui X0 para a lin. J+1 e col. 2 de M1
M1(J+1,3):=Y0; \\ Atribui Y0 para a lin. J+1 e col. 3 de M1
M1(J+1,4):=K1; \\ Atribui K1 para a lin. J+1 e col. 4 de M1
M1(J+1,5):=K2; \\ Atribui K2 para a lin. J+1 e col. 5 de M1
X0:=X0+H; \\ Próximo X0 Y0:=Y0+H/2*(K1+K2); \\ Próximo Y0 J:=J+1; \\ Próximo J END; EDITMAT(M1,"RESULTADO",1); END;
Página 21
3.1.3 Fórmula: FXY
Até agora não foi dada a função FXY. No programa ela foi considerada na forma geral.
O programa acima é utilizado em cálculo numérico. É o método de Runge-Kutta de Segunda Ordem (Método de Euler Aprimorado) que aproxima equações diferenciais ordinárias (EDO).
Alimentação: muda para cada exercício.
Digitar a equação em modo algébrico, que no caso é: ‘UV2’ 2 ) , (x y xy f
3.1.4 Execução
Digitação: digitando a equação
Aspas simples indicam que o valor inserido representa uma função, por isso devemos inserir o valor de FXY usando as aspas usando Shift + ( ).
3.1.5 Alimentação
Fazer FXY ‘U-V+2’
Fazer X0 0
Fazer Y0 2
Fazer A 0
Fazer B 1
Fazer H 0,1
Página 22
3.1.6 Utilização
Para executar o programa com os parâmetros inseridos use o botão OK no menu inferior.
Percebe-se que não é possível visualizar toda a matriz. Para isso podemos usar o touch ou as teclas de navegação.
3.1.7 Abrindo catálogo de matrizes
Para acessar o catálogo de matrizes, onde se encontram as matrizes M0 – M9, usamos a combinação Shift + 4 e selecionamos a matriz desejada, no caso a matriz M1 usada no exemplo 02.
Página 23
O resultado será uma matriz com (m+1) linhas por 5 colunas onde:
j x j y j k 1 k 2 0 0 2 0 0,1 1 0,1 2,005 0,095 0,1855 2 0,2 2,019025 0,180975 0,2628775 3 0,3 2,041217625 0,258782375 0,332904138 4 0,4 2,070801951 0,329198049 0,396278244 5 0,5 2,107075765 0,392924235 0,453631811 6 0,6 2,149403568 0,450596432 0,505536789 7 0,7 2,197210229 0,502789771 0,552510794 8 0,8 2,249975257 0,550024743 0,595022269 9 0,9 2,307227608 0,592772392 0,633495153 10 1 2,368540985
Página 24
3.2 Exercício para treinamento:
Apagar programa EQ2G. Criar o novo programa EQ2G. Entrar em EQ2G. Tome a equação do 2o grau ax2 bxc0 com a0.
Programar a fórmula de Bhaskara:
a b x 2 com b2 4ac. Declarar 3 parâmetros e 1 variável
“A”, “B”, “C” e “DELTA”
3.2.1 Fazer a programação:
EXPORT EQ2G(A,B,C) BEGIN LOCAL DELTA; PRINT(); DELTA:=B^2-(4*A*C); IF (DELTA>0) THENPRINT("As raízes são " +(−B+√DELTA)/2*A +" e " +(−B-√DELTA)/2*A); ELSE IF(DELTA=0) THEN
PRINT("A raiz é " +(−B+√DELTA)/2*A); ELSE IF(DELTA<0) THEN
PRINT("Não há raízes reais"); END; END; END; END;
3.2.2 Alimentar o Programa
Resolver a equação: x2 x4 210 Resposta: 7 3 2 1 x xA = 1
B = -4
C = -21
Página 25
3.3 Comandos Auxiliares
TOOLBOX MENU
Clicando na tecla na tela HOME o menu inferior irá mostrar funções disponíveis para trabalho.
UNITS MENU
Clicando Shift + na tela HOME o menu inferior irá mostrar unidades e constantes disponíveis para trabalho.
3.4 Programas auxiliares
Biblioteca de programas: https://www.hpcalc.org/prime