Buscar

introducao programacao

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Introdução à 
Programação de Computadores 
 
 
Material complementar 
 
 
 
 
 
 
 
 
 
 
 
 
 
Roberto Vichinsky 
Fev/2015 
 
Introdução à Programação de Computadores __ _ 
 
1 
1. Introdução à Programação 
O objetivo deste capítulo é fornecer as noções básicas sobre programação de 
computadores. Ao final deste tópico, você saberá, teoricamente, o que é uma linguagem de 
programação, seus elementos básicos e como aplicar a técnica da pseudolinguagem para o 
desenvolvimento de programas. 
 
 1.1. Um pouquinho de história sobre a Programação de Computadores 
Antes de entrarmos na discussão histórica, é importante sabermos o que é um programa 
de computador. Façamos uma breve definição: Programa de computador é um conjunto de 
instruções que orientam o computador a realizar uma determinada tarefa. Este conjunto de 
instruções deve ser escrito em uma linguagem que o computador entenda, chamada de 
linguagem de programação. 
 Assim como as linguagens naturais servem como ferramenta à comunicação entre seres 
humanos, as linguagens de programação servem à comunicação entre o homem e o 
computador. Estas linguagens permitem ao homem escrever conjuntos de instruções 
(programas) que possam ser executados pelo computador. 
Os primeiros computadores, como o ENIAC e o EDSAC, eram programados de forma 
bastante rudimentar. As instruções eram introduzidas no formato de cadeias de dígitos 
binários (este tipo de programação passou a ser chamado de “programação em linguagem de 
máquina”). O processo para a produção de programas em linguagem de máquina era muito 
trabalhoso, o que tornava a tarefa de programação muito demorada e os resultados pouco 
confiáveis. 
Procurando soluções para gerar maior produtividade na construção de programas, 
pesquisadores dirigiram esforços para o desenvolvimento de linguagens de maior nível, ou 
seja, linguagens que se assemelhassem mais às linguagens naturais e que pudessem ser 
traduzidas automaticamente para a linguagem de máquina e, desta forma, reconhecidas pelo 
computador. Chamamos de linguagens de baixo nível aquelas que são mais próximas à 
linguagem de máquina e, chamamos de linguagens de alto nível, aquelas mais próximas à 
linguagem natural. 
Como resultado desse esforço, surgiram as primeiras linguagens conhecidas como 
linguagens de montagem. Como exemplo podemos citar a linguagem TRANSCODE, 
desenvolvida por Pat Hume e Beatrice Worsley da Universidade de Toronto, no início da 
década de 1950. 
Em meados de 1950 surgiram as primeiras linguagens de programação orientadas para 
problemas, ou seja, elaboradas para uma finalidade específica. Veja abaixo a relação das 
principais linguagens desenvolvidas a partir de 1954: 
• FORTRAN (FORmula TRANslation system) – Desenvolvida para finalidades 
matemáticas e científicas – 1954 
• ALGOL (ALGOrithmic Language) – Desenvolvida para finalidades gerais – 1958 
• COBOL (COmmon Business Oriented Language) – Desenvolvida para finalidades 
comerciais –1959 
 
Introdução à Programação de Computadores __ _ 
 
2 
• BASIC (Beginner’s All-purpose Symbolic Instruction Code) – Desenvolvida para 
aplicações gerais e orientada aos principiantes –1965 
A linguagem C foi criada em 1972 por Dennis Ritchie do AT&T Bell Labs. Tinha 
como propósito inicial servir de ferramenta para o desenvolvimento do sistema operacional 
UNIX. Por ser uma linguagem flexível, veloz e altamente portável (rodava em diversos 
sistemas operacionais), a linguagem C tornou-se logo uma das linguagens mais utilizadas no 
mundo, influenciando inclusive o desenvolvimento de novas linguagens como o C++ e Java. 
Em resumo, as linguagens de programação, também chamadas de "linguagens 
simbólicas", foram criadas com o objetivo de facilitar a tarefa de programação. São 
mecanismos que permitem que as instruções sejam escritas em uma linguagem parecida com 
a linguagem natural e que podem ser entendidas pelo computador com o auxílio de 
ferramentas auxiliares: compiladores e interpretadores. 
 
 1.2. O processo de criação de um programa 
