INTRODUÇÃO A PROGRAMAÇÃO ESTRUTURADA DE COMPUTADORES EM C Prof. Msc. Helio Esperidião
PROGRAMAS Um computador nada mais faz do que executar programas. Um programa é simplesmente uma seqüência de instruções definida por um programador em uma linguagem de especifica que pode ser executada em um computador. Um programa pode ser comparado a uma receita que indica os passos elementares que devem ser seguidos para desempenhar uma tarefa.
PROGRAMAS Cada instrução é executada no computador por seu principal componente, o processador ou CPU (Unidade Central de Processamento). Formalmente um programa: É um conjunto de instruções que descrevem uma tarefa a ser realizada por um dispositivo computacional.
LINGUAGEM DE PROGRAMAÇÃO É um método padronizado para comunicar instruções que serão processadas em um processador. Permite que um programador especifique precisamente em quais dados um computador vai atuar, como estes dados serão armazenados ou transmitidos e quais ações devem ser tomadas em circunstâncias pré determinadas Exemplos: C C++ Java
LINGUAGENS DE PROGRAMAÇÃO MULTI- PLATAFORMA São aquelas linguagens que podem ser executadas em sistemas operacionais distintos. Java C C++ PHP
LINGUAGENS DE PROGRAMAÇÃO NÃO PORTÁVEIS São aquelas desenvolvidas para um equipamento ou sistema operacional especifico. Exemplos: Visual Basic Plataforma.net da Microsoft
LINGUAGEM DE PROGRAMAÇÃO DE ALTO NÍVEL É uma linguagem com um nível de abstração relativamente elevado, longe do código de máquina e mais próximo à linguagem humana. O programador de uma linguagem de alto nível O programador de uma linguagem de alto nível não precisa conhecer características do processador, como instruções e registradores. Essas características são abstraídas na linguagem de alto nível.
ALGUNS EXEMPLOS DE LINGUAGENS DE ALTO NÍVEL: ASP Java MATLAB PHP Visual Basic
LINGUAGEM DE PROGRAMAÇÃO DE BAIXO NÍVEL É uma linguagem de programação que não abstrai as características da arquitetura do computador. É necessário conhecer detalhes físicos da maquina que está sendo programada. As linguagens de baixo nível estão diretamente relacionadas com a arquitetura do computador. Exemplo: Assembly.
BAIXO NÍVEL VS ALTO NÍVEL Baixo nível Alto Nível Vantagens Programas são processados mais rapidamente. Ocupam menos espaço na memória Programas tem maior portabilidade e as linguagens são mais estruturadas Desvantagens Programas tem pouca portabilidade, ou seja, são específicos para cada tipo de processador) e não são estruturados Programas exigem mais tempo de processamento
PROGRAMADORES Em computação, programador ou desenvolvedor de software faz referencia ao profissional que desenvolve programas de computadores.
ALGORITMOS Para resolver um problema no computador é necessário que seja primeiramente encontrada uma maneira de descrever este problema de uma forma clara e precisa. É preciso que encontremos uma seqüência de passos que permitam que o problema possa ser resolvido de maneira automática e repetitiva. Esta seqüência de passos é chamada de algoritmo.
EXEMPLO DE ALGORITMO Um exemplo simples de um problema que pode ser resolvido por meio de uma seqüência de passos é uma receita de bolo. A Montagem de uma casa de lego. A construção de um carro
ALGORITMOS E PROGRAMAS Algoritmos não utilizam uma linguagem de programação formal. Um programa de computador é a formalização de um algoritmo em qualquer linguagem de programação.
CARACTERÍSTICAS DE UM PROGRAMA De forma geral a maioria dos programas são compostos por dados de entrada, processamento e dados de saída. Entrada de dados Processamento de dados Saída (resultados)
O EXEMPLO DA RECEITA DE BOLO 2 xícaras de farinha de trigo 2 xícaras de açúcar 1 xícara de leite 6 colheres de sopa cheias de chocolate em pó 1 colher de sopa de fermento em pó 6 ovos Bata as claras em neve, acrescente as gemas e bate novamente, coloque o açúcar e bata outra vez Coloque a farinha, o chocolate em pó, o fermento, o leite e bata novamente Untar um tabuleiro e colocar para assar por aproximadamente 40 minutos em forno médio Enquanto o bolo assa faça a cobertura com 2 colheres de chocolate em pó, 1 colher de margarina, meio copo de leite e leve ao fogo até começar a ferver Jogue quente sobre o bolo já assado Bolo pronto com cobertura ENTRADA DE DADOS PROCESSAMENTO SAÍDA
PROGRAMAÇÃO ESTRUTURADA A programação estruturada é uma forma de programação de computadores que estabelece uma disciplina de implementação de algoritmos, independentemente da sua complexidade e da linguagem de programação na qual será codificado, que facilita a compreensão da solução através de um número restrito de mecanismos de codificação.
PROGRAMAÇÃO ESTRUTURADA ESTRUTURAS BÁSICAS DE CONTROLE Atribuição, Seqüência, condição e Repetição. São formas de raciocínio intuitivamente óbvias. A legibilidade e compreensão de cada bloco de A legibilidade e compreensão de cada bloco de código na solução é enormemente incrementada, proibindo o uso irrestrito de comandos de desvio incondicional (GOTO).
PROGRAMAÇÃO ESTRUTURADA SUBPROGRAMAÇÃO (OU MODULARIZAÇÃO). À medida que os programas vão se tornando maiores e mais complexos, é possível simplificar e melhorar a clareza dividindo o programa em partes menores, chamadas subprogramas. Um subprograma, é um nome dado a um trecho Um subprograma, é um nome dado a um trecho de um programa mais complexo e que, em geral, encerra em si próprio um pedaço da solução de um problema maior (o programa a que ele está subordinado). São sinônimos usados na engenharia de software para o conceito de subprograma: procedimento, função, módulo (estrutura modular), métodos (orientação a objetos) e subrotina.
CÓDIGO-FONTE DE UM PROGRAMA O Código fonte é composto por linhas de programação que formam um programa em sua forma original. Com o código-fonte o programa pode ser modificado. Adicionar recursos, Remover outros Adaptar o programa às suas necessidades.
EXEMPLO DE UM CÓDIGO FONTE LINGUAGEM C
CÓDIGO-FONTE ABERTO O termo código aberto, ou open source em inglês, foi criado pela OSI (Open Source Initiative) Seu código fonte pode ser analisado e alterado por qualquer pessoa. Exemplos: Linux Servidor Apache Eclipse Mozilla
CÓDIGO-FONTE PROPRIETÁRIO Programas proprietários não disponibilizam seus códigos fontes. Não é possível alterar a forma como o programa funciona.
COMPILADORES A função dos compiladores é converter o código fonte dos programas em uma linguagem que possa ser executada em um computador. Os compiladores transformam o código fonte de um programa que está em uma linguagem próxima a natural humana em código de máquina, próprio para ser executado por um computador. Um programa compilado dá origem a um arquivo diferente do arquivo do código fonte.
INTERPRETADORES Algum programas não precisam ser compilados, estes programas são interpretados. Em tempo de execução os interpretadores interpretam o código fonte e o traduzem para o computador ser capaz de identificá-lo. Não há necessidade de criar um arquivo diferente do arquivo de código fonte.
COMPILADORES VS INTERPRETADORES hi, how are you? Olá, como está você? Código Fonte Compilador Código Objeto (*.exe) Computador hi, how are you? olá, como está você?
TERMOS UTILIZADOS POR PROGRAMADORES Termo Compilar Rodar Executar Em execução Debug Debugar Case Sensitive Descrição é o mesmo que executar Carregar o programa na memória e iniciar o processamento O programa está na memória, pode estar ou não sendo executado pelo processador Análise linha a linha do código a procura de error O mesmo que Debug Maiúsculas e minúsculas fazem diferença
IDE (INTEGRATED DEVELOPMENT ENVIRONMENT ) IDE, do inglês ou Ambiente Integrado de Desenvolvimento, é um programa de computador que reúne características e ferramentas de apoio ao desenvolvimento de software com o objetivo de agilizar este processo.
A LINGUAGEM C É uma linguagem de programação genérica que é utilizada para a criação de programas diversos como processadores de texto, planilhas eletrônicas, sistemas operacionais, programas de comunicação, programas para a automação industrial, gerenciadores de bancos de dados, programas de projeto assistido por computador, programas para a solução de problemas da Engenharia, Física, Química e outras Ciências, etc... Cé o Quebra galho da computação
IDE - DEV-C/C++ Dev-C++ é um Ambiente de Desenvolvimento Integrado (IDE - Integrated Development Environment) para programação na linguagem C/C++. Pode ser encontrado em: http://sourceforge.net/projects/dev-cpp/
INSTALAÇÃO DO DEV-C
INSTALAÇÃO DO DEV-C
INSTALAÇÃO DO DEV-C
INSTALAÇÃO DO DEV-C
INSTALAÇÃO DO DEV-C
MINGW É um compilador Gera um arquivo executável de um programa em C
INSTALAÇÃO DO MINGW Pode ser encontrado em: http://www.mingw.org/
MINGW
MINGW
MINGW
MINGW
MINGW
MINGW
MINGW
CONFIGURAR O DEV-C PARA USAR O COMPILADOR MINGW
CONFIGURAR O DEV-C PARA USAR O COMPILADOR MINGW Procure os arquivos gcc.exe e g++.exe no diretório: C:\MinGW\bin Clique em OK.
TESTANDO AS INSTALAÇÕES Crie uma pasta com seu nome na raiz do disco C: O nome da pasta não deve conter espaços e caracteres especiais. Digite o código do próximo slide no programa dev- c/c++. Salve o código do próximo slide dentro da pasta criada anteriormente. O nome do arquivo não deve conter espaços ou caracteres especiais Pressione a tecla f9 no teclado
CÓDIGO FONTE
RESULTADO ESPERADO
SUA REAÇÃO AO FINAL DA AULA O que foi isso? Estou tranqüilo O que ele tava falando? Estude, você entendeu, só precisa fixar os conteúdos e fazer as listas de exercício. Desafio você a tirar mais do que 8. Estude muito, faça os exercícios e faça pesquisas complementares