Vous êtes sur la page 1sur 10

UNIPAC

Cincia da Computao

INTRODUO

Para que as pessoas se entendam e possam comunicar-se, necessrio que ambas


falem uma linguagem comum. O mesmo acontece na relao homem-mquina. Se nos
sentarmos em frente a um computador e comearmos a lhe ditar ordens em portugus, o
equipamento permanecer indiferente aos nossos comandos. Isto acontece porque os
computadores so programados para entender e executar nossos comandos de acordo
com um vocabulrio pr-determinado e por eles conhecido. Quando surgiram os
primeiros computadores, no final dos anos 40, tornou-se necessrio programa-los. Tudo
que um equipamento pode fazer baseia-se no conhecimento, pela mquina, de dois
estados de corrente eltrica: ligado ou desligado.
Entretanto, este tipo de programao era demasiadamente improdutivo,
principalmente porque sempre que se fosse repetir o processamento, era necessrio gastar
horas para ajustar as chaves no painel do computador.
A soluo para este problema foi substituir o trabalho de programao que era
realizado diretamente na mquina, por um processo que representasse o acionamento das
chaves e das lmpadas.

COMPILADORES

Quando duas pessoas, que falam idiomas diferentes precisam se comunicar,


existem duas sadas: ou uma delas aprende e procura se expressar no outro idioma, ou
ambas, continuam falando suas lnguas com o auxilio de um tradutor para intermdia-las.
Os compiladores, por sua vez, dependendo da linguagem que se utiliza, podero
envolver algumas etapas intermedirias. Estas etapas normalmente so chamadas de
link-editores ou tradutores e devem ser executadas aps a compilao inicial para,
finalmente, gerar o programa em linguagem de mquina, pronto para ser executado.
Como se pode observar, compiladores e interpretadores realizam seu trabalho de
modos bastante diferentes.
Nos casos em que no existem interpretadores, os programadores devem
submeter-se ao ciclo habitual de desenvolvimento de programas:
Entrar com todo o programa no computador.
Compilar o programa, traduzindo para a linguagem de mquina.
Executar o programa.

OS NVEIS DAS LINGUAGENS

Assim como os computadores, as linguagens de programao tambm tm


evoludo. Costuma-se dizer que uma linguagem de computao encontra-se em um
determinado nvel em relao linguagem humana.
As linguagens em que sua sintaxe esta mais prxima da linguagem humana, so
chamadas de linguagens de alto nvel, j as linguagem mais prximas da linguagem das
mquinas (ligado ou desligado) so chamadas de linguagem de baixo nvel.

Fundamentos de Programao

Professor Filipe Costa Fernandes

UNIPAC
2

Cincia da Computao

ALGORITMOS

Um algoritmo uma seqncia lgica de instrues para realizar uma


determinada tarefa. Os algoritmos no representam necessariamente programas de
computador, e sim os passos necessrios para se realizar uma tarefa. Diferentes
algoritmos podem realizar a mesma tarefa usando um conjunto diferenciado de instrues
em mais ou menos tempo, espao ou esforo do que outros. Por exemplo, um algoritmo
para se vestir pode especificar que voc vista primeiro as meias e os sapatos antes de
vestir a cala enquanto outro algoritmo especifica que voc deve primeiro vestir a cala e
depois as meias e os sapatos. Fica claro que o primeiro algoritmo mais difcil de
executar que o segundo.
Estas instrues definidas por algoritmos, podem ser uma receita de bolo, manual
de instrues de um aparelho qualquer, uma sequencia para somar dois nmeros, etc.
Desde que esta intrues sigam uma sequencia lgica e tenham inicio e fim.
Vamos pensar no caso de uma receita de bolo. No podemos colocar o bolo para
asar sem antes misturar (de forma correta) todos os ingredientes, que por sua vez no
podem ser misturados, se eles no existem. Ento, neste caso, devemos primeiro adquirir
os ingredientes, depois mistura-los e por fim, levar tudo ao forno, que por sua vez deve
est ligado ou poder ser ligado futuramente.
Ento, est sequencia lgica (se de ser um pouco mais refinada) pode ser definida
como um algoritmo para se fazer um bolo ( claro que este algoritmo deve ser muito mais
detalhado do que est em nosso exemplo, como por exemplo, devemos definir quais so
os ingredientes).
A sequencia lgica tambm pode ser chamada de Roteiro.
Um roteiro para chupar uma bala pode ser escrito da seguinte forma:
Pegar a Bala
Retirar o Papel
Chupar a Bala
Jogar o Papel no lixo
Um roteiro para somar dois nmeros pode ser escrito da seguinte forma:
Obter o primeiro nmero
Obter o segundo nmero
Somar os dois nmeros obtidos
EXERCCIOS

