Beruflich Dokumente
Kultur Dokumente
2. Motivao
A programao de computadores uma atividade que leva representao dos passos
necessrios resoluo de um problema em linguagem de programao. Para dar incio ao
aprendizado dessa atividade, importante compreender seu contexto, seu propsito, os
conceitos bsicos subjacentes, bem como tomar contato com o ferramental necessrio a sua
realizao.
3. Conceitos
3.1 O que um computador? Para que serve?
(de sofisticada mquina de calcular mdia)
Um computador uma coleo de componentes que realizam operaes lgicas e
aritmticas sobre um grande volume de dados. (Miyazawa, 2001)
Computador ferramenta de trabalho (ex. editores de textos, planilhas, sistemas de
informao, etc).
Computador mdia: serve como canal na comunicao humana (ex. FAX, Web, ICQ,
apresentao multimdia, etc).
3.2 Como funciona um computador?
(organizao de um computador)
Memria
RAM
Memria
ROM
Unidades de
Entrada
Unidades
de Sada
Unidade de Controle
Memrias
Secundrias
Memria
Cache
Registradores
Unidade
Lgica e
Aritmtica
ESTRUTURA DE
CONTROLE
SEQENCIAL
ESTRUTURA DE
CONTROLE
CONDICIONAL
ESTRUTURA DE
CONTROLE
REPETITIVA
Compilador
Sistema
Operacional
Programa
Executvel
CPU
Programa
Executvel
Sistema
Operacional
CPU
GERAO DO PROGRAMA
EXECUO DO PROGRAMA
EXECUTVEL
Figura 4: Etapas para execuo de um programa compilado (Miyazawa, 2001:3)
Programa
Fonte
Interpretador
Sistema
Operacional
CPU
5. Exemplos
1) Algoritmo que indica qual dentre dois nmeros o maior1.
incio
x recebe m
y recebe n
no
x maior sim
que y?
y maior
x maior
Passo 1: Adote x = m e y = n;
Passo 2: Se x maior que y, ento resposta x; seno resposta y.
Figura 7: Representao do Algoritmo usando pseudo-linguagem
H um erro no algoritmo, uma vez que se x no maior que y, ento y pode ser maior ou igual a x. Sugesto:
pedir para os alunos corrigirem o erro.
#include<stdio.h>
voidmain(void){
intx,y;
scanf("%d,%d",&x,&y);
if(x>y){
printf("%dmaior.",x);
}
else{
printf("%dmaior.",y);
}
Figura 8: Representao do Algoritmo em Linguagem de Programao C
2) Algoritmo de Euclides, que calcula o mximo divisor comum (MDC) de dois nmeros
inteiros positivos. mdc (x, y) = mdc (y, x mod y); mdc (x, 0) = x.
3) Ordenao de uma seqncia aleatria de nmeros.
Referncias
Hennessy, John L., Patterson, David A. Organizao e Projeto de Computadores A
Interface Hardware e Software, 2 edio, LTC editora.
Manber, Udi. Introduction to Algorithms: A Creative Approach, Addison-Wesley, 1989,
478p.
Miyazawa, Flvio K. Notas de Aula de Algoritmos e Programao de Computadores,
Instituto de Computao, Unicamp, 2001, 169p.
Rubira, Ceclia M. F. Notas de Aula, 1 semestre de 2000.
Tramontina, Gregrio B. Aula 1 MC102 Turmas K e L, 24 de Agosto 2004.