Programas de computadores (software) são conjuntos de instruções escritos através de uma linguagem de programação, que serão executadas ou interpretadas por um processador ou máquina virtual para realização de uma determinada tarefa.
Como exemplo de algumas funcionalidades básicas que programas devem realizar podemos citar:
- entrada de dados: receber dados do teclado, de arquivos ou de algum outro dispositivo de entrada;
- saída de dados: o programa deve mostrar dados na tela (imprimir) ou enviar dados para um arquivo ou algum outro dispositivo de saída;
- realizar cálculos: um programa deve executar operações matemáticas, como adição, divisão, subtração e multiplicação;
- executar comandos condicionais: um programa deve poder executar certos trechos do código apenas se eles se adequarem a determinadas condições descritas também no código;
- repetição: um programa deve poder executar determinadas ações repetidamente, podendo também aplicar variações às ações executadas.