ÍNDICE
INTRODUÇÃO ............................................................................................................................ 1
METODOLOGIA ......................................................................................................................... 1
OBUJECTIVOS DE TRABALHO ............................................................................................... 1
PROGRAMAÇÃO ........................................................................................................................ 2
CONCEITOS BASICOS .............................................................................................................. 3
ALGORITMO ............................................................................................................................... 4
LINGUAGEM............................................................................................................................... 4
SISTEMA INFORMATICO ....................................................................................................... 10
AMBIENTE DE PROGRAMAÇÃO .......................................................................................... 13
ALGORITIMOS ......................................................................................................................... 15
CONCEITO................................................................................................................................. 15
CONSTRUÇÃO DE UM ALGORITIMO .................................................................................. 16
VARIAVEIS ............................................................................................................................... 17
TIPOS DE VARIÁVEIS ............................................................................................................. 17
CONCLUSÃO ............................................................................................................................ 18
REFERÊNCIAS .......................................................................................................................... 19
0
INTRODUÇÃO
O prsente trabalho é sobre dizer qual é o assunto, mas concretamente referir a
um breve apanhado dos subtemas tratados nos temas.
Esta organizado e duas partes nais quais centraremos a nossa atensão e especificar a
cada tema abordado sucessivamente.
METODOLOGIA
A metodologia usada foi a pesquisa bibliografica, enriquecida com alguns sits da
web e pdfs.
OBUJECTIVOS DE TRABALHO
O presente trabalho tem como objetivo:
Fazer uma pesquisa minuciosa dos temas abordados;
Procurar transmitir de uma boa foma a informacao nela contida.
1
PROGRAMAÇÃO
Introdução a Programação é o modo como se escreve um programa de
computador, um algoritmo. Um algoritmo é uma sequência de passos para se executar
uma função. Um exemplo de algoritmo, fora da computação, é uma receita de bolo. E
assim como uma receita, tudo precisa ser seguido para o código funcionar.
É o processo de escrita, teste e manutenção de um programa de computador. O programa
é escrito em uma linguagem de programação, embora seja possível, com alguma
dificuldade, o escrever diretamente em linguagem de máquina. Diferentes partes de um
programa podem ser escritas em diferentes linguagens.
Diferentes linguagens de programação funcionam de diferentes modos. Por esse motivo,
os programadores podem criar programas muito diferentes para diferentes linguagens;
muito embora, teoricamente, a maioria das linguagens possa ser usada para criar qualquer
programa.
Há várias décadas se debate se a programação é mais semelhante a uma arte (Donald
Knuth), a uma ciência, à matemática (Edsger Dijkstra), à engenharia (David Parnas), ou
se é um campo completamente novo.
A linguagem de programação é um método padronizado, formado por um
conjunto de regras sintáticas e semânticas, de implementação de um código fonte - que
pode ser compilado e transformado em um programa de computador,[1] ou usado
como script interpretado - que informará instruções de processamento
ao computador.[2][Nota 1] Permite que um programador especifique precisamente quais os
dados que o computador irá atuar, como estes dados serão armazenados ou transmitidos
e, quais ações devem ser tomadas de acordo com as circunstâncias. Linguagens de
programação podem ser usadas para expressar algoritmos com precisão.
O conjunto de palavras (lexemas classificados em tokens), compostos de acordo com
essas regras, constituem o código fonte de um software.[3] Esse código fonte é depois
traduzido para código de máquina, que é executado pelo microprocessador.
2
CONCEITOS BASICOS
Os termos básicos e os conceitos de programação são fundamentais que são comuns a
todas as linguagens de programação.
Eles incluem coisas como variáveis, loops, condicionais, funções e classes. Variáveis são
usadas para armazenar valores em um programa, enquanto loops permitem que um trecho
de código seja executado várias vezes.
Condicionais, como if/else, permitem que o programa tome decisões com base em certas
condições. Funções permitem que o programador agrupe instruções em um bloco de
código que pode ser chamado várias vezes, enquanto as classes permitem que o
programador organize o código em objetos.
É importante entender esses termos básicos de programação para poder escrever códigos
de qualidade em qualquer linguagem de programação.
3
ALGORITMO
Um algoritmo é uma sequência lógica de instruções que descreve a solução de um
problema ou tarefa. Os algoritmos são usados em programação para descrever a lógica
por trás de um programa e para resolver problemas.
Eles são compostos por uma série de passos que são executados em uma ordem específica
para alcançar um objetivo específico.
Um algoritmo pode ser escrito em várias linguagens de programação, mas o conceito é
independente da linguagem e é amplamente utilizado em ciência da computação e outras
disciplinas técnicas.
LINGUAGEM
Em programação, uma linguagem é um conjunto de regras sintáticas e semânticas que são
usadas para escrever códigos de programação.
As linguagens de programação são usadas para criar softwares, aplicativos e outros
sistemas de computador. Existem várias linguagens de programação, bem como códigos
de programação, e cada uma com suas próprias regras e características.
As linguagens de programação podem ser de baixo nível, como Assembly, ou de alto
nível, como Python ou Java.
4
Código de Máquina-O código de máquina é a linguagem de programação que é
compreendida diretamente pelo hardware do computador.
É um conjunto de instruções que são codificadas em formato binário, que consiste
em sequências de 0s e 1s.
O código de máquina é gerado a partir do processo de compilação do código fonte e é
executado diretamente pelo processador do computador.
Código Binário-O código binário é a representação da linguagem de máquina por meio
de uma sequência de 0s e 1s. Cada número binário de 0 ou 1 representa um bit, a menor
unidade de armazenamento de dados em um computador.
O código binário é o único formato que o processador do computador pode compreender
diretamente, e é a linguagem na qual todos os programas e instruções de processamento
são gravados e executados.
Bug-Bug é um termo utilizado para se referir a um erro ou falha no código de
programação. Esses erros podem ocorrer por uma variedade de razões, como uma sintaxe
incorreta, lógica inadequada ou problemas de hardware.
Os bugs podem causar uma ampla gama de problemas, desde falhas menores até falhas
críticas do sistema, como travamentos ou perda de dados.
Refatoração-Refatoração é o processo de reestruturar o código de um programa de
computador, a fim de melhorar sua qualidade, desempenho, legibilidade e facilidade de
manutenção.
Isso é feito sem alterar a funcionalidade do programa em si.
O objetivo da refatoração é melhorar a eficiência e a confiabilidade do código, permitindo
que os programadores compreendam melhor a lógica do programa, encontrem e corrijam
erros com mais facilidade e realizem futuras alterações de maneira mais rápida e segura.
5
Frameworks-Frameworks são conjuntos de bibliotecas, ferramentas e padrões de
programação que fornecem uma estrutura para desenvolver aplicativos de [Link]
oferecem uma base sólida e consistente para construir aplicativos, acelerando o processo
de desenvolvimento e garantindo que o software seja mais fácil de manter, modificar e
expandir.
Queries-Queries são comandos ou instruções utilizados em bancos de dados para acessar,
modificar e gerenciar informações.
Elas permitem que os usuários façam perguntas específicas aos bancos de dados,
recuperando dados relevantes e organizando-os de maneira eficiente.
As queries são usadas em uma ampla variedade de aplicativos, desde gerenciamento de
estoque e de clientes até análise de dados e geração de relatórios.
Backdoor-Backdoor é uma forma de acesso oculta a um sistema de computador, software
ou rede que permite que usuários autorizados possam acessá-lo sem serem detectados.
Esses acessos são normalmente criados por programadores ou administradores de
sistemas com o objetivo de facilitar a manutenção do sistema ou realizar tarefas
administrativas de forma mais eficiente.
Backup-Backup é uma cópia de segurança de dados e informações importantes que são
armazenados em um sistema de computador, rede ou servidor.
Essa cópia de segurança é usada para restaurar os dados em caso de perda ou corrupção
de arquivos, como resultado de falhas de hardware, ataques de malware ou erros
humanos.
Bit-Bit é a menor unidade de informação utilizada em sistemas de computador e redes de
comunicação. É a abreviação de "Binary Digit" (dígito binário), e representa um valor
binário de 0 ou 1.
Os bits são usados para representar dados digitais, como caracteres, imagens, sons e
vídeo, e são combinados em grupos maiores, como bytes, para formar informações mais
complexas.
6
Console-Console, em programação, é um ambiente de linha de comando usado para
interagir com um programa ou sistema operacional. O console é usado para executar
comandos e instruções, depurar programas e exibir mensagens de erro e status.
O console pode ser acessado em diferentes sistemas operacionais, como Windows,
macOS e Linux, e também pode ser usado em navegadores da web para depuração de
aplicativos da web.
Paradigma de programação-Paradigma de programação é um modelo ou estilo de
programação que define a maneira como um programa é escrito e estruturado.
Existem vários paradigmas de programação, incluindo programação imperativa,
programação orientada a objetos, programação funcional, programação lógica, entre
outros.
Cada paradigma tem suas próprias regras e abordagens para resolver problemas de
programação.
Iteração-Iteração é um conceito fundamental em programação que se refere à repetição
de uma série de instruções até que uma condição específica seja atendida.
Em outras palavras, é um processo que executa um conjunto de instruções várias vezes
até que uma condição de término seja atendida.
As instruções dentro da iteração podem ser repetidas um número fixo de vezes, ou até
que uma determinada condição seja alcançada.
Classe-Em programação orientada a objetos, uma classe é um modelo ou esboço para
criar objetos que compartilham atributos e comportamentos comuns.
Ela descreve as propriedades e métodos que um objeto específico criado a partir dessa
classe terá. As classes permitem a reutilização de código e a organização eficiente de
programas complexos.
7
Instância-Em programação orientada a objetos, uma instância é um objeto que é criado
a partir de uma classe específica.
Cada instância tem seus próprios valores exclusivos para as propriedades definidas na
classe e pode executar seus próprios métodos. Por exemplo, uma classe de carro pode ter
propriedades como modelo, ano e cor. Uma instância específica desse carro pode ter um
modelo "Civic", ano "2019" e cor "preto".
As instâncias permitem a criação de objetos que compartilham um comportamento
comum, mas que têm valores diferentes para suas propriedades. As instâncias são um
conceito fundamental em muitas linguagens de programação orientadas a objetos, como
Java, C++ e Python.
Objeto-Em programação orientada a objetos, um objeto é uma instância específica de
uma classe que tem seu próprio conjunto de valores exclusivos para as propriedades
definidas na classe e pode executar seus próprios métodos.
Um objeto é uma entidade que pode ser manipulada dentro do programa e é criado a partir
de uma classe que define suas propriedades e métodos.
Herança-Herança em programação orientada a objetos é um conceito que permite criar
uma nova classe a partir de uma classe existente, herdando todas as suas propriedades e
métodos.
A classe original é chamada de classe base ou superclasse, enquanto a nova classe é
chamada de classe derivada ou subclasse.
A herança é uma maneira de reutilizar o código existente, economizando tempo e esforço
na programação.
Polimorfismo-Polimorfismo é um conceito de programação orientada a objetos que
permite que objetos de diferentes classes sejam tratados de maneira uniforme, como se
fossem do mesmo tipo.
Isso significa que um objeto pode ser usado de várias formas diferentes, dependendo do
contexto em que é chamado.
8
O polimorfismo é alcançado através do uso de herança e interfaces, permitindo que as
classes derivadas usem métodos e propriedades de suas classes pai.
Membro de Classe-O termo "Membro de Classe" refere-se às variáveis e funções que
pertencem a uma classe e podem ser acessadas por seus objetos. Esses membros podem
ser estáticos ou dinâmicos, dependendo de como foram definidos.
Os membros estáticos pertencem à classe e não aos objetos criados a partir dela, e são
acessíveis sem a necessidade de criar um objeto. Já os membros dinâmicos são acessíveis
somente através de um objeto.
Propriedade-Uma propriedade em programação é uma característica ou atributo de um
objeto ou estrutura de dados. Em outras palavras, é uma variável associada a um objeto
que pode armazenar valores e ser usada para definir o estado do objeto.
As propriedades são geralmente definidas na declaração de uma classe e podem ser
acessadas e modificadas pelos métodos da classe ou diretamente pelo código externo que
utiliza a classe.
SuperClasse-Superclasse é uma classe que é usada como base para criar outras classes.
Essas outras classes, chamadas de subclasses, herdam características e comportamentos
da superclasse.
A ideia da superclasse é evitar que haja repetição de código, permitindo que as subclasses
reutilizem o código e adicionem suas próprias características.
SubClasse-Subclasse é uma classe que herda propriedades e comportamentos de uma
superclasse. Também pode ser chamada de classe filha ou classe derivada.
A subclasse pode adicionar novas propriedades e métodos à sua definição, além de herdar
os que já existem na superclasse.
9
Classe-Pai-"Classe-pai" é um termo comumente usado para se referir à classe base em
um relacionamento de herança em programação orientada a objetos. A classe-pai é aquela
da qual uma classe derivada herda atributos e métodos.
Ela também é chamada de superclasse ou classe base.
Em geral, a classe-pai é uma classe mais genérica que representa um conceito mais amplo,
enquanto as classes filhas são mais específicas e herdam ou estendem a funcionalidade
da classe-pai.
SISTEMA INFORMATICO
Os sistemas informáticos, em geral, são constituídos por dois tipos de componentes
fundamentais: hardware e software.
Hardware: São os dispositivos físicos (electrónicos, mecânicos e electromecânicos) que
constituem um sistema informático (computadores e outros dispositivos relacionados).
Ex: teclado, rato, placa-mãe, placa de vídeo, monitor, etc.
Software: Um computador precisa de software, isto é, de um conjunto de programas
responsáveis pelo seu próprio funcionamento e de vários outros programas de aplicação,
que nos permitem escrever textos, desenhar, ouvir música, etc. ..
Estrutura de um sistema informático
Unidade Central de
Processamento
Dispositivos de entrada Dispositivos de saida
(CPU)
(input) (output)
Memoria primaria
Dispositivos de armazenamento secundário
10
Os dados são introduzidos através dos dispositivos de entrada e enviados para a unidade
central de processamento (CPU). Após o processamento, os novos dados gerados são
enviados para os dispositivos de saída. Neste processo estão também envolvidos os
dispositivos de armazenamento de informação (memórias).
Unidade Central de Processamento: A Unidade Central de
Processamento (CPU) corresponde ao microprocessador nos computadores pessoais e
constitui o coração do computador, à volta do qual tudo o resto funciona. O tipo de
processador existente no interior de um computador determina a velocidade com que este
recebe e trata os dados e transmite as informações. A velocidade de um processador é
medida em megahertz (MHz).
Componentes do CPU:
• Unidade de controlo (UC) – determina e controla as operações a efectuar;
• Unidade aritmética e lógica (ALU) – é responsável pela execução de todas
as operações aritméticas (adição, subtração, multiplicação, etc.) e lógicas;
• Registos – componentes, que temporariamente, armazenam dados;
• Unidade de comunicação interna – permite ligar os diferentes componentes
internos do microprocessador aos componentes externos.
Memórias:
As memórias servem para armazenar temporariamente ou permanentemente, as
instruções do software com que o computador funciona, assim como os dados que vamos
introduzindo. Os sistemas informáticos necessitam de dois níveis de memória distintos:
➢ Memória principal, central ou primária
➢ Memória secundária, auxiliar ou massa
Memória principal, central ou primária
11
ROM – memória apenas de leitura utilizada para armazenar as instruções de configuração
do sistema informático, vulgarmente designadas por BIOS
RAM – é uma memória de leitura e escrita onde o acesso à
informação é feito aleatoriamente. É volátil pois perde toda a informação quando o
computador é desligado.
Memória secundária, auxiliar ou de massa
Podem ser vistas como um complemento à memória primária do computador. Servem
para guardar programas e informação com carácter permanente, ou seja, os dados não se
perdem quando se encerra o computador.
Ex.: discos rígidos, disquetes (obsoletas), discos ópticos (CD e DVD), pendrives.
➢ CD-R – suporte de armazenamento que apenas pode ser gravado uma vez
apesar de poder ser lido várias vezes.
➢ CD-RW – suporte de armazenamento que permite a gravação e regravação
de informação várias vezes.
➢ DVD-R – O DVD-R, assim como o seu antecessor CD-R, só aceita
gravação uma única vez e, após isso, seus dados não podem ser apagados.
Sua capacidade de armazenamento padrão é de 4,7 GB.
➢ DVD+R – Este tipo é equivalente ao DVD-R, inclusive na capacidade de
armazenamento, que é de 4,7 GB. O DVD+R também só pode ser gravado
uma única vez e não permite a eliminação de seus dados. O que o DVD-R
tem de diferente do DVD+R, então? Pouca coisa, sendo a principal
diferença o fato dos dados gravados em um DVD+R serem mais
rapidamente acedidos do que em um DVD-R.
A capacidade das memórias (primária ou secundária) mede-se em bytes. As medidas mais
frequentes são:
12
❖ 1 byte =8 bits
❖ 1 KB (kilobyte)=1024 bytes
❖ 1 MB (megabyte)=1024 kilobytes
❖ 1 GB(gygabyte)=1024 megabytes
❖ 1 TB(terabyte)=1024 gigabytes
Placa principal (motherboard)
É considerada o elemento mais importante do computador, pois
tem como função permitir que o processador comunique com todos os periféricos
instalados.
Os componentes essenciais da motherboard são:
❖ slots para o encaixe das placas de vídeo, som, modem, etc.
❖ conectores para o encaixe de módulos de memória e também do
processador;
❖ portas série, paralelo, USB;
❖ conectores para o teclado e fonte de alimentação;
❖ BIOS pequeno chip responsável pelo reconhecimento dos componentes de
hardware instalados;
❖ chipset comanda todo o fluxo de dados entre o processador, as memórias,
etc
Barramento (Bus)
Constituem os caminhos por onde a informação circula entre os diversos componentes do
processador e entre o processador e o computador (memória e periféricos
AMBIENTE DE PROGRAMAÇÃO
Um ambiente de programação é um conjunto de feramentas usadas no desenvolvimento
de software.
Freamentas necessarias
13
➢ Editores de texto para escrita de programas fonte.
➢ Compiladores ou interpretadpres para a obtenção de programas objecto.
➢ Ligadores e carregadores de codigos para a obtenção de programas executaveis.
Feramentas uteis
➢ Depuradores de codigos.
➢ Visualizadores de programas.
➢ Feramentas de auxilio sintactico ou Semanticos.
➢ Geradores de codigos, a exemplos de geradores de interfaces graficas.
➢ Interpretadores passo a passo.
Um ambiente de programação ou anbiente integrado de desenvolvimento, conhecido
pela sigla IDE (em inglês), é um conjunto de ferramentas que trabalham de forma
integrada para desenvolver programas. Normalmente, uma IDE é composta de:
❖ Editor de Programas
❖ Compilador
❖ Linker
❖ Loader
❖ Depurador
Cada um destes componentes de uma IDE tem uma função bem definida, como veremos.
❖ Editor de Programas: é um editor de texto construído especialmente para
facilitar a edição de um programa usando linguagem de programação. Um
bom editor é capaz de indicar erros no programa antes mesmo do programa
ser compilado.
❖ Compilador: Tem como principal função fazer a tradução do código fonte
em um formato que o computador pode entender. Este formato é chamado
de código objeto.
❖ Linker ou linkeditor: Liga o código objeto às bibliotecas e transforma
tudo isso em um único programa executável.
❖ Loader ou carregador: Carrega o executável na memória para que a CPU
possa executar o programa. É interessante que uma IDE possua esse
recurso para agilizar o trabalho.
14
❖ Depurador: Ajuda o programador na verificação e correção de erros.
ALGORITIMOS
Um algoritmo é uma sequência lógica finita de passos para realizar uma tarefa ou
resolver um problema. Em nosso dia a dia utilizamos algoritmos para realizar nossas
atividades, definindo a sequência de atividades que devemos fazer para atingir um
objetivo. Um exemplo simples é uma receita. Um algoritmo é, num certo sentido, um
programa abstrato dizendo de outra forma, um programa é um algoritmo concretizado.
Os programas são visualizados mais facilmente como uma coleção de algoritmos menores
combinados de um modo único da mesma forma que uma casa é construída a partir
de componentes.[1]
Dessa forma, um algoritmo é uma descrição passo a passo de como o computador irá
executar uma operação específica, como, por exemplo, uma ordenação. Um programa,
por outro lado, é uma entidade que na verdade implementa uma ou mais operações de
forma que seja útil para as pessoas que o utilizam.
CONCEITO
Conceito de algoritmo existe há séculos e o uso do conceito pode ser atribuído a
matemáticos russos, por exemplo a Peneira de Eratóstenes e o algoritmo de Euclides.
O conceito de algoritmo é frequentemente ilustrado pelo exemplo de uma receita
culinária, embora muitos algoritmos sejam mais complexos. Eles podem repetir passos
(fazer iterações) ou necessitar de decisões (tais como comparações ou lógica) até que a
tarefa seja completada. Um algoritmo corretamente executado não irá resolver um
problema se estiver implementado incorretamente ou se não for apropriado ao problema.
Um algoritmo não representa, necessariamente, um programa de computador, e sim os
passos necessários para realizar uma tarefa. Sua implementação pode ser feita por
um computador, por outro tipo de autômato ou mesmo por um ser humano. Diferentes
algoritmos podem realizar a mesma tarefa usando um conjunto diferenciado de instruções
em mais ou menos tempo, espaço ou esforço do que outros. Tal diferença pode ser reflexo
da complexidade computacional aplicada, que depende de estruturas de dados adequadas
ao algoritmo. Por exemplo, um algoritmo para se vestir pode especificar que você vista
primeiro as meias e os sapatos antes de vestir a calça enquanto outro algoritmo especifica
que você deve primeiro vestir a calça e depois as meias e os sapatos. Fica claro que o
primeiro algoritmo é mais difícil de executar que o segundo apesar de ambos levarem ao
mesmo resultado.
15
O conceito de um algoritmo foi formalizado em 1936 pela Máquina de Turing de Alan
Turing e pelo cálculo lambda de Alonzo Church, que formaram as primeiras fundações
da Ciência da computação.
CONSTRUÇÃO DE UM ALGORITIMO
Algoritmo é uma sequência de regras, raciocínios ou operações que permite solucionar
um conjunto de problemas ou exercícios semelhantes.
É muito comum utilizarmos algoritmos na resolução de problemas matemáticos e em
lógica de programação.Já deve ter se deparado com vários problemas matemáticos bem
parecidos, e muitas vezes utiliza a mesma linha de raciocínio ou passo a passo para
resolvê-[Link] você faz isso, é possível que tenha seu próprio algoritmo para a resolução
desses problemas.
O algoritmo pode te ajudar a resolver mais facilmente um modelo de exercício ou
problema. Não estamos falando apenas a respeito de matemática, uma vez que você pode
criar algoritmos para resolver qualquer tipo de problema.
CONSTRUÇÃO DE UM ALGORITMO
111. Ler atentamente o enunciado: Leia atentamente o enunciado do problema quantas
vezes for necessário, até compreendê-lo completamente.
222. Coletar os dados: Anote as informações relevantes do problema e a questão a ser
resolvida.
333. Defina um procedimento: Uma vez coletados os dados e compreendido o
problema, é hora de escolher uma estratégia de resolução. Isso pode ser muito pessoal, de
acordo com a sua facilidade.
444. Resolva o problema: Momento de resolução do problema e validação do resultado
obtido.
555. Localize problemas similares: Encontre problemas parecidos e veja se a estratégia
criada se aplica a esse tipo de problema.
666. Criar um passo a passo: Uma vez criado o passo a passo você tem um algoritmo
para resolução desse tipo de problema.
16
VARIAVEIS
Um algoritmo representa uma solução para um problema no mundo real escrito
em linguagem que o computador compreende. Com esse mesmo pensamento, podemos
entender que cada item tratado nesse problema pode ser representado por uma variável.
As variáveis são elementos básicos na programação, pois são aquelas que armazenam os
dados que precisamos no nosso algoritmo. Cada dado pode ser de um tipo diferente e, por
isso precisamos mostrar ao nosso algoritmo logo no início o que esperar armazenar.
Imagine, por exemplo, que precisamos separar roupas do vestuário de acordo com o seu
tipo dentro de um armário. Esse é quem arruma a bagunça, por isso o consideramos nosso
algoritmo.
Uma variável é um espaço na memória do computador destinado a um dado que é alterado
durante a execução do algoritmo. Para funcionar corretamente, as variáveis precisam ser
definidas por nomes e tipos.
TIPOS DE VARIÁVEIS
❖ int: Variável número do tipo inteiro, positivo ou negativo.
❖ float: Variável numérica do tipo decimal.
❖ double: Variável numérica do tipo decimal de precisão dupla.
❖ char: Variável que representa um caractere do tipo texto
17
CONCLUSÃO
Conclui-se que Introdução a Programação é o modo como se escreve um
programa de computador, um algoritmo. Um algoritmo é uma sequência de passos para
se executar uma função. Um exemplo de algoritmo, fora da computação, é uma receita de
bolo. E assim como uma receita, tudo precisa ser seguido para o código funcionar.
É o processo de escrita, teste e manutenção de um programa de computador. O programa
é escrito em uma linguagem de programação, embora seja possível, com alguma
dificuldade, o escrever diretamente em linguagem de máquina. Diferentes partes de um
programa podem ser escritas em diferentes linguagens.
Diferentes linguagens de programação funcionam de diferentes modos. Por esse motivo,
os programadores podem criar programas muito diferentes para diferentes linguagens;
muito embora, teoricamente, a maioria das linguagens possa ser usada para criar qualquer
programa.
18
REFERÊNCIAS
DASGUPTA, SANJOY; PAPADIMITRIOU, CHRISTOS; VAZIRANI, UMESH. Algoritmos.
Porto Alegre: AMGH, 2010.
Algoritmos e Programação - Teoria e Prática: para universitários e profissionais de
informática: Novatec Editora. ISBN 85-7522-073-X
Donald E. Knuth (1973) The Art of Computer Programming, Volume 1: Fundamental
Algorithms (2ª edição). Addison-Wesley, ISBN 0-201-03809-9 (em inglês)
↑ CHARLES E. LEISERSON, Thomas H. Cormen, RONALD L. RIVEST,
CLIFFORD STEIN , Algoritmos: teoria e prática , CAMPUS - RJ, 2002 ISBN
8-535-20926-3
Donald E. Knuth, Selected Papers on Analysis of Algorithms ISBN 1-57586-212-
3 Livro (em inglês)
↑ Jean Luc Chabert, A History of Algorithms: From the Pebble to the Microchip.
Springer Verlag, 1999. ISBN 978-3-540-63369-3. (em inglês)
↑ Algorithmics: The Spirit of Computing. Addison-Wesley. 2004. ISBN 978-0-321-
11784-7. (em inglês)
T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein, Introduction to Algorithms, 3rd
edition, MIT Press, 2009 ISBN 978-026-203-384-8 (em inglês)
Donald E. Knuth, The Art of Computer Programming
↑ Jon Kleinberg, Éva Tardos, Algorithm Design, Addison-Wesley, 2005 ISBN 0-321-
29535-8 (em inglês) Livro
Sanjoy Dasgupta, Christos Papadimitriou, Umesh Vazirani, Algorithms
Richard E. Neapolitan, Kumarss Naimipour , Foundations of Algorithms Using Java
Pseudocode , Jones & Bartlett Learning, 2004 ISBN 0-763-72129-8 (em inglês)
↑ Laira Vieira Toscani, Paulo A. S. Veloso, Complexidade de Algoritmos: Série
Livros Didáticos Informática UFRGS - Vol. 13 , Bookman ISBN 8-540-70139-1
RICARDO LINDEN , Algoritmos Genéticos (2a edição) , Brasport ISBN 8-574-
52373-9
↑ Jesús Bisbal Riera, Manual de Algorítmica: Recursividad, complejidad y diseño de
algoritmos, Editorial UOC, 2009 ISBN 8-497-88027-7 (em castelhano)
19
Gilberto Farias de Sousa Filho, Eduardo de Santana Medeiros Alexandre, Introdução
a Computação - 2ª edição. João Pessoa: Editora da UFPB, 2014. ISBN:978-85-237-
0892-4ZIVIANI, NIVIO. Projeto de algoritmos: com implementações em Java e C++.
São Paulo: Cengage Learning, 2011.
20
ESCOLA SECUNDÁRIA DE AMIZADE
NOMES:
Ancha Eugénio Bento
Anifa Ângelo
Arcenia Francisco Awane
Aweto Sumane
Trabalho de TCS para
fim avaliativo
21
ESCOLA SECUNDÁRIA DE AMIZADE
TEMA
INTRODUÇÃO A PROGRAMAÇÃO
Turma A 12A Classe
2o Grupo
LICHINGA ABRIL DE 2023
22