Anda di halaman 1dari 53

Engenharia da Computao

Tcnicas de Programao 1 TP1


Prof. MSc. Fabio H. Pimentel

Introduo

Engenharia da Computao

INTRODUO
Computador
uma mquina eletrnica que realiza tarefas baseada em um software.
Software
um conjunto de instrues de trabalho sequenciais apropriados a um
computador.

Engenharia da Computao

INTRODUO
Computador
uma mquina eletrnica que realiza tarefas baseada em um software.
Software
todo conjunto de instrues de trabalho sequenciais apropriados a um
computador.

Engenharia da Computao

INTRODUO
Programa de Computador
Todo software desenvolvido para que o computador realize tarefas
especficas.

Engenharia da Computao

INTRODUO
Programa de Computador
Para realizar tarefas especficas, um software rene uma sequencia de
instrues de trabalho prprias a essa finalidade.

Engenharia da Computao

INTRODUO
Programa de Computador
A esse conjunto de instrues de trabalho especializado a algum objetivo d-se
o nome de programa.

Engenharia da Computao

INTRODUO
Programa de Computador
Exemplos:
Windows: programa sistema operacional
Word: programa editor de texto

AutoCAD: programa para design de produtos

Super Mrio World: programa de jogo

Google Chrome: programa de acesso a pginas web

Engenharia da Computao

INTRODUO
Linguagem de Programao
As instrues de trabalho de um programa precisam ser escritas de uma forma
apropriada para que o computador entenda.

Engenharia da Computao

INTRODUO
Linguagem de Programao
Essa forma adequada de escrita ditada por linguagens de programao.

Engenharia da Computao

INTRODUO
Linguagem de Programao
Ao longo dos anos de existncia do computador, diversas linguagens de
programao foram criadas.
Exemplos:
Assembly

Pascal

Basic

C++

C#

Java

SQL

Visual C

Visual Basic

HTML

PHP

10

Engenharia da Computao

INTRODUO
Programador
o profissional especializado em escrever programas de computador.

11

Engenharia da Computao

INTRODUO
Programador
O programador conhecedor de linguagens de programao e utiliza esse
conhecimento para escrever programas.

12

Engenharia da Computao

INTRODUO
Programador
Para escrever programas, alm de conhecer a linguagem de programao, o
programador precisa saber elaborar solues a problemas especficos.

13

Engenharia da Computao

INTRODUO
Programador
As solues precisam ser organizadas de forma a se transformarem em um
programa.

14

Engenharia da Computao

INTRODUO
Programador
E para isso, o programador precisa utilizar Lgica e Raciocnio Lgico.

15

Engenharia da Computao

INTRODUO
Lgica
a cincia que estuda as leis e critrios de validade que regem o pensamento e
a demonstrao, ou seja, a cincia dos princpios formais do raciocnio.
Para usar a lgica preciso ter domnio sobre o pensamento e saber pensar, ou
seja, possuir a Arte de Pensar.

16

Engenharia da Computao

INTRODUO
Lgica
a cincia que estuda as leis e critrios de validade que regem o pensamento e
a demonstrao, ou seja, a cincia dos princpios formais do raciocnio.
Para usar a lgica preciso ter domnio sobre o pensamento e saber pensar, ou
seja, possuir a Arte de Pensar.

17

Engenharia da Computao

INTRODUO
Raciocnio Lgico
a sequncia coerente, regular e necessria de acontecimentos, de coisas ou
fatos.

18

Engenharia da Computao

INTRODUO
Voc sabe usar o raciocnio lgico?
Depende de inmeros fatores: calma, conhecimento, vivncia, versatilidade,
experincia, criatividade, ponderao, responsabilidade, etc.
Para os programadores: Raciocnio Lgico um esquema sistemtico que
define as interaes de sinais no computador com o critrio e princpios
formais de pensamento.

19

Engenharia da Computao

INTRODUO
Voc sabe usar o raciocnio lgico?
Depende de inmeros fatores: calma, conhecimento, vivncia, versatilidade,
experincia, criatividade, ponderao, responsabilidade, etc.
Para os programadores: Raciocnio Lgico um esquema sistemtico que
define as interaes de sinais no computador com o critrio e princpios
formais de pensamento.

20

Engenharia da Computao