Na prática, a construção de um programa hoje em dia é uma tarefa bastante simples. 
Basta o programador escrever as instruções através de um editor de texto padrão, gravar o 
arquivo de instruções e, por meio de um software especial (compilador ou interpretador da 
linguagem), abrir e executar o arquivo. 
O arquivo texto que contém as instruções é chamado de código-fonte ou programa-
fonte. O editor usado para a criação deste arquivo deve possibilitar a geração de textos puros 
(sem formatação). Usa-se, por exemplo, o Notepad (bloco de notas do Windows), o EDIT 
do MS-DOS ou qualquer outro editor similar. Porém, a maioria dos compiladores e 
interpretadores de linguagem fornecem um ambiente de desenvolvimento próprio, onde é 
possível escrever os programas diretamente sem a necessidade de editores externos, como é 
o caso do Inter-S e do DEV C++ que utilizaremos neste curso. 
 
 1.3. Processo de Interpretação 
A interpretação é o processo onde o programa-fonte é submetido a um software 
(interpretador) que lê e executa as linhas de instruções existentes no arquivo. 
 
 
 
 
 
 
 
 
 
 
Introdução à Programação de Computadores __ _ 
 
3 
 
 1.4. Processo de Compilação 
A compilação é o processo onde o programa-fonte é convertido em um código 
executável (programa executável). 
 
 
 
 
 
 
 
 
 
 
 1.5. Métodos para a criação de programas 
Já vimos que as linguagens de programação foram criadas com o objetivo de facilitar a 
tarefa de programação. Assim como as linguagens naturais (português, inglês, alemão, etc.), 
as linguagens de programação possuem seus próprios conjuntos de palavras e regras. Um 
programa deve ser escrito obedecendo-se rigorosamente às regras da linguagem, pois a falta 
de uma vírgula, por exemplo, acarretará o não funcionamento do mesmo. 
Existem várias linguagens de programação (Cobol, Basic, Pascal, C, etc.), cada uma 
com seus próprios conjuntos de palavras e regras, porém, a maneira de se criar um programa 
é semelhante em todas elas: primeiramente deve ser criado um arquivo contendo as 
instruções desejadas (programa fonte). Esse arquivo poderá então ser interpretado ou 
compilado (como já visto). 
Este processo parece ser muito fácil, no entanto, a elaboração das instruções não é tarefa 
tão simples, pois exige do programador muito raciocínio lógico, tendo em vista que o 
computador é uma máquina e que as instruções a ele passadas devem ser rigorosamente 
corretas e adequadas. 
O simples conhecimento de uma linguagem não basta para um programador. Qualquer 
um pode decorar as palavras e regras de uma linguagem, assim como podemos decorar 
palavras da língua grega. Porém, a elaboração de uma frase em grego, ou a elaboração de 
uma instrução em linguagem de programação, por exemplo, requerem um raciocínio lógico 
apurado: uma lógica que dará sentido à frase ou à instrução. 
Para criarmos um programa, seja qual for a linguagem de programação utilizada, 
devemos primeiramente definir um algoritmo capaz de resolver o problema. Na realidade, o 
algoritmo é a estratégia que usamos para ordenar as idéias que serão posteriormente 
convertidas em instruções. 
#include<stdio.h> 
#include<conio.h> 
int main() { 
 int a,b; 
 scanf(“%d”,&a); 
 b=a*a; 
 printf(“%d”,b); 
 getch(); 
} 
Programa-fonte 
Compilador 
Programa 
executável 
01001101011101010
11011101101101101
11100010011011101
11110000111111101
11110111011111110
11010101111011111 
Código-objeto 
LinkeditorBibliotecas 
01001101011101010
11011101101101101
11100010011011101
11110000111111101
11110111011111110
11010101111011111 
 
Introdução à Programação de Computadores __ _ 
 
4 
Um bom exemplo para ilustrarmos o conceito de "algoritmo" é uma receita culinária, 
onde encontramos uma relação de ingredientes e uma descrição do que deve ser feito com 
eles para que possamos chegar ao produto final: 
 
 
 
 
 
Ingredientes Instruções para o preparo Resultado (bolo) 
Uma receita culinária (exemplo de algoritmo) 
 
Um algoritmo para a resolução de um problema computacional é muito semelhante ao 
exemplo da receita culinária. Vamos imaginar que queremos construir um programa para 
calcular a média final das quatro notas bimestrais de um aluno. O diagrama para este 
problema seria o seguinte: 
 
 
 
 
 Dados de entrada Procedimentos Dado de saída 
 