Elabore um roteiro para tomar banho.


Elabore um roteiro para copiar um arquivo do disquete para o disco C:
Elabore um roteiro para uma pessoa ir de nibus de um ponto A para um
ponto B.
Elabore um roteiro para calcula quanto em Real (R$) vale uma
determinada quantidade de Dlares ($).
Elabore um roteiro para calcular a mdia aritmtica de trs nmeros.

Fundamentos de Programao

Professor Filipe Costa Fernandes

UNIPAC

Cincia da Computao

ALGORITMO X PROGRAMA
Como vimos antes, um algoritmo uma seqncia lgica de aes a serem
executadas para se realizar uma determinada tarefa.
Um programa a formalizao de um algoritmo em uma determinada linguagem
de programao, segundo suas regras de sintaxe e semntica, de forma a permitir que o
computador possa entender a seqncia de aes e realizar a tarefa.
LINGUAGEM DE PROGRAMAO
um conjunto de smbolos e regras de sintaxe que permitem a construo de
sentenas que descrevem de forma precisa aes compreensveis e executveis para o
computador.
PORTUGOL (l-se portugl)
O portugol um algoritmo (escrito em portugus) utilizando as sintaxes e
semnticas de um modelo de linguagem de programao, geralmente (foi proposto para
ser baseado no pascal) o portugol baseado na linguagem Pascal, mas com todo tipo de
algoritmo ele deve ter portabilidade para outras linguagens de programao.
Como vimos antes, todo algoritmo deve obrigatoriamente tem um inicio e um
fim, e entre eles algumas instrues a serem realizadas.
Ento um exemplo de um algoritmo pode ser escrito da seguinte forma:
Inicio
Instrues a serem realizadas
Fim
Tomando como exemplo a receita de bolo citada anteriormente, conclumos que
antes de fazer qualquer coisa, temos que adquirir os ingredientes necessrios para o nosso
bolo (esta a seqncia lgica correta). Com os algoritmos tambm funciona desta forma
devemos primeiro definir quais sero os ingredientes (que em algoritmos chamamos de
definies, ou declaraes) utilizado para a instruo em questo.
O processo de criao e execuo de programas (no nosso caso algoritmos) se
divide em trs partes bsicas: entrada, processamento e sada.
A entrada toda a informao que o algoritmo recebe. Esta entrada sempre
dever ser armazenada em algum lugar, como por exemplo, em variveis. O
processamento todo tipo de processamento que o algoritmo realiza, como atribuir um
valor a alguma varivel, realizar alguns tipo de tomada de deciso e algum tipo de
repetio (falaremos sobre tomadas de deciso e sobre estruturas de repetio mais
adiante). E a sada a exibio dos resultados em tela, ou escrita em arquivos, ou em
impressora.

Fundamentos de Programao

Professor Filipe Costa Fernandes

UNIPAC

Cincia da Computao

EXEMPLOS

Um algoritmo para somar dois nmeros:


Inicio
variaveis
numero1 : intiero
numero2 :inteiro
inteiro soma
leia numero1
leia numero2
soma = numero1 + numero2
escreve soma
fim

Neste exemplo temos na quarta e na quinta linha elementos de entrada (leia


numero1 e leia numero2), na sexta linha temos um processamento
(soma=numero1+numero2) e na penltima linha temos uma sada (escreve soma).
Estes elementos de entrada e sada so chamados de comandos. Os comandos so
palavras reservadas das linguagens de programao que realizam alguma tarefa. Como
por exemplo, a palavra reservada (comando) leia que vai capturar o nmero que o usurio
digitar e armazenar em algum local para futuro processamento e/ou sada.
Este local de armazenamento chamado de varivel. As variveis so pores de
memria predefinidas para receber algum tipo de informao. Estas predefinies de
variveis podem ser definidas como o tipo de informao que a varivel vai receber, e o
tamanho da informao que a varivel vai suportar.
Os tipos de variveis so chamados de tipos ou tipos de dados e o tamanho
chamado de tamanho mesmo.
Os tipos de dados mais conhecidos e comumente utilizados so definidos na
tabela abaixo:
TABELA 1 - Tipos de Dados mais comuns

NOME DO TIPO
Inteiro

Real

Char

String

Fundamentos de Programao

DESCRIO
Recebe nmeros inteiros positivos ou
negativos.
Ex. 1; 2; 3; -4; -50; +100; etc.
Recebe nmeros fracionrios positivos
ou negaivos.
Ex. 1.0; 2.0; 1.3; -5.4; etc.
Recebe caracteres nicos, ou seja,
suporta somente uma letra ou um
nmero.
Ex. A; a; 1; etc.
Recebe cadeias de caracteres. Devemos
definir o tamanho mximo de cada
varivel string declarada, e esta varivel