INTRODUO
Lgica e Raciocnio Lgico so fatores a serem considerados pelos
programadores pois seu dia-a-dia solucionar problemas e atingir objetivos
com eficincia e eficcia, utilizando a programao.

Para facilitar a aplicao da Lgica e do Raciocnio Lgico em programao de


computadores foram desenvolvidas diversas tcnicas que, reunidas e
aplicadas, recebem o nome de Programao Estruturada.

21

Engenharia da Computao

INTRODUO
Lgica e o Raciocnio Lgico so fatores a serem considerados pelos
programadores pois seu dia-a-dia solucionar problemas e atingir objetivos
com eficincia e eficcia, utilizando a programao.

Para facilitar a aplicao da Lgica e do Raciocnio Lgico em programao de


computadores foram desenvolvidas diversas tcnicas que, reunidas e
aplicadas, recebem o nome de Programao Estruturada.

22

Engenharia da Computao

INTRODUO
Programao Estruturada
Objetivos

- Agilizar a codificao da escrita da programao


- Facilitar a depurao da leitura da mesma
- Permitir a verificao de possveis falhas apresentadas pelos programas
- Facilitar as alteraes e atualizaes dos programas

23

Engenharia da Computao

INTRODUO
Programao Estruturada
Objetivos

- Agilizar a codificao da escrita da programao


- Facilitar a depurao da leitura da mesma
- Permitir a verificao de possveis falhas apresentadas pelos programas
- Facilitar as alteraes e atualizaes dos programas

24

Engenharia da Computao

INTRODUO
Programao Estruturada
Objetivos

- Agilizar a codificao da escrita da programao


- Facilitar a depurao da leitura da mesma
- Permitir a verificao de possveis falhas apresentadas pelos programas
- Facilitar as alteraes e atualizaes dos programas

25

Engenharia da Computao

INTRODUO
Programao Estruturada
Objetivos

- Agilizar a codificao da escrita da programao


- Facilitar a depurao da leitura da mesma
- Permitir a verificao de possveis falhas apresentadas pelos programas
- Facilitar as alteraes e atualizaes dos programas

26

Engenharia da Computao

INTRODUO
Programao Estruturada
Passos Fundamentais

- Escrever as instrues em sequncias ligadas entre si apenas por estruturas


sequenciais, repetitivas ou de selecionamento
- Escrever instrues em grupos pequenos e combin-las
- Distribuir mdulos do programa entre os diferentes programadores que
trabalharo sob a superviso de um supervisor
- Revisar o trabalho executado em reunies regulares com os programadores
(sempre de um mesmo nvel)

27

Engenharia da Computao

INTRODUO
Programao Estruturada
Passos Fundamentais

- Escrever as instrues em sequncias ligadas entre si apenas por estruturas


sequenciais, repetitivas ou de selecionamento
- Escrever instrues em grupos pequenos e combin-las
- Distribuir mdulos do programa entre os diferentes programadores que
trabalharo sob a superviso de um supervisor
- Revisar o trabalho executado em reunies regulares com os programadores
(sempre de um mesmo nvel)

28

Engenharia da Computao

INTRODUO
Programao Estruturada
Passos Fundamentais

- Escrever as instrues em sequncias ligadas entre si apenas por estruturas


sequenciais, repetitivas ou de selecionamento
- Escrever instrues em grupos pequenos e combin-las
- Distribuir mdulos do programa entre os diferentes programadores que
trabalharo sob a superviso de um supervisor
- Revisar o trabalho executado em reunies regulares com os programadores
(sempre de um mesmo nvel)

29

Engenharia da Computao

INTRODUO
Programao Estruturada
Passos Fundamentais

- Escrever as instrues em sequncias ligadas entre si apenas por estruturas


sequenciais, repetitivas ou de selecionamento
- Escrever instrues em grupos pequenos e combin-las
- Distribuir mdulos do programa entre os diferentes programadores que
trabalharo sob a superviso de um supervisor
- Revisar o trabalho executado em reunies regulares com os programadores
(sempre de um mesmo nvel)

30

Engenharia da Computao

INTRODUO
Tcnicas para Programao
- Algoritmo

- Fluxograma / Diagrama em Bloco / Diagrama de Chapin


- Pseudocdigo (Portugus Estruturado)
- Programao em Linguagem Formal

