A disciplina Algoritmos e Programação II tem como objetivo ampliar e consolidar os conhecimentos de programação desenvolvidos na disciplina de Algoritmos e Programação I, proporcionando ao estudante condições para desenvolver soluções computacionais mais estruturadas, modulares e capazes de manipular diferentes formas de representação e armazenamento de dados. A disciplina busca estabelecer uma relação contínua entre os conceitos teóricos e sua aplicação prática, favorecendo a aprendizagem por meio da resolução de problemas e do desenvolvimento de programas.
Como objetivo geral, pretende-se desenvolver a capacidade do estudante de analisar problemas computacionais e implementar soluções utilizando recursos avançados de programação, com ênfase em funções, recursão, ponteiros, estruturas de dados heterogêneas, arquivos, caracteres e strings.
Como objetivos específicos, espera-se que o estudante seja capaz de utilizar funções para organizar e modularizar programas; compreender e aplicar conceitos de recursão; declarar, inicializar e utilizar ponteiros, inclusive na passagem de argumentos para funções; utilizar registros para representar dados estruturados; desenvolver aplicações capazes de criar, ler, escrever e manipular arquivos; utilizar bibliotecas e funções para tratamento de caracteres e strings; e integrar esses conhecimentos no desenvolvimento de uma aplicação computacional.
Ao final da disciplina, espera-se que o estudante consiga desenvolver programas de maior complexidade, empregando diferentes mecanismos de programação de maneira integrada e organizada.