Baixe o app para aproveitar ainda mais
Prévia do material em texto
INFORMÁTICA Marinha do Brasil Colégio Naval Curso de Preparação de Aspirantes Nosso objetivo é preparar o aluno do Colégio Naval segundo as determinações da Marinha do Brasil e de forma alinhada ao currículo da Escola Naval. A Marinha possibilita o desenvolvimento e engajamento daqueles que se identificam com a disciplina, e para aqueles que objetivam outros mares a disciplina poten- cializa a capacidade cognitiva. ALGORÍTMO Marinha do Brasil Colégio Naval Curso de Preparação de Aspirantes 01 - Definição de algoritmo e sua aplicação – 01 02 - Etapas para elaboração de um programa – 02 03 - Definição de variáveis e constantes – 02 04 - Comandos sequenciais – 02 05 - Estruturas de desvio condicional – 02 06 - Comandos de repetição exata – 03 07 - Comandos de repetição variável – 03 08 - Algoritmos completos – 03 Aula 01 ALGORÍTMO Marinha do Brasil Colégio Naval Curso de Preparação de Aspirantes Definição de algoritmo e sua aplicação Objetivo ●Entender o que é Algoritmo computacional e não computacional ●Conhecer as regras predefinidas de programação através de algoritmos Definição de algoritmo e sua aplicação Conteúdo ●Definição de algoritmo e sua aplicação ALGORITMO – Aula 01ALGORITMO – Aula 01 Lembrando ALGORITMO – Aula 01ALGORITMO – Aula 01 Hardware A parte mais importante do hardware é o PROCESSADOR O Processador e feito de TRANSISTORES Os Transistores são componentes eletrônicos que representam a lógica boleana (Falso/Verdadeiro) – Tabela Verdade Um processador é a implementação física de vários circuitos lógicos Memória é feita de transistores,mas diferentemente dos processadores sua única função é guardar 0 e 1. Lembrando ALGORITMO – Aula 01ALGORITMO – Aula 01 BIT é a representação da lógica boleana (Falso/Verdadeiro) BYTE é o conjunto de 8 bits Por que → Porque em 256 (28)posições se consegue representar todos os caracteres, números e símbolos PALAVRA é o conjunto de bits (4, 8, 16, 32, 64) KB – 1024 e não 1000 !!!!! Por que? → Potência de 2 Por que 2? → 0 e 1 ENDEREÇO é a localização dos bits. (normalmente intervalo) Lembrando ALGORITMO – Aula 01ALGORITMO – Aula 01 Software Básicos (S.O.), Utilitários (Antivirus,Compactador), Aplicativos(Folha Pagamento,Acadêmico,algum de marinha) Todos são desenvolvidos em uma linguagem de Programação (Pascal,C,Java, etc) Estes programas seguem uma estrutura (da linguagem) e uma lógica (para resolver um problema) Esta lógica antes de ser escrita em uma linguagem de computador (codificada) deve ser elaborada (algoritmo) Lembrando ALGORITMO – Aula 01ALGORITMO – Aula 01 LERLER ESCREVERESCREVER PROCESSARPROCESSAR LER E ESCREVERLER E ESCREVER Definições Dizem que o homem é um ser que observa, pensa e age. Que este pensar superior (racional) o diferencia das outras espécies de animais conhecidos. Ainda não podemos comparar as máquinas ao homem, entretanto fazemos isto com frequência. Até onde podemos ir com estas comparações ? ALGORITMO – Aula 01ALGORITMO – Aula 01 Conceitos complexos das redes neurais temos os algoritmos e os dados Conceitos primitivos de Leitura e Escrita estamos quase lá Definições A vida do homem não pode ser monótona, pois ele é incapaz de repetir algo, até porque ele é incapaz de reunir em uma palavra (ou verbo) coisas que possam representar um conceito (ou rotina). ALGORITMO – Aula 01ALGORITMO – Aula 01 A vida do homem é uma linha reta, pois o mundo é cada vez mais invariante, o que por si só desobriga o homem a decidir algo. Procedimento e Repetições Constantes, Variáveis e Decisões Definição de algoritmo Algoritmo é: a especificação da seqüência ordenada de passos lógicos que deve ser seguida para a realização de um tarefa, garantindo a sua repetibilidade. ou um conjunto finito de regras, bem definidas, para a solução de um problema em um tempo finito e com um número finito de passos ALGORITMO – Aula 01ALGORITMO – Aula 01 Definição de algoritmo Algoritmo não é a solução do problema, pois, se assim fosse, cada problema teria um único algoritmo. Algoritmo é o caminho para a solução de um problema, e em geral, os caminhos que levam a uma solução são muitos. Algoritmos não se aprende: – Copiando algoritmos – Estudando algoritmos Algoritmos só se aprende: – Construindo algoritmos – Testando algoritmos ALGORITMO – Aula 01ALGORITMO – Aula 01 Definição de algoritmo INSTRUÇÃO + DADOSINSTRUÇÃO + DADOSINSTRUÇÃO + DADOSINSTRUÇÃO + DADOS Algoritmo é: AÇÃO, que é VERBO, que é ORDEM, que é INSTRUÇÃO !!!!! ....... com manipulação de dados ALGORITMO – Aula 01ALGORITMO – Aula 01 Aplicação de algoritmos Algoritmo está presente no nosso dia a dia, principalmente em tudo aquilo que por algum motivo podemos ter que repetir em outras ocasiões, ou que tenhamos que passar informações para que outros executem uma tarefa. ● Tomar banho ● Andar ● Estudar, … São os algoritmos não computacionais.São os algoritmos não computacionais. ALGORITMO – Aula 01ALGORITMO – Aula 01 Aplicação de algoritmos Exemplo: Lavar o cabelo 1 – Início 2 – Molhe o cabelo 3 – Coloque Shampoo 4 – Faça Massagem 5 – Enxágüe 6 – Fim Exercícios: ● Faça um algoritmo para segurar a ponta da sua orelha. ● Faça um algoritmo para andar. ALGORITMO – Aula 01ALGORITMO – Aula 01 REPARAR QUE USAMOS REPARAR QUE USAMOS PROCEDIMENTOSPROCEDIMENTOS Aplicação de algoritmos O Algoritmo também está presente na automação, que é o processo em que uma tarefa deixa de ser desempenhada pelo homem e passa a ser realizada por máquinas. ● dispositivos mecânicos (como as máquinas industriais), ● dispositivos eletrônicos (como os computadores), ● ou dispositivos de natureza mista (como os robôs). Para que a automação de uma tarefa seja bem-sucedida é necessário que a máquina seja capaz de desempenhar cada etapa com eficiência, garantindo a repetibilidade do mesmo. São os algoritmos computacionais Lembrando que computadores são binários !!!! ALGORITMO – Aula 01ALGORITMO – Aula 01 Aplicação de algoritmos O algoritmo não computacional - Menos detalhado, porém mais complexo em sua execução pelo homem através de sua Rede Neural O algoritmo computacional - Totalmente detalhado, o computador ainda não consegue reproduzir a Rede Neural completamente Em um determinado evento podem estar presentes algoritmos computacionais e não computacionais ??? ALGORITMO – Aula 01ALGORITMO – Aula 01 ALGORITMO – Aula 01ALGORITMO – Aula 01 Análise Preliminar → Entenda o problema com a maior precisão possível, identifique os dados e os resultados desejados. Solução → Desenvolva um algoritmo para resolver o problema. Teste de Qualidade → Execute o algoritmo desenvolvido com dados para os quais o resultado seja conhecido. Alteração → Se o resultado do teste de qualidade não for satisfatório, altere o algoritmo e submeta-o a um novo teste de qualidade. Produto Final →O algoritmo concluído e testado, pronto para ser aplicado. Regras de um bom algoritmo Sempre valide (teste de qualidade) seu algoritmo !!!!!! (faça um chinês) ● Todas as informações estão sendo usadas e separadas as que são supérfluas das que são essenciais ? ● Todos os passos foram identificados e a sua ordem de execução está correta ? ● Existe alguma possibilidade de ao seguir este algoritmo o problema não ser resolvido? ● Ele é passível de repetição sem erros? ALGORITMO – Aula 01ALGORITMO – Aula 01 Regras de um bom algoritmo Regras de um bom algoritmo 1.Que se tenha um número finito de passos 2.Que cada passo esteja precisamente definido, sem possíveis ambigüidades 3.Que existam zeroou mais entradas tomadas de conjuntos bem definidos 4.Que existam uma ou mais saídas 5.Que exista uma condição de fim sempre atingida para quaisquer entradas e num tempo finito. ALGORITMO – Aula 01ALGORITMO – Aula 01 Regras de um bom algoritmo Para que um computador possa desempenhar uma tarefa é necessário que esta seja detalhada passo a passo, numa forma compreensível pela máquina, utilizando aquilo que se chama de programa, que nada mais é que um algoritmo escrito numa forma compreensível pelo computador. ALGORITMO – Aula 01ALGORITMO – Aula 01 ALGORITMO PROGRAMA Regras de um bom algoritmo Mas na maioria do desenvolvimento de algoritmos a solução para um problema começa pela divisão do problema em partes e para cada parte é construído o algoritmo correspondente. Assim, o algoritmo passa a ser composto de vários blocos que são interligados pelo algoritmo principal Estes blocos são denominados ProcedimentosProcedimentos ou FunçõesFunções ALGORITMO – Aula 01ALGORITMO – Aula 01 Regras de um bom algoritmo Mas qual a diferença entre eles ? Funções e Procedimentos são blocos de comandos, mas as funções tem o objetivo de, ao final de sua execução, devolver um valor para o algoritmo principal. Então, se um valor é armazenado em uma variável e uma função retorna um valor, então a função retorna uma variável. Na prática esta variável de retorno tem o mesmo nome da função e, principalmente, é eliminada da memória após sua execução (se desejar usar seu valor posteriormente deve salvar em outra variável) ALGORITMO – Aula 01ALGORITMO – Aula 01 Regras de um bom algoritmo E ao chamar estes procedimentos e funções o algoritmo principal passa alguma informação adicional ? SIM, ele pode passar (não é obrigatório) o que chamamos de parâmetros, que são variáveis. Mas estes procedimentos alteram estas variáveis? Se este parâmetro for passado por referência PODE (é a própria variável que é passada), mas se for passado por valor NÃO PODE (é passada uma cópia da variável e não a própria variável) ALGORITMO – Aula 01ALGORITMO – Aula 01 Regras de um bom algoritmo ALGORITMO – Aula 01ALGORITMO – Aula 01 algoritmo principal Execute o Bloco I Execute o Bloco II Fim algoritmo Bloco I Bloco II algoritmo algoritmo principal Execute o Bloco I Execute o Bloco II Fim algoritimo Bloco I Bloco II Definição Execução Se o bloco I fosse escrito para calcular o Log de x, seria função ou procedimento ? E 'x' deveria ser passada por valor ou referência ? Definição de algoritmo e sua aplicação Concluindo, ● Precisamos definir bem o problema e entendê-lo completamente ● Existem várias soluções para o mesmo problema e, .... ALGORITMO – Aula 01ALGORITMO – Aula 01 Definição Perfeita Deve descrever exatamente quais são as instruções que devem ser executadas e em que seqüência. Deve ser tornado explícito o maior número possível de informações, pois a falta de alguma informação pode levar a uma interpretação errada do algoritmo; Ausência de Ambigüidade Não deve deixar dúvidas sobre o que deve ser feito. A ambigüidade acerca do que deve ser feito também pode levar a uma interpretação errada do algoritmo ALGORITMO – Aula 01ALGORITMO – Aula 01 Definição de algoritmo e sua aplicação Eficácia Conseguir resolver o problema em qualquer situação. Todas as situações de exceção que possam alterar o comportamento do algoritmo devem ser especificadas e tratadas; Eficiência Resolver o problema com o mínimo de recursos. Sempre se deve buscar aquele algoritmo que, dentre os diversos algoritmos que resolvam um mesmo problema, utilize a menor quantidade de recursos. No caso de algoritmos para processamento de dados, os recursos a serem considerados são espaços de memória (principal e auxiliar) e tempo de processamento (economia de C.P.U.), entre outros. ALGORITMO – Aula 01ALGORITMO – Aula 01 Definição de algoritmo e sua aplicação Nesta aula – ALGORITMO – Aula 01 Definição de algoritmo e sua aplicação - Foram apresentados aos alunos as regras predefinidas de programação através de algoritmos ALGORITMO – Aula 01ALGORITMO – Aula 01 Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29
Compartilhar