Baixe o app para aproveitar ainda mais
Prévia do material em texto
Algoritmos – Conceitos básicos José dos Reis Mota 2013 Algoritmo x Programa • Algoritmo: número finito de passos especificando os processos que produzirão um resultado previamente definido (solução de um problema). • Programa: conjunto de instruções para computador descrevendo como executar o algoritmo. – Codificação de um algoritmo em linguagem de programação. Descrição de Algoritmos • Descrição narrativa – Linguagem natural • Fluxograma – Símbolos gráficos • Pseudocódigo (Portugol) – Linguagem estruturada Funcionalidade do Algoritmo Compilação x Interpretação • Compilador: traduz todo o código-fonte para um programa em linguagem de máquina (código-objeto). • Interpretador: traduz (sem gerar código- objeto) e executa, uma a uma, as instruções do código-fonte. Construindo Algoritmos • A programação de um sistema computacional pode ser resumida em três passos básicos: Método para construção de Algoritmos 1. Compreender completamente o problema a ser resolvido (anotações). 2. Definir os dados de entrada. 3. Definir os dados de saída. 4. Definir o processamento, ou seja, quais cálculos devem ser efetuados e quais as restrições para esses cálculos para, dadas as entradas, produzir as saídas especificadas. 5. Construir o algoritmo. 6. Testar o algoritmo realizando simulações. 1. Identificando: Entrada, Processamento, Saída “Escreva um programa que recebe 2 notas de aluno e calcula a média aritmética delas.” “Escreva um algoritmo para ler o preço e a quantidade de um produto e calcula o preço a pagar pelo mesmo.” 2. Identificando: Entrada, Processamento, Saída “Escreva um algoritmo para calcular o salário líquido de um funcionário, a partir do número de horas trabalhadas e da quantidade de dependentes. Sabe-se que o valor da hora é de 12 reais, que se recebe 40 reais por cada dependente e que é descontado um total de imposto de 12% do valor do salário bruto (salário sem descontos)”. Conceitos básicos para programação • Variáveis • Constantes • Tipos de dados • Operadores • Comandos Variáveis • Dados armazenados na memória para serem utilizados no processamento. • Possui nome e tipo. • Conteúdo variável e único (armazena um só valor a cada instante). • Tabela de alocação: nome da variável, tipo e endereço inicial. Tipos de dados • Numérico – Inteiro – Real • Lógico – Verdadeiro (true) – Falso (false) • Caractere (literal, string): cadeia de caracteres Declaração de variáveis (VisuAlg) • <lista-de-variáveis> : <tipo-de-dado> • Exemplos: var a: inteiro valor1, valor2: real nome_do_aluno: caractere sinalizador: logico Identificadores • Representam os nomes escolhidos para rotular as variáveis, programas e subprogramas. • Normalmente, obedecem as seguintes regras: – O primeiro caractere deve ser uma letra; – Os nomes devem ser formados por caracteres pertencentes ao seguinte conjunto: {a,b,c,..z,A,B,C,...Z,0,1,2,...,9,_}; Regras para Identificadores (continuação....) – Não deve haver espaço em branco; – Não deve haver identificadores repetidos; – Não existe distinção de maiúsculas e minúsculas; – Os nomes escolhidos devem ser claros a fim de explicitar seu conteúdo uso, mas também não deve ser extenso para não dificultar a escrita. Operadores Aritméticos (VisuAlg) +,- Operadores unários, aplicados a um único operando. Maior precedência. Exemplos: -3, +x. O operador unário - inverte o sinal do seu operando, o operador + não altera o valor em nada o seu valor. +,-,*,/ Operadores aritméticos tradicionais de adição, subtração, multiplicação e divisão. Por convenção, * e / têm precedência sobre + e -. Para modificar a ordem de avaliação das operações, é necessário usar parênteses como em qualquer expressão aritmética. MOD ou % Operador de módulo (isto é, resto da divisão inteira). Por exemplo, 8 MOD 3 = 2. Tem a mesma precedência do operador de divisão tradicional. ^ Operador de potenciação. Por exemplo, 5 ^ 2 = 25. Tem a maior precedência entre os operadores aritméticos binários (aqueles que têm dois operandos). Operadores de Caracteres (VisuAlg) + Operador de concatenação de strings (isto é, cadeias de caracteres), quando usado com dois valores (variáveis ou constantes) do tipo "caractere". Por exemplo: "Rio " + " de Janeiro" = "Rio de Janeiro" Operadores Relacionais (VisuAlg) = < > <= >= <> igual, menor que, maior que, menor ou igual a, maior ou igual a, diferente de. São utilizados em expressões lógicas para se testar a relação entre dois valores do mesmo tipo. Exemplos: 3 = 3 ( 3 é igual a 3?) resulta em VERDADEIRO ; "A" > "B" ("A" está depois de "B" na ordem alfabética?) resulta em FALSO. Operadores Lógicos (VisuAlg) nao Operador unário de negação. nao VERDADEIRO = FALSO, e nao FALSO = VERDADEIRO. Tem a maior precedência entre os operadores lógicos. ou Operador que resulta VERDADEIRO quando um dos seus operandos lógicos for verdadeiro. e Operador que resulta VERDADEIRO somente se seus dois operandos lógicos forem verdadeiros. xou Operador que resulta VERDADEIRO se seus dois operandos lógicos forem diferentes, e FALSO se forem iguais. Comandos • Atribuição: <- – tem como finalidade armazenar um valor, variável ou expressão na variável – é necessário que o tipo do valor, variável ou expressão seja compatível com o tipo da variável • Exemplos: a <- 3 valor1 <- 1.5 valor2 <- valor1 + a nome_do_aluno <- "José da Silva" sinalizador <- FALSO Comandos • Entrada: utilizado para que se possa ler um determinado dado por meio de um dispositivo de entrada. • Esses dados lidos serão armazenados na memória do computador através das variáveis. • VisuAlg: leia (<lista-de-variáveis>) leia (matricula) leia (nota) Comandos • Saída: utilizado para permitir que se possa escrever algo na tela do computador. • VisuAlg: – escreva (<lista-de-expressões>) – escreval (<lista-de-expressões>). – Ex.: escreva(“texto”, variável) Ver Algoritmo Exemplo
Compartilhar