Nome da Atividade
				PROGRAMAÇÃO DE COMPUTADORES
				CÓDIGO
				22000296
				Carga Horária
				60 horas
				Tipo de Atividade
				DISCIPLINA
				Periodicidade
				Semestral
				Unidade responsável
				
CRÉDITOS
4
CARGA HORÁRIA TEÓRICA
2
CARGA HORÁRIA PRÁTICA
2
CARGA HORÁRIA OBRIGATÓRIA
4
FREQUÊNCIA APROVAÇÃO
75%
NOTA MÉDIA APROVAÇÃO
7
			Ementa
Estudo completo de uma linguagem de programação sequencial: estrutura de um programa, tipos, tipos estruturados e ponteiros, declarações, comandos, subprogramas, entrada e saída, algoritmos com matrizes, uso de arquivos.
Alocação dinâmica e estruturas de dados lineares. Técnicas e ferramentas para desenvolvimento de programas. Estilo de codificação: documentação do código, declaração de dados, construção de instrução.
					Alocação dinâmica e estruturas de dados lineares. Técnicas e ferramentas para desenvolvimento de programas. Estilo de codificação: documentação do código, declaração de dados, construção de instrução.
Objetivos
Objetivo Geral:
Proporcionar o estudo completo de uma linguagem de programação para o paradigma procedural (sequencial), exercitando as questões fundamentais decorrentes, tais como a modularização, os tipos de passagem de parâmetros etc. Consolidar o conhecimento do referido paradigma de programação e de uma linguagem que seja representativa deste paradigma. Consolidar na prática e ampliar os conhecimentos de lógica de programação, adquiridos em disciplina anteriorConteúdo Programático
1. Ferramentas para o desenvolvimento de programas: editor, compilador, depurador, ambientes de desenvolvimento;
2. Estilos de Codificação: documentação do código, declaração de dados, construção de instrução;
3. Introdução à Linguagem C: características da linguagem C. A Sintaxe de C:
identificadores, tipos básicos, variáveis: declarações e inicializações, constantes,
operadores, ordem de Precedência, expressões: ordem de avaliação. Estrutura de
um Programa em C. Funções Básicas da Biblioteca C: printf(), scanf(), getchar(),
putchar();
4. Comandos de Controle de Fluxo de um Programa: verdadeiro e falso em C,
comandos de seleção: if, ifs aninhados, a escada if-else-if, a expressão condicional
switch; comandos de iteração: o laço for e o laço while; comandos de expressões;
blocos de comandos;
5. Matrizes e Cadeias de Caracteres (strings): matrizes unidimensionais e matrizes
bidimensionais: declaração, limites, inicialização de matrizes; caracteres e strings:
manipulação e principais funções;
6. Ponteiros: conceito de ponteiros e utilidade, operadores para ponteiros,
declaração de variáveis tipo ponteiros, relacionamento entre ponteiros e memória,
expressões com ponteiros, manipulando matrizes com ponteiros;
7. Funções: a forma geral de uma função; regras de escopo de funções;
argumentos de funções (parâmetros formais): chamada por valor, chamada por
referência; o comando return; funções que devolvem valores não-inteiros; protótipos
de funções; retornando ponteiros; funções tipo void; argc e argv: argumentos para
main(); recursão; questões sobre implementação;
8. Estruturas: estruturas, matrizes de estruturas, passando estruturas para funções,
ponteiros para estruturas, matrizes e estruturas dentro de estruturas, campos de
bits, uniões, enumerações, usando sizeof para assegurar portabilidade, typedef;
9. Manipulação de arquivos: E/S ANSI versus E/S UNIX, E/S em C versus E/S em C++, streams e arquivos, streams, arquivos, fundamentos do sistema de arquivos, as streams padrão, o sistema de arquivo tipo UNIX;
10. Noções de estruturas de dados: introdução, estruturas auto-referenciadas, alocação dinâmica da memória, listas encadeadas;
11. Armazenamento e Manipulação de Matrizes Esparsas.
					2. Estilos de Codificação: documentação do código, declaração de dados, construção de instrução;