31

Engenharia da Computao

INTRODUO
Algoritmo
- um processo de resoluo de um problema com generalidade e sem
restries.
- So passos para obter um resultado ou solucionar um problema.
Exemplo: algoritmo para calcular a rea de um crculo
1. Ler um valor para o raio;
2. Estabelecer que PI vale 3,1416;
3. Efetuar o clculo da rea, elevando
ao quadrado o valor do raio e multiplicando
por PI;
4. Apresentar o valor da rea.
32

Engenharia da Computao

INTRODUO
Algoritmo
- um processo de resoluo de um problema com generalidade e sem
restries.
- So passos para obter um resultado ou solucionar um problema.
Exemplo: algoritmo para calcular a rea de um crculo
1. Ler um valor para o raio;
2. Estabelecer que PI vale 3,1416;
3. Efetuar o clculo da rea, elevando
ao quadrado o valor do raio e multiplicando
por PI;
4. Apresentar o valor da rea.
33

Engenharia da Computao

INTRODUO

Fluxograma
- uma ferramenta usada para representar um algoritmo em um fluxo de
atividades.

- Usa desenhos geomtricos como smbolos para entrada, processamento e


sada de dados.
- Amplamente utilizada por profissionais de Anlise de Sistemas.

34

Engenharia da Computao

INTRODUO
Diagrama em Blocos
- Ferramenta que aprimorou o fluxograma. Usada para descrever o mtodo e a
sequncia de aplicao de um algoritmo na programao de um computador.
- Pode ser desenvolvido em qualquer nvel de detalhe que seja necessrio.
- Amplamente utilizada por profissionais de Programao.

35

Engenharia da Computao

INTRODUO

Incio

Diagrama em Blocos
Exemplo: diagrama em
blocos do clculo da rea do
crculo

raio

rea 3,1416 x raio 2

rea

Fim

36

Engenharia da Computao

INTRODUO

Diagrama de Chapin
- Ferramenta que substitui o diagrama em blocos tradicional por um diagrama
de quadros que permite apresentar uma viso hierrquica e estruturada da
lgica do programa.

37

Engenharia da Computao

INTRODUO
Pseudo Linguagem ou Pseudo Cdigo Portugus Estruturado
- uma referncia genrica para uma linguagem de programao formal,
desenvolvida partir do diagrama em blocos.
Exemplo: portugol para o clculo da rea do crculo
programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreve A
fim

38

Engenharia da Computao

INTRODUO
Pseudo Linguagem ou Pseudo Cdigo Portugus Estruturado
- uma referncia genrica para uma linguagem de programao formal,
desenvolvida partir do diagrama em blocos.
Exemplo: portugol para o clculo da rea do crculo
programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreve A
fim

39

Engenharia da Computao

INTRODUO
Linguagem C
Criada em 1972 por Dennis M. Ritchie e Ken Thompson

Laboratrios Bell
A linguagem C foi planejada para elaborao de programas
Estruturados e Modulares
Exemplo: linguagem C para calcular a rea de um crculo.

40

Engenharia da Computao

INTRODUO
Linguagem C
Criada em 1972 por Dennis M. Ritchie e Ken Thompson

Laboratrio Bell
A linguagem C foi planejada para elaborao de programas
Estruturados e Modulares
Exemplo: linguagem C para calcular a rea de um crculo.

41

Engenharia da Computao

INTRODUO
PORTUGOL

LINGUAGEM C
// programa AREA_CIRCULO

programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreva A
fim

// incluso de bibliotecas
#include<stdio.h>
#include<stdlib.h>
// declarao de variveis
float A,R;
int main( )
{
printf(Digite o raio do circulo:);
scanf(%f,&R);
A = 3.1416*R*R;
printf(Area: %f,A);
system(PAUSE);
return 0;
}
42

Engenharia da Computao

INTRODUO
PORTUGOL

LINGUAGEM C
// programa AREA_CIRCULO

programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreva A
fim

// incluso de bibliotecas
#include<stdio.h>
#include<stdlib.h>
// declarao de variveis
float A,R;
int main( )
{
printf(Digite o raio do circulo:);
scanf(%f,&R);
A = 3.1416*R*R;
printf(Area: %f,A);
system(PAUSE);
return 0;
}
43

