Programação I (INF15927)
Objetivo
Aprender os conceitos básicos de programação, usando como ferramenta uma linguagem de programação pertencente ao paradigma procedural.
Ementa
Introdução à construção de algoritmos imperativos. Tipos de dados elementares e declaração de variáveis simples. Expressões aritméticas e lógicas. Controle de fluxo: execução sequencial, comandos de decisão e de repetição. Variáveis compostas homogêneas uni- e multidimensionais (vetores e matrizes) com alocação estática. Variáveis compostas heterogêneas (registros ou structs) com alocação estática. Introdução à modularização de programas: princípios básicos de declaração/uso de funções e passagem de parâmetros. Princípios de interface humano-computador: entrada e saída padrão, manipulação básica de arquivos. Introdução às ferramentas de desenvolvimento e técnicas de detecção de erro. Estudo de uma linguagem de programação procedural.
Conteúdo Programático
- Introdução (3h)
- Introdução ao computador
- Introdução aos programas e algoritmos
- O que são linguagens de programação
- Por que saber programar
- Representação de algoritmos
- Conceitos básicos (6h)
- Ambiente de programação
- Primeiro programa em C
- Variáveis
- Tipos de dados
- Operadores aritméticos
- Entrada e saída de dados: printf e scanf
- Lógica booleana
- Operadores lógicos
- Controle de fluxo (16h)
- Estruturas de seleção - If, If/Else e Switch
- Estruturas de repetição - While, for, break e continue
- Funções (8h)
- Declaração e uso
- Passagem de parâmetros
- Retorno de funções
- Escopo de variáveis e variáveis globais
- Tipos de dados compostos (16h)
- Vetores
- Strings
- Matrizes
- Structs
- Manipulação de arquivos (4h)
- Leitura de arquivos
- Escrita de arquivos
- Bibliotecas externas (4h)
- O uso de bibliotecas externas
- A criação de bibliotecas externas
- Introdução a ordenação (3h)
- Algoritmo de ordenação Bubble Sort