O problema da média final 
 
Observe que neste exemplo as 4 notas bimestrais são os "ingredientes", ou seja, os 
dados de entrada necessários à resolução do problema; o conjunto de instruções 
corresponde ao "modo de preparo", ou seja, são os procedimentos a serem realizados pelo 
programa e a média final corresponde ao "produto final", que no caso da receita culinária 
seria o bolo, e neste caso é o dado de saída. 
Podemos concluir que todo algoritmo requer informações externas (dados de entrada), 
as quais são processadas gerando resultados fornecidos como dados de saída. 
Existem diversos métodos para a representação de um algoritmo, porém, dentro do 
nosso curso usaremos apenas dois: a pseudolinguagem e o fluxograma. 
 
 1.6. O uso da pseudolinguagem como estratégia de desenvolvimento 
Uma boa ferramenta para a representação de algoritmos é a pseudolinguagem: uma 
maneira de escrever as instruções utilizando a língua portuguesa de uma forma estruturada, 
aproximando-a da linguagem de programação. 
Modo de preparo: 
- Junte os ovos, o leite 
e a farina em uma 
tigela. 
- Bata até formar... 
Nota 1 
Nota 2 
Nota 3 
Nota 4 
 Instruções: 
 - Obter 4 notas 
 bimestrais 
 - Somar e dividir por 4 
 - Mostrar o resultado 
Média 
 
Introdução à Programação de Computadores __ _ 
 
5 
Observe abaixo o algoritmo para a resolução do problema da média final, em 
pseudolinguagem: 
 
Rotina 
Declare nota1, nota2, nota3, nota4, media Numericos 
Receba nota1 
Receba nota2 
Receba nota3 
Receba nota4 
media = (nota1+nota2+nota3+nota4) / 4 
Escreva media 
FimRotina 
 
Note que o algoritmo apresentado utiliza palavras em português e apresenta um certo 
nível de estruturação. Isto caracteriza uma pseudolinguagem. 
Não existe um padrão definitivo para a representação de algoritmos em 
pseudolinguagem, cada autor ou profissional de desenvolvimento acaba criando o seu 
próprio padrão, desde que obedecendo alguns princípios básicos: as instruções devem ser 
representadas através de verbos no imperativo; expressões matemáticas devem ser 
representadas da maneira mais próxima possível da matemática clássica; devem utilizar 
sempre a mesma palavra para representar operações iguais, etc. 
A pseudolinguagem não é compreendida pelo computador. Trata-se apenas de um 
recurso auxiliar que o programador pode utilizar para a definição da seqüência lógica do 
programa antes de escrevê-lo em linguagem de programação. Porém, para otimizar o 
estudo da lógica de programação, desenvolvemos um software capaz de interpretar e 
executar programas escritos em pseudolinguagem: o Inter-S. 
O Inter-S foi projetado para servir como ferramenta de apoio ao ensino da lógica e 
técnicas de programação, tornando-se uma linguagem ideal e bastante sofisticada para esta 
finalidade. Permite que o algoritmo seja "executado" pelo computador, possibilitando ao 
aluno a constatação imediata do seu funcionamento. 
O algoritmo apresentado como exemplo (cálculo da média) foi escrito em Inter-S. 
Através deste exemplo podemos esboçar algumas conclusões: 
• Um algoritmo Inter-S deve começar com a palavra Rotina e terminar com a palavra 
FimRotina, sendo que as demais linhas devem estar alinhadas em uma margem mais 
à direita. 
• Observe que algumas palavras estão em negrito. Chamadas de palavras chaves ou 
instruções, elas representam uma determinada ação dentro do programa. Note que 
algumas palavras chaves são verbos no imperativo (Declare, Receba e Escreva). 
• A palavra Declare faz a declaração dos dados que serão manipulados pelo programa. 
Estes dados (aqui chamados de variáveis) são as informações de entrada, de saída e, 
eventualmente, alguma informação intermediária que não é recebida nem escrita pelo 
programa (variáveis auxiliares). A palavra Numericos, que aparece no final da linha 
de declaração, indica o tipo de dado, no nosso exemplo os dados de entrada (nota1, 
nota2, nota3 e nota4) são numéricos, assim como o dado de saída (media). Observe 
que não utilizamos acentuação nem espaços para identificar os dados ou palavras 
chaves. 
 
Introdução à Programação de Computadores __ _ 
 