Professor Filipe Costa Fernandes

UNIPAC

Logico

Cincia da Computao
poder receber um nico caractere ou
uma cadeia de caracteres de no mximo
o tamanho definido para ela.
Ex. UNIPAC; Computao; 1;
1.3
Recebe um dos dois valores lgicos:
Verdadeiro ou Falso.
Uma varivel do tipo lgico, poder
receber somente um dos valores lgicos
por vez.

OBS: Perceba que para tipos de dados CHAR usamos aspas simples (A) e para
tipos de dados STRING usamos aspas duplas (A). Assim quando tivermos um
caractere somente, saberemos identificar o tipo de dados da varivel em questo.
Para declararmos uma varivel devemos usar a palavra reservada variveis e
depois definimos as variveis que necessitamos, separando o nome da varivel do seu
tipo por dois pontos (:).
Sintaxe:
Variveis
<nome_da_variavel> : <tipo_da_variavel>
Exemplo:
Variveis
X : inteiro
Nome : String
Sexo : Char
Nota : Real
Controle : Logico
CONSTANTES
As constantes so tipos de dados predefinidos e que no podem ter seus valores
alterados em tempo de execuo de um programa. Por exemplo, podemos usar uma
varivel do tipo inteiro para ler um nmero qualquer, esta varivel pode ter o seu valor
alterado quantas vezes forem necessrias no decorrer do programa. Por outro lado
podemos definir uma constante para definir o valor de PI, que um valor que no ser
alterado no decorrer do programa, ento criamos uma constante chamada de PI que
recebe o valor de 3,14159265 e toda vez que precisarmos de PI, basta chamar esta
constante.
Valores numricos e strings tambm so chamados de Constantes. Os valores: 1;
10; -10; Programao; C, so exemplos de constantes.

Fundamentos de Programao

Professor Filipe Costa Fernandes

UNIPAC

Cincia da Computao

Para declarar uma constante, usamos a palavra reservada Constantes e depois


declaramos todas as constantes necessrias.
Sintaxe:
Constantes
<nome_da_constante> = <valor_da_constante>
Exemplos:
Constantes
PI = 3,14159265
ValorMaximo = 1000
Instituio = UNIPAC
No exemplo acima, foram definidas trs constantes, PI, ValorMaximo e
Instituio. Assim, no decorrer do programa, toda vez que precisar do valor de pi, no
precisa informar o valor 3,1416 e sim utilizar a constante PI. O mesmo se aplica para as
outras constantes.
Lembre-se que estes valores no podem ser alterados em tempo de execuo do
programa, portanto, se no meio do programa voc tentar atribuir um outro valor qualquer
para uma constante, isso vai ocasionar um erro na execuo do programa.
PALAVRAS RESERVADAS
As palavras reservadas so todas as palavras reservadas para alguma
funcionalidade em uma determinada linguagem de programao, estas funcionalidades
so: ler, escrever, estrutura condicional, estrutura de repetio, definio de inicio de
bloco de cdigo, definio de final de bloco de cdigo, nomes de tipos de dados, etc.
OPERADORES ARITMTICOS
Os operadores aritmticos so: +, -, *, /. Com eles podemos realizar clculos
matemticos com variveis numricas, inteiras ou reais.
Na matemtica para realizar um clculo de uma expresso, devemos montar toda
a expresso, separando os blocos de prioridade por parntesis (), colchetes [], ou
chaves {}, em programao usamos somente parntesis () e a ordem de precedncia
dos operadores.
A ordem de precedncia dos operadores, como se fossem parntesis invisveis
que o compilador coloca na expresso quando no indicamos onde queremos ter
parntesis. O operador de Diviso tem a maior precedncia, ou seja, em uma expresso
sem separao por parntesis a diviso ser executada primeiro. Depois vem o operador
de Multiplicao e por fim Adio e Subtrao, nesta ordem.
TABELA 2 - Operadores Aritmticos

OPERADOR
/
Fundamentos de Programao

SIGNIFICADO
Operador de Diviso
Professor Filipe Costa Fernandes

UNIPAC
*
+
-

Cincia da Computao
Operador de Multiplicao
Operador de Adio
Operador de Subtrao

A sintaxe dos operadores aritmticos a seguinte:


