Vous êtes sur la page 1sur 8

Algoritmos

Abstrao = Operao mental que observa a realidade e captura apenas (o mais importante) os aspectos relevantes para um contexto. A abstrao depende mais do observador do que da realidade observada. Sistema Computacional = Hardware, software, peopleware Hardware Parte fsica do Sistema Computacional ex: tec,impre Software- Parte lgica do Sistema Computacional ex: S.O, E. d T.

Peopleware- Pessoas que interagem com o Sistema Computacional agrupado nas seguintes categorias bsicas Dispositivo de Entrada Processamento (UCP) Dispositivo de sada Teclado,Mouse Memria Principal Ram Memria Auxiliar HD Monitor e CX de S. I

Em quais grupos um software de um sistema computacional pode ser dividido? Software bsico: Programas essenciais ao funcionamento do pc e apoio a outros softwares. Ex: Sistema operacional, tradutores de linguagem de programao. Software aplicativo: Programas destinados ao usurio

Ex: Softwares que usamos no dia a dia. O peopleware de um sistema computacional pode ser classificado em dois tipos bsicos: Usurio Final Interagem com o sistema computacional sem conhecer detalhes do seu desenvolvimento EX: secretrias, balconistas e executivos Usurio Especialista Interagem com o sistema computacional especificando ou programando como este deve se comportar EX: programadores, analistas de sistemas e engenheiros de computao 1 Regra de Programao = Entrada Processamento Sada

O que linguagem de programao ?


Conjunto de palavras e regras que permitem comunicar ao pc o que este deve executar. Tipos de Linguagens de Programao 1 Linguagem de Mquina Possua uma notao binria (zeros e uns), a qual tornava a programao trabalhosa, cansativa e fortemente sujeita a erros 2 Linguagem Assembly Sugiram para minimizar as dificuldades da programao em notao binria

Cdigos de operao e endereos binrios foram substitudos por mnemnicos 3 Linguagem de Alto Nvel Aproximam-se das linguagens utilizadas por humanos para expressar problemas Cada declarao numa linguagem de alto nvel equivale a vrias declaraes numa linguagem de baixo nvel

VN G S AT E A N BI O A X NE L V AO L T NE L V

D VN G S E AT E S A N

P g m sop csao P g m t moc praii ae r r a r esds r r a pua o b dd oa s o oa s t l m rp a et . O pmsoepc i o pr u tp d a ai m e c a ( se cs a mi o e i s d n u f a moep n m a e s sao a e r . n mi Pgm r r a oa s p csao e so s u rds r esdr no et t ao o ) ru .

t m m r P g m ei e m t m d a i o r r a x m a ep e oa s g i s o (rdo tau pr a a

praii ae a lnugn p csa et o b dd e s i gaes r esm o t l o n so m a i s

etu rds lnugmemu agr cd o s t aa i gae d i ru q n e i a g gnrc e o p x,+ e a e o cmeo M r ) i l mi .

(aiia a r g m) fc t mp r a o l oa

Se o computador s entende linguagem de mquina, o que deve ser feito para que ele entenda programas em linguagem assembly ou de alto nvel? Usar um tradutor.
Tradutores no contexto de linguagens de programao so Programa que recebe como entrada um programa em linguagem assembly ou de alto nvel (dita linguagem fonte) e

produz como sada as instrues deste programa traduzidas para linguagem de mquina

Existem basicamente trs tipos de tradutores Compilador; Interpretador; Montadores. Tipos de Tradutores 1) COMPILADOR: traduz de uma vez s todo o
programa escrito em linguagem de alto nvel (cdigo-fonte) para um programa equivalente escrito em linguagem de mquina (cdigo-objeto);

2) INTERPRETADOR: traduz (sem gerar cdigo-objeto)


e em seguida executa, uma-a-uma, as instrues de um programa em linguagem de alto nvel (cdigo-fonte);

3) MONTADOR (ou Assembler): faz a traduo


direta das instrues Assembly para um programa equivalente escrito em linguagem de mquina; COMPILADOR X INTERPRETADOR O cdigo objeto (traduo para a linguagem de mquina) que produzido por um compilador pode ser executado vrias vezes sem a necessidade de recompilao. Esta s necessria se o cdigo fonte for alterado; Todo programa interpretado deve re-executar o processo de interpretao independentemente de ter

havido ou no modificaes no seu cdigo fonte por isso mais lento;

Atividades Qual o papel da abstrao na programao de sistemas computacionais? A tarefa de programar sistemas computacionais envolve o exerccio constante da abstrao da realidade e sua codificao em uma linguagem de programao. Analisar o problema e criar um programa que resolva o problema.

O que lgica? Arte de pensar e organizar os pensamentos. Proposio: um enunciado verbal, ao qual deve ser atribudo, sem ambigidade, um valor lgico verdadeiro (V) ou falso (F). Algoritmo = Sequncia lgica sem duplo sentido, que leva a soluo de um problema. Caractersticas bsicas de um algoritmo Seqncia lgica As instrues devem ser definidas em uma ordem correta No ambgua A seqncia lgica e as instrues no devem dar margem dupla interpretao Soluo de um problema A seqncia lgica deve resolver exatamente (nem mais e nem menos) o problema identificado Tempo finito

A seqncia lgica no deve possuir iteraes infinitas Lgica de Programao = o encadeamento lgico de instrues para o desenvolvimento de programas. Programa = a implementao das instrues (codificao+traduo+execuo) de um algoritmo em uma linguagem de programao. Ou Sequncia de passos lgicos que levam a execuo de uma tarefa. Instruo = Informao que representa uma ao elementar que deve ser executada Porque aprender algoritmo ? A noo de algoritmo bsica para toda a programao de computadores. Estruturas bsicas de um algoritmo: Seqncia Incio/Fim Define uma estrutura onde as instrues sero executadas na ordem que aparecem. Seleo Se-Ento/Seno Define uma estrutura condicional que dada a sua avaliao (V ou F) determina qual caminho do algoritmo ser executado Repetio Repita, Enquanto ou Para Define uma estrutura de iterao condicional (V ou F) ou contada (pr-definida) de instrues Variveis e Constantes Variveis e constantes so pores de memria RAM que so reservadas para o armazenamento de dados durante a execuo do aplicativo

variveis podem ter os seus valores alterados ao longo do aplicativo; As constantes so valores fixos e no podem ter os seus valores alterados durante a execuo do programa; Tipos de dados: Inteiro, Real, Caracter, Lgico Atribuio de valores: Sintaxe diz respeito a forma de como as instrues devem ser escritas Conjunto de regras, formas que especificam a composio dos algoritmos a partir de letras, dgitos e outros smbolos.
Semntica diz respeito ao significado lgico das instrues que

sero executadas pelo computador Conjunto de regras que especificam o significado de qualquer programa, sintaticamente vlido. Instruo primitiva = Entrada e sada, a instruo de entrada de dados permite que informaes dos usurios sejam transferidas para a memria do computador (variveis).