Your SlideShare is downloading. ×
Cap07
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Cap07

179
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
179
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Capítulo 7INSTRUÇÕES PRIMITIVAS Como o próprio nome diz, instruções primitivas são os comandos básicos que efetuamtarefas essenciais para a operação dos computadores, como entrada e saída de dados(comunicação com o usuário e com dispositivos periféricos), e movimentação dos mesmos namemória. Estes tipos de instrução estão presentes na absoluta maioria das linguagens deprogramação. Antes de passar à descrição das instruções primitiva, é necessária a definição de algunstermos que serão utilizados:  dispositivo de entrada é o meio pelo qual as informações (mais especificamente os dados) são transferidos pelo usuário ou pelos níveis secundários de memória ao computador. Os exemplos mais comuns são o teclado, o mouse, leitora ótica, leitora de código de barras, as fitas e discos magnéticos.  dispositivo de saída é o meio pelo qual as informações (geralmente os resultados da execução de um programa) são transferidos pelo computador ao usuário ou aos níveis secundários de memória. Os exemplos mais comuns são o monitor de vídeo, impressora, fitas e discos magnéticos.  sintaxe é a forma como os comandos devem ser escritos, a fim de que possam ser entendidos pelo tradutor de programas. A violação das regras sintáticas é considerada um erro sujeito à pena do não reconhecimento por parte do tradutor  semântica é o significado, ou seja, o conjunto de ações que serão exercidas pelo computador durante a execução do referido comando. Daqui em diante, todos os comandos novos serão apresentados por meio de sua sintaxe esua semântica, isto é, a forma como devem ser escritos e as ações que executam.1. COMANDOS DE ATRIBUIÇÃO O comando de atribuição ou simplesmente atribuição, é a principal maneira de armazenaruma informação numa variável. Sua sintaxe é: <nome_da_variável> <- <expressão> Exemplos: Nome <- “Jenoveva” preco <- 15.85 quant <- 5 total <- preco * quant imposto <- total * 17 / 100
  • 2. O modo de funcionamento (semântica) de uma atribuição consiste: 1. na avaliação da expressão 2. no armazenamento do valor resultante na variável que aparece à esquerda do comando. A seguir temos um exemplo de um algoritmo utilizando o comando de atribuição: Algoritmo exemplo_comando_de_atriuição Var preço_unit, preço_tot : real quant : inteiro Início preço_unit := 5.0 quant := 10 preço_tot := preço_unit * quant Fim.2. COMANDOS DE SAÍDA DE DADOS Os comandos de saída de dados são o meio pelo qual informações contidas na memóriados computadores são colocadas nos dispositivos de saída, para que os usuários possam apreciá-las. No diagrama de blocos o comando de saída de dados é representado por: Há quatro sintaxes possíveis para esta instrução: ESCREVA (<variável>) Ex: ESCREVA (X) ESCREVA (<lista_de_variáveis>) Ex: ESCREVA (nome, endereco, cidade) ESCREVA (<literal>) Ex: ESCREVA (“Algoritmo é o máximo!”) ESCREVA (<literal>, <variável>, ... ,<literal>, <variável>) Ex: ESCREVA (“Meu nome é:”, nome, “e meu endereço é:”, endereco)
  • 3. Daqui por diante, ESCREVA será considerada uma palavra reservada e não mais poderá serutilizada como nome de variável, de modo que toda a vez que for encontrada em algoritmos, seráidentificada como um comando de saída de dados. Uma lista_de_variáveis é um conjunto de nomes de variáveis separados por vírgulas. Umliteral é simplesmente um dado do tipo literal (string ou cadeia de caracteres) delimitado poraspas. A semântica da instrução primitiva de saída de dados é muito simples: os argumentos docomando são enviados para o dispositivo de saída. No caso de uma lista de variáveis, o conteúdode cada uma delas é pesquisado na memória e enviado para o dispositivo de saída. No caso deargumentos do tipo literal ou string, estes são enviados diretamente ao referido dispositivo. Há ainda a possibilidade de se misturar nomes de variáveis com literais na lista de ummesmo comando. O efeito obtido é bastante útil e interessante: a lista é lida da esquerda para adireita e cada elemento da mesma é tratado separadamente; se um nome de variável forencontrado, então a informação da mesma é colocada no dispositivo de saída; no caso de umliteral, o mesmo é escrito diretamente no dispositivo de saída. A seguir temos um exemplo de um algoritmo utilizando o comando de saída de dados: Algoritmo exemplo_comando_de_saída_de_dados Var preço_unit, preço_tot : real quant : inteiro Início preco_unit := 5.0 quant := 10 preço_tot := preço_unit * quant Escreva preço_tot Fim.3. COMANDOS DE ENTRADA DE DADOS Os comandos de entrada de dados são o meio pelo qual as informações dos usuários sãotransferidas para a memória dos computadores, para que possam ser usadas nos programas. No diagrama de blocos o comando de entrada de dados é representado por: Há duas sintaxes possíveis para esta instrução: LEIA (<variável>) Ex: LEIA (X) LEIA (<lista_de_variáveis>) Ex: LEIA (nome, endereco, cidade)
  • 4. Da mesma forma que Escreva, daqui por diante Leia será tratada como uma palavra-reservada e não mais poderá ser usada como nome variável em algoritmos. A lista_de_variáveis éum conjunto de um ou mais nomes de variáveis separados por vírgulas. A semântica da instrução de entrada (ou leitura) de dados é, de certa forma, inversa à dainstrução de escrita: os dados são fornecidos ao computador por meio de um dispositivo deentrada e armazenados nas posições de memória das variáveis cujos nomes aparecem nalista_de_variáveis. A seguir temos um exemplo de um algoritmo utilizando o comando de entrada de dados: Algoritmo exemplo_comando_de_entrada_de_dados Var preço_unit, preço_tot : real quant : inteiro Início Leia preco_unit, quant preço_tot := preço_unit * quant Escreva preço_tot Fim. Uma preocupação constante de um bom programador deve ser a de conceber umprograma “amigo do usuário”. Esta preocupação é traduzida no planejamento de uma interfacecom o usuário (meio pelo qual um programa e o usuário “conversam”) bastante amigável. Emtermos práticos, isto se resume à aplicação de duas regras básicas:  toda vez que um programa estiver esperando que o usuário forneça a ele um determinado dado (operação de leitura), ele deve antes enviar uma mensagem dizendo ao usuário o que ele deve digitar, por meio de uma instrução de saída de dados;  antes de enviar qualquer resultado ao usuário, um programa deve escrever uma mensagem explicando o significado do mesmo. Estas medidas tornam o diálogo entre o usuário e o programador muito mais fácil. A seguir temos um exemplo do algoritmo anterior, utilizando as regras de construção deuma interface amigável: Algoritmo exemplo_interface_amigavel Var preço_unit, preço_tot : real quant : inteiro Início Escreva “Digite o preço unitário:” Leia preco_unit Escreva “Digite a quantidade:” Leia quant preço_tot := preço_unit * quant Escreva “Preço total: ”, preço_tot Fim.
  • 5. 4. ENTRADA, PROCESSAMENTO E SAÍDA Para se criar um programa que seja executável dentro de um computador, você deverá terem mente três pontos de trabalho: a entrada de dados, o seu processamento e a saída dosmesmos. Sendo assim, todo programa estará trabalhando com estes três conceitos. Se os dadosforem entrados de forma errada, serão consequentemente processados de forma errada eresultarão em respostas erradas. Desta forma, dizer a alguém que foi erro do computador é serum tanto "medíocre". E isto é o que mais ouvimos quando nosso saldo está errado e vamos aobanco fazer uma reclamação, ou quando recebemos uma cobrança indevida. Se houve algum erro,é porque foi causado por falha humana. Realmente é impossível um computador errar porvontade própria, pois vontade é uma coisa que os computadores não têm. Uma entrada e uma saída poderão ocorrer dentro de um computador de diversas formas.Por exemplo, uma entrada poderá ser feita via teclado, modem, leitores óticos, disco, entreoutras. Uma saída poderá ser feita em vídeo, impressora, disco, entre outras formas.5. FUNÇÕES MATEMÁTICAS Existem algumas funções matemática que estão implementadas para serem usadas comoinstruções primitivas. Tais funções encontram-se em uma lista, chamada de Lista de funções. ALista de funções é, então, uma maneira rápida de inserir funções predefinidas em seu algoritmo.Tal lista pode variar dependendo do programa utilizado. No Visualg, as funções matemáticaspreviamente definidas são:ABS (x) Retorna o valor absoluto de uma expressãoARCCOS (x) Retorna o arco de co-seno do argumento utilizadoARCSEN (x) Retorna o arco de seno do argumento utilizadoARCTAN (x) Retorna o arco de tangente do argumento utilizadoCOS (r) Retorna o valor do co-senoDIV Retorna o valor da divisão inteira entre dois númerosEXP (r) Retorna o valor exponencialLOG (r) Retorna o logaritmoLOGN (r) Retorna o logaritmo naturalMOD Retorna o módulo de uma operação (resto da divisão inteira)PI Retorna o valor de PIQUAD (r) Retorna o parâmetro elevado ao quadrado.RAIZQ (r) Retorna a raiz quadradaSEN (r) Retorna o valor do senoTAN (r) Retorna o valor da tangente
  • 6. Nem todas as funções que necessitamos estão prontas e às vezes é necessário utilizar umafórmula equivalente.EXERCÍCIOS PROPOSTOSQuestão 01:Exemplifique o uso dos comandos de Atribuição, Entrada e Saída.Questão 02:Como podemos orientar o usuário na digitação dos dados? Exemplifique.Questão 03:Escreva os comandos necessários para ler:a) as 3 notas de um alunob) o nome, o peso e altura de uma pessoaQuestão 04:Escreva os comandos necessários para exibir:a) o conteúdo da variável Xb) o resultado da expressão 2+3Questão 05:A ordem das atribuições é importante?A <- B e C <- A tem o mesmo efeito de C <- A e A <- B ?Questão 06:Em quais dos seguintes pares é importante a ordem dos comandos?a) X <- Y b) X <- Y c) X <- Z d) Z <- Y Y <- X Z <- X X <- Y X <- YQuestão 07:Escreva um programa que leia um número inteiro positivo e exiba o dobro do mesmo.
  • 7. Questão 08:Escreva um programa para calcular a área de um triângulo, sendo dados a sua base e a sua altura.Questão 09:Escreva um programa para calcular e exibir o comprimento de uma circunferência, sendo dado ovalor de seu raio.Questão 10:Escreva um programa para ler uma temperatura dada na escala Fahrenheit e exibir o equivalenteem Celsius.Questão 11:Escreva um programa para calcular e exibir a média ponderada de duas notas dadas.(nota1 = peso 6; nota2 = peso 4)Questão 12:Escreva um programa que leia duas variáveis inteiras e troque o conteúdo entre elas.Questão 13:Escreva um programa para ler o nome e o sobrenome de uma pessoa e escrevê-los na seguinteforma: sobrenome seguido por uma vírgula e pelo nome. Exemplo: entrada: "Antonio","Soares" saída: Soares, Antonio

×