3. Introdução à Linguagem C: características da linguagem C. A Sintaxe de C:
identificadores, tipos básicos, variáveis: declarações e inicializações, constantes,
operadores, ordem de Precedência, expressões: ordem de avaliação. Estrutura de
um Programa em C. Funções Básicas da Biblioteca C: printf(), scanf(), getchar(),
putchar();
4. Comandos de Controle de Fluxo de um Programa: verdadeiro e falso em C,
comandos de seleção: if, ifs aninhados, a escada if-else-if, a expressão condicional
switch; comandos de iteração: o laço for e o laço while; comandos de expressões;
blocos de comandos;
5. Matrizes e Cadeias de Caracteres (strings): matrizes unidimensionais e matrizes
bidimensionais: declaração, limites, inicialização de matrizes; caracteres e strings:
manipulação e principais funções;
6. Ponteiros: conceito de ponteiros e utilidade, operadores para ponteiros,
declaração de variáveis tipo ponteiros, relacionamento entre ponteiros e memória,
expressões com ponteiros, manipulando matrizes com ponteiros;
7. Funções: a forma geral de uma função; regras de escopo de funções;
argumentos de funções (parâmetros formais): chamada por valor, chamada por
referência; o comando return; funções que devolvem valores não-inteiros; protótipos
de funções; retornando ponteiros; funções tipo void; argc e argv: argumentos para
main(); recursão; questões sobre implementação;
8. Estruturas: estruturas, matrizes de estruturas, passando estruturas para funções,
ponteiros para estruturas, matrizes e estruturas dentro de estruturas, campos de
bits, uniões, enumerações, usando sizeof para assegurar portabilidade, typedef;
9. Manipulação de arquivos: E/S ANSI versus E/S UNIX, E/S em C versus E/S em C++, streams e arquivos, streams, arquivos, fundamentos do sistema de arquivos, as streams padrão, o sistema de arquivo tipo UNIX;
10. Noções de estruturas de dados: introdução, estruturas auto-referenciadas, alocação dinâmica da memória, listas encadeadas;
11. Armazenamento e Manipulação de Matrizes Esparsas.
Bibliografia
Bibliografia Básica:
- DEITEL, Harvey M. Java: como programar. 6. ed. São Paulo: Prentice Hall, 2005. 1110 p. ISBN 9788576050193
 - Stroustrup, B. Princípios e Práticas de Programação com C++. Porto Alegre: Bookman. 1244 p. ISBN: 9788577809585
 
Bibliografia Complementar:
- HORSTMANN, Cay. Big Java. Porto Alegre: Bookman, 2004. 1125 p. ISBN 853630345X
 - HANLY, Jeri R. Essential C++ for engineers and scientists. 2. ed. Boston: Addison Wesley, 2002. 534 p. ISBN 0201741253
 - ASCENCIO, Ana Fernanda Gomes. Fundamentos da programação de computadores : algoritmos, Pascal e C/C++. São Paulo:Pearson Prentice Hall, 2005. 355 p. ISBN 8587918362
 - COLEMAN, Derek et al. Desenvolvimento orientado a objetos: o método fusion. Rio de Janeiro: Campus, 1996. 389 p. ISBN8535200762
 - BOOCH, Grady. Object - oriented analysis and design with applications. 2. ed. Reading: Addison-Wesley, 1994. 589 p.(Addison-Wesley’s Series in Object-Oriented Software Engineering) ISBN 0805353402
 - MEYER, Bertrand. Object-oriented software construction. 2. ed. New Jersey: Prentice Hall, 1997. 1254 p. ISBN 0136291554
 
Turmas Ofertadas
| Turma | Período | Vagas | Matriculados | Curso / Horários | Professores | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| M3 | 2025 / 2 | 22 | 21 | 
Ciência da Computação (Bacharelado) Engenharia de Computação (Bacharelado) Engenharia Industrial Madeireira (Bacharelado)  Horários 					
  | 
					
ADRIANA BORDINI Professor responsável pela turma  | 
				||||||
| M30 | 2025 / 2 | 22 | 8 | 
Engenharia de Controle e Automação (Bacharelado)  Horários 					
  | 
					
DANIEL MUNARI VILCHEZ PALOMINO Professor responsável pela turma  | 
				||||||
| M31 | 2025 / 2 | 20 | 8 | 
Engenharia Eletrônica (Bacharelado)  Horários 					
  | 
					
CHRISTIANO MARTINO OTERO AVILA Professor responsável pela turma  | 
				||||||
| M4 | 2025 / 2 | 20 | 20 | 
Engenharia de Computação (Bacharelado)  Horários 					
  | 
					
ADRIANA BORDINI Professor responsável pela turma  | 
				||||||
| M5 | 2025 / 2 | 20 | 15 | 
Engenharia de Computação (Bacharelado)  Horários 					
  | 
					
ADRIANA BORDINI Professor responsável pela turma  | 
				||||||
| M1 | 2025 / 2 | 23 | 23 | 
Ciência da Computação (Bacharelado)  Horários 					
  | 
					
MARILTON SANCHOTENE DE AGUIAR Professor responsável pela turma  | 
				||||||
| M2 | 2025 / 2 | 23 | 23 | 
Ciência da Computação (Bacharelado)  Horários 					
  | 
					
MARILTON SANCHOTENE DE AGUIAR Professor responsável pela turma  |