<valor_A> <operador aritmtico> <valor_B>
Exemplos:
10 + 10
21
15 / 3
250 * 24
OBS: tambm podemos substituir os valores numricos por variveis.
OPERADORES RELACIONAIS
Em certo ponto de nosso programa, teremos a necessidade de tomar algum tipo de
deciso, como por exemplo definir se um certo aluno foi aprovado ou reprovado em uma
determinada disciplina, ou at mesmo descobrir de um nmero par ou impar.
Para isso devemos usar uma estrutura condicional (ou estrutura de tomada de
deciso) e nesta estrutura deveremos utilizar os operadores relacionais, que iro
determinar o valor exato do item em questo.
Os operadores relacionais so: =, <>, <, >, <=, >=.
A tabela a seguir mostra os operadores relacionais e seus respectivos significados.
TABELA 3 - Operadores Relacionais

OPERADOR RELACIONAL
=
<>
<
>
<=
>=

SIGNIFICADO
Igual
Diferente
Menor que
Maior que
Menor ou igual
Maior ou igual

A sintaxe dos operadores relacionais a seguinte:


<valor_A> <operador relacional> <valor_B>
Exemplos:
10 = 10
12 > 10
5<6

Fundamentos de Programao

Professor Filipe Costa Fernandes

UNIPAC

Cincia da Computao

X <= 50
OPERADOR DE ATRIBUIO ( := )
Para atribuirmos um valor a uma varivel, devemos utilizar o operador de
atribuio. Este operador o dois pontos e igual e ele serve para pegar o valor que est a
sua direita e atribuir varivel que est a sua esquerda.
Sintaxe:
<Varivel_Destino> := <valor_original>
Exemplos:(Dada uma varivel do tipo inteiro X)
X := 10; (a varivel X recebe o valor 10)
O operador de atribuio existe para diferenciar a atribuio de valores ( := ) com
a comparao de igualdade de valores ( = ).
EXEMPLO PRTICO 1
Elaborar um algoritmo para escrever na tela a seguinte mensagem: Ol Mundo!
Inicio
Escreva Ol Mundo!
Fim
Perceba que neste algoritmo no declaramos variveis, nem utilizamos alguma
outra tcnica que vimos at aqui, por que o algoritmo deveria simplesmente escreve uma
string (constante) na tela.
EXEMPLO PRTICO 2
Elaborar um algoritmo para ler o nome do usurio e escrever este nome na tela;
Variveis
Nome : String
Inicio
Leia Nome
Escreva Nome
Fim
Note que neste algoritmo j utilizamos o comando para ler algo do teclado, isso se
da pelo fato de que surgiu a necessidade de interagir com o usurio, o algoritmo
necessitou do nome do usurio, ento este nome foi lido do teclado. Mas note que nada
informou ao usurio que ele deveria digitar o seu nome, ento sempre importante

Fundamentos de Programao

Professor Filipe Costa Fernandes

UNIPAC

Cincia da Computao

informarmos o usurio o que desejamos que ela faa. Portanto uma correo para o
algoritmo do exemplo anterior fica da seguinte forma:
Variveis
Nome : String
Inicio
Escreva Digite o seu Nome:
Leia Nome
Escreva Nome
Fim
Voc percebeu que a palavra Nome apareceu algumas vezes distintas no corpo do
algoritmo?
Bom, na primeira vez que a palavra Nome aparece, ela est entre aspas duplas e
um texto a ser exibido na tela. Na segunda vez que a palavra Nome aparece, ela est sem
aspas e uma varivel que ir armazenar a informao que o usurio digitar no teclado.
Portanto, sempre que estiver usando VARIVEIS no utilize aspas, pois com
aspas a sua varivel deixar de ser uma varivel e ser um TEXTO SIMPLES.
EXEMPLO PRTICO 3
Elaborar um algoritmo para ler DOIS nmeros e escrever a soma dos nmeros.
Variveis
Numero1 : inteiro
Numero2 : inteiro
Resultado : inteiro
Inicio
Escreva Digite um nmero para somar
Leia Numero1
Escreva Digite outro nmero para somar
Leia Numero2
Resultado := Numero1 + Numero2
Escreva Resultado
Fim
EXERCCIOS
1. Elabore um algoritmo para ler um nome e um nmero e depois escrever o
nome e o nmero na tela.
2. Elabore um algoritmo para ler dois nmeros e escrever na tela a
multiplicao destes nmeros.
3. Elabore um algoritmo para ler um nmero e escreve na tela o quadrado
deste nmero.

Fundamentos de Programao

Professor Filipe Costa Fernandes

UNIPAC

Cincia da Computao
4. Elabore um algoritmo para ler trs nmeros e escreve na tela a mdia
aritmtica destes nmeros.

Fundamentos de Programao

Professor Filipe Costa Fernandes

Vous aimerez peut-être aussi