Engenharia da Computao

INTRODUO
PORTUGOL

LINGUAGEM C
// programa AREA_CIRCULO

programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreva A
fim

// incluso de bibliotecas
#include<stdio.h>
#include<stdlib.h>
// declarao de variveis
float A,R;
int main( )
{
printf(Digite o raio do circulo:);
scanf(%f,&R);
A = 3.1416*R*R;
printf(Area: %f,A);
system(PAUSE);
return 0;
}
44

Engenharia da Computao

INTRODUO
PORTUGOL

LINGUAGEM C
// programa AREA_CIRCULO

programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreva A
fim

// incluso de bibliotecas
#include<stdio.h>
#include<stdlib.h>
// declarao de variveis
float A,R;
int main( )
{
printf(Digite o raio do circulo:);
scanf(%f,&R);
A = 3.1416*R*R;
printf(Area: %f,A);
system(PAUSE);
return 0;
}
45

Engenharia da Computao

INTRODUO
PORTUGOL

LINGUAGEM C
// programa AREA_CIRCULO

programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreva A
fim

// incluso de bibliotecas
#include<stdio.h>
#include<stdlib.h>
// declarao de variveis
float A,R;
int main( )
{
printf(Digite o raio do circulo:);
scanf(%f,&R);
A = 3.1416*R*R;
printf(Area: %f,A);
system(PAUSE);
return 0;
}
46

Engenharia da Computao

INTRODUO
PORTUGOL

LINGUAGEM C
// programa AREA_CIRCULO

programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreva A
fim

// incluso de bibliotecas
#include<stdio.h>
#include<stdlib.h>
// declarao de variveis
float A,R;
int main( )
{
printf(Digite o raio do circulo:);
scanf(%f,&R);
A = 3.1416*R*R;
printf(Area: %f,A);
system(PAUSE);
return 0;
}
47

Engenharia da Computao

INTRODUO
PORTUGOL

LINGUAGEM C
// programa AREA_CIRCULO

programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreva A
fim

// incluso de bibliotecas
#include<stdio.h>
#include<stdlib.h>
// declarao de variveis
float A,R;
int main( )
{
printf(Digite o raio do circulo:);
scanf(%f,&R);
A = 3.1416*R*R;
printf(Area: %f,A);
system(PAUSE);
return 0;
}
48

Engenharia da Computao

INTRODUO
PORTUGOL

LINGUAGEM C
// programa AREA_CIRCULO

programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreva A
fim

// incluso de bibliotecas
#include<stdio.h>
#include<stdlib.h>
// declarao de variveis
float A,R;
int main( )
{
printf(Digite o raio do circulo:);
scanf(%f,&R);
A = 3.1416*R*R;
printf(Area: %f,A);
system(PAUSE);
return 0;
}
49

Engenharia da Computao

INTRODUO
PORTUGOL

LINGUAGEM C
// programa AREA_CIRCULO

programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreva A
fim

// incluso de bibliotecas
#include<stdio.h>
#include<stdlib.h>
// declarao de variveis
float A,R;
int main( )
{
printf(Digite o raio do circulo:);
scanf(%f,&R);
A = 3.1416*R*R;
printf(Area: %f,A);
system(PAUSE);
return 0;
}
50

Engenharia da Computao

INTRODUO
PORTUGOL

LINGUAGEM C
// programa AREA_CIRCULO

programa AREA_CIRCULO
var
A: real
R: real
inicio
leia R
A 3,1416 * R 2
escreva A
fim

// incluso de bibliotecas
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
// declarao de variveis
float A,R;
int main( )
{
printf(Digite o raio do circulo:);
scanf(%f,&R);
A = M_PI*pow(R,2);
printf(Area: %f,A);
system(PAUSE);
return 0;
}
51

Engenharia da Computao

INTRODUO
Exerccios: elaborar o algoritmo, o diagrama em blocos, o portugol e a
linguagem C.
1. Dever ser criado um programa que efetue a leitura de dois valores
numricos, faa a operao de soma entre os dois valores e apresente o
resultado obtido.

2. Joo foi feira com R$ 20,00 e comprou uma dzia de laranjas por R$ 5,00.
Com quanto Joo voltou para casa?

52

Engenharia da Computao

Fim

53

Anda mungkin juga menyukai