6 
• A palavra Receba instrui o recebimento de um valor, o qual será armazenado na 
variável indicada. A instrução Receba nota1 faz com que um dado seja "lido" 
(através da entrada padrão, no nosso caso o teclado do computador) e seja 
armazenado na variável nota1. Observe que no programa existem quatro instruções 
do tipo Receba, uma para cada variável de entrada (nota1, nota2, nota3 e nota4), isto 
significa que os quatro dados serão recebidos pelo teclado. 
• A expressão media = (nota1+nota2+nota3+nota4)/4 representa um cálculo, onde o 
sinal de igualdade (=) indica que a variável à esquerda (media) receberá o resultado. 
Observe que a operação de divisão é representada por uma barra (/). 
• A instrução Escreva media faz com que o conteúdo armazenado na variável media 
(o resultado do cálculo) seja escrito na saída padrão, que no nosso caso é o monitor 
de vídeo. 
 
 1.7. Elementos fundamentais de uma linguagem de programação 
No exemplo dado no tópico anterior (cálculo da média final) podemos destacar alguns 
elementos existentes na representação do algoritmo em Inter-S. Para que você não precise 
voltar à página anterior, copiamos o algoritmo logo abaixo: 
 
Rotina 
Declare nota1, nota2, nota3, nota4, media Numericos 
Receba nota1 
Receba nota2 
Receba nota3 
Receba nota4 
media = (nota1+nota2+nota3+nota4) / 4 
Escreva media 
FimRotina 
 
Neste exemplo, percebemos a presença dos seguintes itens fundamentais: variáveis, 
constantes, declarações, expressões, operadores e instruções. Estes são os elementos 
fundamentais de qualquer linguagem de programação, os quais estudaremos a seguir. 
 
 1.7.1. Variáveis 
São áreas de trabalho que devemos reservar na memória do computador para o 
armazenamento das informações tratadas pelo programa. O termo variável vem da 
característica dessas áreas: o conteúdo pode variar durante a execução do programa. 
Toda variável deve possuir um identificador, ou seja, um nome que a identifique. Este 
nome é dado pelo próprio programador, obedecendo-se às seguintes regras: 
 
- Um nome de variável deve começar com uma letra; 
- Não pode conter espaços em branco nem caracteres especiais; 
- Pode conter qualquer letra do alfabeto inglês (maiúsculas e minúsculas), os dígitos de 
0 a 9 (zero a nove) e o caractere underline (_); 
- Não pode conter letras acentuadas. 
 
 
Introdução à Programação de Computadores __ _ 
 
7 
É uma prática saudável atribuir um nome sugestivoa cada variável, ou seja, um nome 
que indique o conteúdo que a mesma receberá. Por exemplo, para "batizar" uma variável que 
receberá o valor de um salário poderíamos utilizar o nome VL_SALARIO, desta forma 
teríamos um algoritmo melhor documentado, pois o nome da variável já indicaria o seu 
conteúdo. No nosso exemplo (cálculo da média) utilizamos 5 variáveis: 
nota1 � para armazenar a nota do 1º bimestre 
nota2 � para armazenar a nota do 2º bimestre 
nota3 � para armazenar a nota do 3º bimestre 
nota4 � para armazenar a nota do 4º bimestre 
media � para armazenar o resultado do cálculo da média 
 
 1.7.2. Constantes 
Assim como as variáveis, constantes são áreas reservadas na memória do computador 
para o armazenamento de informações, porém, a característica básica de uma constante é 
que seu conteúdo não sofrerá alteração durante a execução do programa, ou seja, seu 
conteúdo será constante. Podem receber ou não um identificador. Observe no algoritmo a 
presença da seguinte linha: 
 
media = (nota1+nota2+nota3+nota4) / 4 
 
Esta linha corresponde ao cálculo da média, onde os conteúdos das variáveis nota1, 
nota2, nota3 e nota4 serão somados e dividido pela constante 4 (/4). 
Observe que a constante terá sempre o valor 4, independentemente dos conteúdos 
atribuídos às variáveis nota1 a nota4. 
Neste nosso exemplo não houve a necessidade de se dar um nome à constante, ela 
simplesmente foi colocada na fórmula. Mas poderíamos lhe atribuir um nome, desta forma 
teríamos o seguinte algoritmo: 
 
