



































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
Algoritmos-Portuguol
Tipologia: Notas de estudo
1 / 43
Esta página não é visível na pré-visualização
Não perca as partes importantes!




































Introdução Este trabalho é fruto de minha experiência em desenvolvimento de softwares e cursos lecionados na área de programação. O material aqui apresentado foi recolhido de algumas literaturas de Estrutura de Dados e Tutoriais da encontrados no sites da Internet. A programação é para mim uma diversão, apesar de complexo, mas vejo como a capacidade de um ser humano dominar e solucionar com recursos computacionais problemas do dia-a-dia de uma Empresa, Corporação, etc... O raciocínio da lógica para a programação traz ao indivíduo um novo mundo cheio de outros mundos. Dominando a lógica você será capaz de aprender sem grandes dificuldades qualquer outra linguagem de programação seja ela estruturada, orientada a objeto, orientada a eventos.
Abordagem Contextual Muitas pessoas gostam de falar ou julgar que possuem e sabem usar o raciocínio lógico, porém, quando questionadas direta ou indiretamente, perdem esta linha de raciocínio, pois este depende de inúmeros fatores para completá-lo, tais como: calma, conhecimento, vivência, versatibilidade, experiência, criatividade, ponderação, responsabilidade, entre outros. Bem sem mais delongas podemos dizer que lógica é a ciência que estudas as leis e critéios de validade que regem o pensamento e a demonstração, ou seja, ciência dos princípios formais do raciocínio. Usar a lógica é um fator a ser considerado por todos, principalmente pelos profissionais de informática (programadores, analistas de sistemas e suporte), pois seu dia-a-dia dentro das organizações é solucionar problemas e atingir os objetivos apresentados por seus usuários com eficiência e eficácia, utilizando recursos computacionais e/ou automatizados macatronicamente. Saber lidar com problemas de ordem administrativa, de controle, de planejamento e de estratégica requer atenção e boa performance de conhecimento de nosso interesse é mostrar como desenvolver e aperfeiçoar melhor esta técnica, lembrando que para isto, você deverá ser persistente e praticá-la constantemente, chegando à exaustão sempre que julgar necessário. Princípios de Resoluções de Problemas Primeiramente, devemos entender e compreender a palavra “problema”. Podemos dizer que problema é um proposta duvidosa, que pode Ter inúmeras soluções, ou questão não solvida e que é o objeto de discussão, segundo a definição encontrada no Dicionário Aurélio. Preferimos dizer que problema é uma questão que foge a uma determinada regra, ou melhor, é o desvio de um percurso, o qual impede de atingir com sucesso um determinado objetivo com eficiência e eficácia. Uma das soluções utilizadas para a resolução de problemas tem sido a utilização dos diagramas, no decorrer do curso será bastante enfatizado em sala de aula o uso de tais ferramentas com o intuito de auxiliar os aprendizados tanto na resolução de problemas como no conhecimento das técnicas de programação. ALGORITMO Um Algoritmo é uma seqüência de instruções ordenadas de forma lógica para a resolução de uma determinada tarefa ou problema. PROGRAMAÇÃO ESTRUTURADA Basicamente, a Programação Estruturada consiste numa metodologia de projeto de programas visando: facilitar a escrita dos programas; facilitar a leitura (o entendimento) dos programas; permitir a verificação a priori dos programas;
facilitar a manutenção e modificação dos programas. O maior problema em grandes sistemas de software reside na enorme complexidade desses sistemas, cuja a apreensão vai geralmente muito além da capacidade intelectual de um ser humano. Entenda-se aqui por complexidade de um sistema uma medida do número de seus componentes e do grau de interação entre eles. Para Dijkstra, o indiscutível iniciador da programação estruturada, “a arte de programar consiste na arte de organizar e dominar a complexidade”. A idéia da Programação Estruturada, que vai ao encontro da mencionada tarefa do programador, é reduzir a complexidade, em três níveis:
DIV Retorna o valor inteiro que resulta da divisão entre 2 números inteiros. FUNÇÕES Uma função é um instrumento (Sub–algoritmo) que tem como objetivo retornar um valor ou uma informação. A chamada de uma função é feita através da citação do seu nome seguido opcionalmente de seu argumento inicial entre parênteses. As funções podem ser predefinidas pela linguagem ou criadas pelo programador de acordo com o seu interesse. BIBLIOTECAS DE FUNÇÕES Armazenam um conjunto de funções que podem ser usadas pelos programas. FUNÇÕES PRÉ-DEFINIDAS ABS( ) VALOR ABSOLUTO SQRT( ) RAIZ QUADRADA SQR( ) ELEVA AO QUADRADO TRUNC( ) VALOR TRUNCADO ROUND( ) VALOR ARREDONDADO LOG( ) LOGARITMO SIN( ) SENO COS( ) COSENO TAN( ) TANGENTE As funções acima são as mais comuns e importantes para nosso desenvolvimento lógico, entretanto, cada linguagem possui suas funções própias. As funções podem ser aritméticas, temporais, de texto e etc. VARIÁVEIS Variáveis são endereços de memória destinados a armazenar informações temporariamente.
De acordo com a figura acima A e B são Variáveis de Entrada e C é uma Variável de Saída. CONSTANTES Constantes são endereços de memória destinados a armazenar informações fixas, inalteráveis durante a execução do programa. Exemplo: PI = 3. IDENTIFICADORES São os nomes dados a variáveis, constantes, Tipo de Dados, Registros e programas. Regras Para construção de Identificadores: Não podem ter nomes de palavras reservadas (comandos da linguagem); Devem possuir como 1º caractere uma letra ou Underscore ( _ ); Ter como demais caracteres letras, números ou Underscore; Ter no máximo 127 caracteres; Não possuir espaços em branco; A escolha de letras maiúsculas ou minúsculas é indiferente. Exemplos: NOME TELEFONE IDADE_FILHO NOTA1 SALARIO PI UMNOMEMUITOCOMPRIDOEDIFICILDELER UM_NOME_MUITO_COMPRIDO_E_FACIL_DE_LER TIPOS DE DADOS Todas as Variáveis devem assumir um determinado tipo de informação. O tipo de dado pode ser: Primitivo Pré-definido pela linguagem; Sub-Faixa É uma parte de um tipo já existente; Escalar Definidos pelo programador. TIPOS PRIMITIVOS DE DADOS
<
Como pode ser analisado no tópico anterior, todo programa possui uma estrutura seqüencial determinada por um ÍNICIO e FIM. TÉCNICAS BÁSICAS DE PROGRAMAÇÃO A partir deste ponto de estudo, você terá um contato direto com a parte mais prática deste trabalho. Anteriormente nos preocupamos em proporcionar a você, leitor, um conhecimento teórico básico, de algns pontos que são por vezes causadores de dúvidas até a alguns profissionais de informática considerados experientes. Sendo assim, daqui para frente você terá um contato maior com a aplicação prática dos Algoritmos. ENTRADA, PROCESSAMENTO E SAÍDA Para se criar um programa que seja executável dentro de um computador, você deverá term em mente três pontos de trabalho: a entrada de dados, o seu processamamento e a saída dos mesmos. Sendo assim, todo programa estará trabalhando com estes três conceitos. Se os dados forem entrados de forma errada, serão consequentemente e resultarão em respostas erradas. Desta forma, dizer a alguém que foi erro do computador é ser um pouco “medíocre”. O processo de execução de um programa ocorre segundo o exposto, após a entrada de dados com a instrução leia e saída dos mesmos com a instrução escreva, o processamento será uma conseqüência da manipulação das variáveis de ação. 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, moddem, leitores óticos, disco, entre outras. Uma saída poderá ser feita em víde, impressora, disco, entre outras formas. Devido a esta grande variedade, nossos programas escrito em português estruturado farão menção às instruções leia e escreva.
Exercícios de Aprendizagem
Atuam sobre expressões retornando sempre valores lógicos como Falso ou Verdadeiro. E RETORNA VERDADEIRO SE AMBAS AS PARTES FOREM VERDADEIRAS. OU BASTA QUE UMA PARTE SEJA VERDADEIRA PARA RETORNAR VERDADEIRO. NÃO INVERTE O ESTADO, DE VERDADEIRO PASSA PARA FALSO E VICE-VERSA. TABELA VERDADE A B A E B A OU B NÃO (A) V V V V F V F F V F F V F V V F F F F V EXPRESSÕES LÓGICAS As expressões compostas de relações sempre retornam um valor lógico. Exemplos: 2+5>4 Verdadeiro 3<>3 Falso De acordo com a necessidade, as expressões podem ser unidas pelos operadores lógicos. Símbolo Significado = Igual a <> Diferente de
Maior que < Menor que = Maior ou igual a <= Menor ou igual a Exemplo 01 Segue um Algoritmo que lê 2 números e escreve o maior. PROGRAMA ACHA_MAIOR; VAR A, B : INTEIRO; INICIO LER (A, B); SE A>B ENTÃO ESCREVER (A) SENÃO ESCREVER (B)
Exemplo 01 Segue um Algoritmo que lê 3 números e escreve o maior. PROGRAMA ACHA_MAIOR; VAR A, B, C : INTEIRO; INICIO LER (A, B, C); SE (A>B) E (A>C) ENTÃO ESCREVER (A) SENÃO SE (B>A) E (B>C) ENTÃO ESCREVER (B) SENÃO ESCREVER (C) FIM. ESTRUTURAS DE CONDIÇÃO A estrutura de condição eqüivale a um ninho de SE’S. Forma Geral: FACA CASO CASO <<CONDIÇÃO1>> <
for esta condição verdadeira, deverá ser indicado qual tipo de triângulo for formado: isósceles, escaleno ou equilátero.
Sua validação é final fazendo com que a repetição seja executada pelo menos uma vez.
Forma Geral; REPITA <