Profs Jos Eustquio Rangel de Queiroz Carga Horria
- Slides: 55
Profs. : José Eustáquio Rangel de Queiroz Carga Horária: 60 h CEEI DSC rangel@dsc. ufcg. edu. br Joseluce de Farias Cunha Roberto Medeiros de Faria
Plano de Ensino ± Objetivos ± Ementa ± Técnicas de Ensino ± Recursos Didáticos ± Avaliação ± Resultados Esperados ± Bibliografia 2 rangel@dsc. ufcg. edu. br
Objetivos I ± Oferecer ao aluno uma visão geral da Informática e suas aplicações à Engenharia Elétrica; ± Apresentar um sistema computacional, discutindo seus principais componentes; ± Definir e construir conceitos fundamentais da Ciência de Computação; ± Propor soluções computacionais para problemas simples da Engenharia Elétrica; ± Desenvolver e testar soluções de problemas computacionais usando algoritmos; 3 rangel@dsc. ufcg. edu. br
Objetivos II ± Projetar, elaborar e depurar soluções de problemas computacionais usando programas na linguagem C; ± Estudar a programação modular, discutindo as principais técnicas utilizadas na implementação de estruturas de dados básicas, de algoritmos de busca e ordenação; ± Resolver eficientemente problemas de engenharia elétrica em ambientes computacionais. 4 rangel@dsc. ufcg. edu. br
Ementa I ± Introdução à Programação: aplicações dos sistemas computacionais; ± Introdução à Organização de Computadores; ± Soluções de problemas mediante o uso de sistemas computacionais; ± Processo de desenvolvimento de programas; ± Algoritmos; ± Modelos de Programação; ± Introdução a uma Linguagem de Programação; ± Tipos de Dados (Entrada Operadores e Expressões; e Saída de Dados), 5 rangel@dsc. ufcg. edu. br
Ementa II ± Comandos de repetições); Controle de Fluxo (decisões ± Agregados de Dados Homogêneos e Heterogêneos; ± Modularização de Programas; ± Recursividade; ± Alocação Dinâmica de Memória; ± Portabilidade de Programas; ± Técnicas de bom estilo de programação; ± Projeto de Aplicação. e 6 rangel@dsc. ufcg. edu. br
Técnicas de Ensino ± Aulas Expositivas ± Atividades Individuais e Grupais Intra- Individuais e Grupais Extra- Classe ± Atividades Classe 7 rangel@dsc. ufcg. edu. br
Recursos Didáticos ± Quadro Branco ± Retroprojetor/ Datashow ± Computador ± Biblioteca Setorial 8 rangel@dsc. ufcg. edu. br
Avaliação ± Contínua ° Avaliações individuais e trabalhos em sala de aula ± Trabalhos interativos ° Atividades de pesquisa e desenvolvimento extra- classe ± Seminários de Projeto ° Avaliação de conclusão do curso 9 rangel@dsc. ufcg. edu. br
Resultado Esperado ± Espera-se que os conhecimentos repassados auxiliem o aluno no raciocínio e na aplicação de conceitos pertinentes ao contexto de estudo, visando a elaboração mais eficiente de programas e a preparação para a compreensão de tópicos mais avançados de programação, a serem estudados na disciplina Técnicas de Programação. 10 rangel@dsc. ufcg. edu. br
Bibliografia I ± Livro-Texto ° DEITEL, H. M. & DEITEL, P. J. , Como Programar em C. LTC Editora, 1999. ° DEITEL, H. M. & DEITEL, P. J. , C How to Program, 5 th Ed. , Prentice Hall, 2006. ± Bibliografia Complementar ° CHISHOLM, P. S. R. , HANLEY, D. , JONES, M. , LINDNER, M. & WORK, L. , C Programming: Just the FAQs, Sams, 1995. ° GACLI-UNICAMP, Introdução à Linguagem C. ° HORTON, IVOR , Beginning C: From Novice to Professional, 4 th Ed. , Apress, 2004. 11 rangel@dsc. ufcg. edu. br
Bibliografia II ± Bibliografia Complementar ° JAMSA, KRIS & KLANDER, L. , Programando em C/C++. Makron Books Editora do Brasil Ltda, 1999. ° KERNIGHAN, B. & RITCHIE, Linguagem de Programação Campus, 1986. ° MESQUITA, R. C. , Curso de C. Núcleo de Ensino à Distância. Escola de Engenharia – UFMG. ° NONATO, L. G. , Tipos e Estruturas de Dados. Instituto de Ciências Matemáticas e de Computação Departamento de Computação e Estatística - USP. D. C. M. , A Editora 12 rangel@dsc. ufcg. edu. br
Bibliografia III ± Bibliografia Complementar ° SCHILDT, H. , C The Complete Reference. Mc. Graw-Hill/Osborne, 4 th Ed. , 2000. ° SCHILDT, HERBERT, C Completo e Total. Makron Books do Brasil Editora Ltda. , 3ª Edição, 1996. ° WOOD, R. L. , C Programming for Scientists and Engineers. Butterworth-Heinemann, 2002. 13 rangel@dsc. ufcg. edu. br
Introdução à Programação Tópicos 1. 1 1. 2 1. 3 1. 4 1. 5 1. 7 Introdução O que é um Computador? Organização de um Computador Evolução de Sistemas Operacionais Computação Pessoal, Distribuída e Cliente/Servidor Linguagens de Máquina, de Montagem (Assembly) e de Alto Nível Histórico da Linguagem C 1. 8 A Biblioteca Padrão de C 1. 6 14 rangel@dsc. ufcg. edu. br
Introdução à Programação Tópicos 1. 9 1. 10 1. 11 1. 12 1. 13 1. 14 1. 15 1. 16 1. 17 Tendências de Desenvolvimento de Software: Tecnologia de Objetos C e C++ Java Outras Linguagens de Alto Nível Programação Estruturada Fundamentos de um Ambiente Típico de Desenvolvimento de Programas em C Tendências de Hardware Internet World Wide Web (WEB) 15 rangel@dsc. ufcg. edu. br
Objetivos (1/2) ± Após a discussão do material deste capítulo, v. será capaz de: ° Compreender básicos; conceitos computacionais ° Familiarizar-se com diferentes tipos de linguagens de programação; ° Familiarizar-se com o histórico linguagem de programação C; da ° Tomar conhecimento da biblioteca-padrão da linguagem C; 16 rangel@dsc. ufcg. edu. br
Objetivos (2/2) ± Após a discussão do material deste capítulo, v. será capaz de: ° Compreender os elementos de um ambiente típico de programação em C; porque é importante aprender C em um primeiro curso programação; ° Entender porque C oferece um embasamento para estudos posteriores de outras linguagens de programação, em especial C++ e Java. ° Ponderar 17 rangel@dsc. ufcg. edu. br
1. 1 Introdução ± Objeto de Estudo ° A linguagem de programação C ° Técnicas de Programação Estruturada ± Extensão do Livro-texto ° Fundamentos de ² Capítulos 15 a 23 ° Fundamentos de ³ ± C++ Java Capítulos 24 a 30 Público-alvo ° Estudantes universitários com pouca nenhuma experiência de programação ou 18 rangel@dsc. ufcg. edu. br
1. 2 O que é um Computador? ± Computador ° Dispositivo capaz de realizar computações e tomar decisões lógicas ° Computadores processam dados a partir de conjuntos de denominadas programas instruções ° Máquina eletrônica capaz de receber informações, submetê-las a um conjunto especificado/pré-determinado de operações lógicas/aritméticas e fornecer o resultado destas operações 19 rangel@dsc. ufcg. edu. br
1. 2 O que é um Computador? ± Os computadores atuais são dispositivos eletrônicos que, sob direção e controle de um programa, executam quatro operações fundamentais ° Entrada (Input) ° Processamento (Processing) ° Saída (Output) ° Armazenamento (Storage) 20 rangel@dsc. ufcg. edu. br
± Ciclo IPOS 1. 2 O que é um Computador? Entrad a Processamen to Saíd a Armazename 21 rangel@dsc. ufcg. edu. br
1. 2 O que é um Computador? ± Sistema de computação ° Integração de componentes atuando como uma entidade, com o propósito de processar dados, i. e. realizar algum tipo de operação aritmética/ lógica envolvendo os dados, de modo a produzir diferentes níveis de informações 22 rangel@dsc. ufcg. edu. br
± Componentes Computacional 1. 2 O que é um Computador? de um Sistema Peoplewa re Hardwar e Softwar e 23 rangel@dsc. ufcg. edu. br
1. 2 O que é um Computador? ± Componentes Computacional ° de um Sistema Peopleware ² Componente humana de um sistema de computação, i. e. indivíduos que utilizam o computador como ferramenta 24 rangel@dsc. ufcg. edu. br
1. 2 O que é um Computador? ± Componentes Computacional ° de um Sistema Hardware ² Componente física de um sistema de computação, i. e. todos os equipamentos utilizados pelo usuário nas ações de entrada, processamento, armazenamento e saída de dados 25 rangel@dsc. ufcg. edu. br
1. 2 O que é um Computador? ± Componentes Computacional ° de um Sistema Software ² Componente lógica de um sistema de computação, i. e. séries de instruções que fazem o computador funcionar (programas de computador) 26 rangel@dsc. ufcg. edu. br
1. 2 O que é um Computador? ± Hardware ° Gama variada de dispositivos que compõem um computador ° Teclado, terminal de vídeo (monitor), mouse, discos, memória, CD-ROM e unidades de processamento ± Software ° Programas computador que são executados em um 27 rangel@dsc. ufcg. edu. br
1. 3 Organização de um Computador Unidade Central de Processamento Dispositivos de Entrada Unidade de Controle ULA Dispositivos de Saída Unidade Primária de Armazenamento Dispositivos de Armazenamento Secundário 28 rangel@dsc. ufcg. edu. br
1. 3 Organização de um Computador ± Unidades Lógicas Básicas ° Unidade de Entrada (Input Unit) ² Obtenção da informação a partir de dispositivos de entrada (e. g. teclado, mouse) ° Unidade de Saída (Output unit) ² Apresenta a informação em dispositivos de saída (e. g. monitor, impressora) ° Unidade de Memória (Memory unit) ² Acesso rápido, de baixa capacidade e armazenamento da informação obtida pelos dispositivos de entrada 29 rangel@dsc. ufcg. edu. br
1. 3 Organização de um Computador ± Unidades Lógicas Básicas ° Unidade Lógica e Aritmética - ULA (Arithmetic and Logic unit - ALU) ² Execução de cálculos aritméticos e tomada de decisões lógicas ° Unidade Central de Processamento – UCP (Central Processing unit - CPU) ² Supervisão e coordenação das demais unidades que compõem o computador 30 rangel@dsc. ufcg. edu. br
1. 3 Organização de um Computador ± Unidades Lógicas Básicas ° Unidade de Armazenamento (Secondary storage unit) Secundário ² Armazenamento barato, de alta capacidade e longa duração ² Armazenamento de programas inativos 31 rangel@dsc. ufcg. edu. br
1. 4 Evolução dos Sistemas Operacionais ± Processamento processing) por Lotes (Batch ° Apenas um serviço (job) ou uma tarefa (task) por vez ± Sistemas Operacionais ° Gestão de transições entre serviços/ tarefas ° Throughput incrementada ² Quantidade de trabalho processada por computadores 32 rangel@dsc. ufcg. edu. br
1. 4 Evolução dos Sistemas Operacionais ± Multiprogramação ° Compartilhamento de recursos computacionais por vários serviços ou tarefas ± Compartilhamento (Timesharing) de Tempo ° Execução de diversos serviços, com a UCP alternando-se entre eles tão freqüentemente que os usuários podem interagir com cada programa durante sua execução. 33 rangel@dsc. ufcg. edu. br
1. 5 Computação Pessoal, Distribuída e Cliente/Servidor ± Computação Pessoal ° Econômica individual o bastante para uso ± Computação Distribuída ° Processamento da informação através de redes de computadores ± Computação Cliente/Servidor ° Compartilhamento da informação ao longo de redes de computadores entre servidores e clientes de arquivos (computadores pessoais) 34 rangel@dsc. ufcg. edu. br
1. 6 Linguagens de Máquina, de Montagem e de Alto Nível ± Tipos de Linguagens de Programação ° Linguagens de Máquina ² Seqüências de números relativas a instruções de máquina específicas ² Exemplo: +1300042774 +1400593419 +1200274027 35 rangel@dsc. ufcg. edu. br
1. 6 Linguagens de Máquina, de Montagem e de Alto Nível ± Tipos de Linguagens de Programação ° Linguagens de Montagem (Assembly) ² Instruções computacionais formuladas a partir de termos ingleses abreviados, representando operações elementares, traduzidas a partir de montadores (assemblers) ² Exemplo: LOAD A ADD B STORE (A+B) 36 rangel@dsc. ufcg. edu. br
1. 6 Linguagens de Máquina, de Montagem e de Alto Nível ± Tipos de Linguagens de Programação ° Linguagens de Alto Nível ² Códigos similares ao inglês cotidiano ² Uso de notações matemáticas (traduzidas via compiladores) ² Exemplo: Bruto = Líquido + Descontos Área = (Base * Altura)/2 37 rangel@dsc. ufcg. edu. br
1. 7 Histórico da Linguagem C ± Linguagem C ° Desenvolvida por Ritchie, a partir de duas linguagens de programação antecessoras: BCPL e B ° Uso no desenvolvimento do UNIX ° Emprego na codificação de sistemas operacionais modernos ° Independência de hardware (portável) ° "C Tradicional" C desenvolvido no final da década de 70 38 rangel@dsc. ufcg. edu. br
1. 7 Histórico da Linguagem C ± Padronização da Linguagem C ° Motivação: Incompatibilidade entre diversas variantes existentes de C ° Formação de um comitê da ANSI para a definição de uma linguagem "isenta de ambigüidades e independente de máquina" ° Criação do C padrão em 1989 ° Atualização da linguagem em 1999 39 rangel@dsc. ufcg. edu. br
1. 8 A Biblioteca Padrão de C em C denominados funções ± Programas módulos ° Possibilidade de criação de funções específicas pelo programador ² Vantagem ³ ² Conhecimento exato comportamento das funções do Desvantagem ³ Dispêndio de desenvolvimento específicas tempo no de funções 40 rangel@dsc. ufcg. edu. br
1. 8 A Biblioteca Padrão de C ± Programas em C módulos denominados funções ° Uso freqüente das funções ba biblioteca de C por programadores ² ° Uso como “blocos” para a construção de aplicações próprias Reuso evita a “reinvenção da roda” ² Uso de funções existentes é, em geral, melhor do que a reescrita de código com o mesmo propósito ² Funções da biblioteca foram cuidadosamente desenvolvidas para uso eficiente e portabilidade 41 rangel@dsc. ufcg. edu. br
1. 9 Tendências de Desenvolvimento de Software: Tecnologia de OBJETOS ± Objetos ° Componentes reusáveis de software que modelam itens do mundo real ° Unidades significativas de software ° ² Objetos de dados, tempo, pagamento, áudio, vídeo, arquivos, etc. ² Qualquer nome pode ser representado como um objeto comportamento bem definido Maior capacidade de reuso 42 rangel@dsc. ufcg. edu. br
1. 9 Tendências de Desenvolvimento de Software: Tecnologia de OBJETOS ± Objetos ° Maior compreensibilidade, melhor organização, maior facilidade de manutenção do que a programação baseada em procedimentos (procedural) ° Favorescimento à modularidade 43 rangel@dsc. ufcg. edu. br
1. 10 C e C++ ± C++ ° ° ° Superconjunto de C, desenvolvido por Bjarne Stroustrup no Bell Labs “Extende" C, oferecendo facilidades de orientação a objetos Poder do projeto orientado a objetos ² ° Produtividade incrementada de 10 a 100 vezes Linguagem dominante na indústria e em academias 44 rangel@dsc. ufcg. edu. br
1. 10 C e C++ ± Aprendizado de C++ ° ° Uma vez que C++ abrange C, se afigura indispensável o domínio de C para um aprendizado efetivo de C++ Vide Capítulo 15 (introdução ao C++) 45 rangel@dsc. ufcg. edu. br
1. 11 JAVA ± Uso de Java ° Criação de páginas Web com conteúdo dinâmico e interativo ° Desenvolvimento de aplicações empresariais em larga escala ° Incrementação da funcionalidade de servidores Web ° Desenvolvimento de aplicações para dispositivos tais como telefones celulares, pagers e assistentes digitais pessoais (PDA) 46 rangel@dsc. ufcg. edu. br
1. 12 Outras Linguagens de Alto Nível ± FORTRAN ° Uso em aplicações de engenharia e aplicações científicas ± COBOL ° Uso para a manipulação de grandes quantidades de dados ± Pascal ° Uso acadêmico 47 rangel@dsc. ufcg. edu. br
1. 13 Programação Estruturada ± Programação Estruturada ° Abordagem com regras bem definidas para a escrita de programas ° Clareza, facilidade de teste e depuração e facilidade de alteração do código ± Multi-tarefas ° Especificação atividades paralelamente de são que diversas executadas 48 rangel@dsc. ufcg. edu. br
1. 14 Ambiente Típico de Desenvolvimento de Programas em C ± Fases de Programas Editor em C/C++ ° Edição ° Préprocessamento ° Compilação ° Linkagem ° Carregamento ° Execução Pré-processador Compilador Linker Disco O programa é criado no editor e armazenado em disco. Disco O programa préprocessador processa o código. Disco O compilador cria o código-objeto e o armazena em disco. Disco O linker faz o link do código-objeto com as bibliotecas. Memória Primária Carregador Disco UCP O carregador transfere o programa para a memória. Memória Primária. A UCP recupera cada instrução e a executa, armazenando (quando possível) novos valores de dados à medida que o programa é executado. 49 rangel@dsc. ufcg. edu. br
1. 15 Tendências de Hardware ± Características que, grosso modo, duplicam a cada um ou dois anos: ° Quantidade programas) ° Quantidade de meio de armazenamento secundário (e. g. disco rígido) ² ° de memória (execução de Armazenamento de longa duração de programas e dados Rapidez do Processador ² Velocidade com que os computadores executam os programas 50 rangel@dsc. ufcg. edu. br
± Facilidades da Internet 1. 16 INTERNE T ° Comunicação rápida e fácil via e-mail ° Conexão de computadores via rede internacional ± Chaveamento de Pacotes ° Transferência de dados digitais via unidades denominadas pacotes (packets) ° Possibilidade de envio e recepção simultânea de dados por múltiplos usuários 51 rangel@dsc. ufcg. edu. br
1. 16 INTERNE T ± Descentralização do Controle ° Possibilidade de operação de outras partes da rede caso uma parte da Internet apresente falhas ± Largura de Faixa ° Capacidade de transferência da informação exibida pelas linhas ou meios de comunicações 52 rangel@dsc. ufcg. edu. br
1. 17 WEB ± “Teia Global” (World Wide Web) ° Localização/Visualização de documentos multimídia de quase toda a espécie ° Acesso instantâneo e adequado à informação existente nas mais diversas partes do mundo ° Possibilidade de divulgação em nível mundial de negócios realizados por indivíduos e pequenas empresas ° Alteração dos modos de realização de negócios (E-commerce) 53 rangel@dsc. ufcg. edu. br
/* Programa que executa a soma de dois inteiros */ #include <stdio. h> /* início da função main */ int main() { inteiro 1; /*variável que contém a primeira parcela da soma */ inteiro 2; /* variável que contém a segunda parcela da soma */ int soma; /* variável na qual será armazenado o resultado da soma */ printf(“Digite o primeiro inteiro: n"); /*preparação para o recebimento do primeiro número inteiro */ scanf( "%d", &inteiro 1 ); /* leitura do primeiro número */ printf(“Digite o segundo inteiro: n"); /* preparação para o recebimento do segundo número inteiro*/ scanf( "%d", &inteiro 2 ); /* leitura do primeiro número */ soma = inteiro 1 + inteiro 2; /* realização da soma dos 2 inteiros digitados pelo usuário */ printf( “A soma eh igual a %dn", soma ); /* impressão da soma */ return 0; /* indicação de que o programa encerrou satisfatoriamente */ } /* fim da função main */ 54 rangel@dsc. ufcg. edu. br
José Eustáquio Rangel de Queiroz Joseluce de Farias Cunha Roberto Medeiros de Faria UNIVERSIDADE FEDERAL DE CAMPINA GRANDE CENTRO DE ENGENHARIA ELÉTRICA E INFORMÁTICA CEEI DSC rangel@dsc. ufcg. edu. br DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO
- Energyprof
- Metarteriolas
- Eustquio
- Eustquio
- Eustquio
- Erica bezerra queiroz ribeiro
- Dra mary queiroz
- Queiroz galvão ramal do apodi
- Luiz vicente de souza queiroz
- Podemos verificar que o realismo revela
- Pgqp como funciona
- Karoline almeida rangel
- Abdon rangel
- Mario gabriel rangel vargas
- Nucleo universitario rafael rangel
- Jos de blok salaris
- Precizeaza tipul fiecarui enunt de mai jos
- Jos r
- Jos 1 9
- Jos 1:9
- Luis jos gallego
- "k . p . k"
- Tipos de jos
- Completează propozițiile cu predicatele potrivite
- Afstand drafbalken
- Jos van berkum
- Olanda monarhie
- Jos van den enden
- Još hrvatska ni propala tekst
- Jos van winsen
- Jos app
- Još hrvatska ni propala tekst
- Jos r
- Alisteinen sivulause
- Jos t
- Maria jos
- L calvo
- Citiți cu atenție textul de mai jos
- Budnica još hrvatska ni propala
- Jos operating system
- Jos kuilboer
- Jos i
- Urechi jos implantate
- Umna mapa hrvatski narodni preporod
- Jos verlinden
- Rotunjiti la sute de mii numarul natural n
- Grupo 5 integrantes
- Jos dobber
- Urechi jos implantate
- Aria dreptunghiului
- Jos oostveen
- Jos t
- Samobor je lepa varoš tekst
- Jostabes confituur
- Wayfaring stranger 1917 scene
- Jos jaspars