Rotina 
Declare nota1, nota2, nota3, nota4, media Numericos 
Declare divisor Numerico 
divisor=4 
Receba nota1 
Receba nota2 
Receba nota3 
Receba nota4 
media = (nota1+nota2+nota3+nota4) / divisor 
Escreva media 
FimRotina 
 
Note que foram colocadas duas linhas a mais: Declare divisor Numerico e divisor=4, a 
primeira linha declara uma variável numérica com nome divisor, e a segunda linha atribui o 
conteúdo 4 a ela. Na fórmula utilizamos o nome da constante em substituição ao seu 
conteúdo: 
 
media = (nota1+nota2+nota3+nota4) / divisor 
 
 
Introdução à Programação de Computadores __ _ 
 
8 
 1.7.3. Declarações 
Toda variável ou constante deve ser declarada com um nome e um tipo antes de ser 
utilizada no algoritmo, com exceção das constantes aplicadas diretamente em uma expressão 
(como vimos no exemplo anterior). 
Temos apenas uma instrução de declaração: Declare, que é utilizada tanto para a 
declaração de variáveis como para a declaração de constantes. 
Os tipos para a declaração são Numerico e Caractere, o primeiro indica que a variável 
ou constante poderá armazenar apenas informações numéricas (números), e o segundo 
indica que a variável ou constante só poderá receber informações do tipo texto (caracteres). 
Veja exemplos abaixo: 
 
Declare valor, total Numericos Declara as variáveis valor e total como numéricas 
Declare nome Caractere Declara a variável nome como caractere (texto) 
 
 1.7.4. Expressões 
São combinações de variáveis, constantes e operadores em uma única sentença, que têm 
como finalidade a obtenção de um resultado. As expressões mais comuns são as aritméticas. 
Observando o nosso algoritmo para o cálculo da média, destacamos a seguinte expressão: 
 
(nota1+nota2+nota3+nota4) / 4 
 
É uma expressão aritmética onde combinamos variáveis (nota1 a nota4), constante (4) e 
operadores (+ e /). A finalidade desta expressão é a obtenção da média, que posteriormente 
será armazenada na variável media: Veja a instrução completa: 
 
media = (nota1+nota2+nota3+nota4) / 4 
, 
 1.7.5. Operadores 
São símbolos que representam as operações em uma expressão. Temos três tipos 
básicos de operadores: aritméticos, relacionais e lógicos. 
Os operadores aritméticos são aqueles utilizados em expressões numéricas. A tabela a 
seguir os apresenta na ordem de precedência (prioridade em que são efetuadas as 
operações): 
 
Operadores aritméticos 
Operação Operador 
Exponenciação ^ 
Multiplicação * 
Divisão / 
Adição + 
Subtração - 
Parte inteira da divisão \ ou DIV 
Resto da divisão (módulo) % ou MOD 
 
Introdução à Programação de Computadores __ _ 
 
9 
 
Os operadores relacionais permitem a comparação de 2 valores (constantes ou 
variáveis) de mesmo tipo: 
 
Operadores relacionais 
Operação Operador 
Igual a = 
Maior que > 
Menor que < 
Maior ou igual a >= 
Menor ou igual a <= 
Diferente de # 
 
Operadores lógicos são os que utilizam a lógica booleana para a construção de 
expressões condicionais: 
 
Operadores lógicos 
Operação Operador 
Conjunção E 
Disjunção OU 
Negação NÃO 
 
NOTA: É natural que você ainda não compreenda ou não enxergue onde e como utilizar os 
operadores relacionais e lógicos. Não se assuste com isso (pelo menos por enquanto!). No decorrer 
do curso teremos subsídios suficientes para entendê-los. 
 
Além dos três tipos básicos, temos um outro operador denominado operador de 
atribuição. Este operador permite atribuir valores às variáveis. Veja a instrução para o 
cálculo da média de nosso exemplo: 
 
 media = (nota1+nota2+nota3+nota4) / 4 
 
Observe que a variável media está recebendo o resultado de uma expressão aritmética. 
O operador = (sinal de igualdade) indica que a variável à esquerda é aquela que receberá o 
resultado do cálculo (que, neste caso, é a própria variável media). 
 
 
 
 
Introdução à Programação de Computadores __ _ 
 
10 
 
REFERÊNCIA BIBLIOGRÁFICA 
 
VICHINSKY, R.L.G. Introdução à Programação de Computadores com INTER-S. 1 ed. 
Rio de Janeiro: Ciência Moderna, 2012.

Outros materiais