Anda di halaman 1dari 60

18/02/13

Linguagem de Programao I
Profo. Anderson

Profo Anderson
Experincia Acadmica
Graduao em Engenharia de Computao pelo InsAtuto Militar de Engenharia (IME) 1993 - 1997 Bolsista do InsAtuto de MatemAca Pura e Aplicada (IMPA) 1995-1997 Sistemas Dinmicos e Computao Grca Doutorado no Laboratrio Nacional de Computao CienUca 2002 2009 Segurana da Informao Ataques Distribudos de Negao de Servio

Experincia Prossional
Projeto e Implantao de uma Rede de Computadores Supervisor do Projeto de Estruturao da Pesquisa CienUca de Defesa CibernAca
Profo. Anderson asantos@unicarioca.edu.br

18/02/13

Linguagem de Programao I
Profo. Anderson asantos@unicarioca.edu.br

OBJETIVOS
Apresentar aos alunos as tcnicas bsicas de programao, empregando, para isso, a linguagem Pascal.

Profo. Anderson asantos@unicarioca.edu.br

18/02/13

EMENTA
Conceitos bsicos das Linguagens de Programao Estruturada. Estrutura de um Programa em Pascal. Ambiente de Desenvolvimento Integrado (Turbo Pascal}. Peculiaridades da Linguagem Pascal. Estruturas Bsicas e Combinao de Estruturas. Tipos Estruturados. Sub-rotinas.
Profo. Anderson asantos@unicarioca.edu.br

CONTEDO PROGRAMTICO
CONTEDO PROGRAMTICO: Unidade 1 Introduo 1.1 Conceitos Bsicos de Programao Estruturada 1.2 Estrutura de um Programa em Pascal 1.3 Ambiente de Desenvolvimento Integrado (IDE} do Turbo Pascal Unidade 2 Peculiaridades da Linguagem Pascal 2.1 Palavras Reservadas 2.2 Operadores Aritmticos, Relacionais e Lgicos 2.3 Tipos Primitivos em Pascal 2.4 Comandos de Entrada e Sada de Dados 2.5 Atribuio de Valores 2.6 Diretivas de Compilao 2.7 Mensagens de Erro

Profo. Anderson asantos@unicarioca.edu.br

18/02/13

CONTEDO PROGRAMTICO
Unidade 3 Estruturas de Programao 3.1 Estrutura seqencial 3.2 Estrutura de Deciso 3.3 Estrutura de Repetio 3.4 Combinao de Estruturas Unidade 4 Sub-rotinas ('Procedures' e 'Functions') 4.1 Regras Gerais para a Criao de Sub-rotinas 4.2 Passagem de parmetro por parmetro por valor e referncia 4.3 Estrutura e Emprego dos Procedimentos ('Procedures') 4.4 Estrutura e Emprego das Funes ('Functions')

Profo. Anderson asantos@unicarioca.edu.br

BIBLIOGRAFIA
Livro-Texto:
FARRER, H. et al. Pascal estruturado. 3. ed. Rio de Janeiro: LTC, 1999. FARRER, H. et al. Algoritmos estruturados. 3. ed. Rio de Janeiro: LTC, 1999. TREMBLAY, J.P. Cincia dos computadores: uma abordagem algortmica. So Paulo: McGrawn-Hill, 1986.

Bibliograa Complementar:
FORBELLONE, V.; EBERSPACHE, F. Lgica de Programao. So Paulo: Makron Books, 2000.

Profo. Anderson asantos@unicarioca.edu.br

18/02/13

Sistema de Avaliao
Composio das notas de AV1 e AV2
AV1: Prova escrita AV2: Prova Colegiada (5,0 pontos) e Atividade Supervisionada (5,0 pontos) AVF: Prova escrita 2 chamada: Prova Escrita

Datas das Provas Escritas AV1: 08 de Abril de 2013 AV2: Prova Escrita: 17 de Junho de 2013 Atividade Supervisionada: Entrega dia 17 de Junho de 2013, pelo 28 horas, at s 23:55. AVF: 01 de Julho de 2013 2 chamada em 24 de Junho de 2013

Profo. Anderson asantos@unicarioca.edu.br

10

Sistema de Avaliao
Atividade Supervisionada (Vale 5,0 pontos) Trabalhos prticos Entrega de Relatrios de Acompanhamento Previso de Matria para as Provas AV1: Unidade I a III Prova Colegiada: Todas as unidades Segunda chamada: Todas as unidades AVF: Todas as unidades

Profo. Anderson asantos@unicarioca.edu.br

18/02/13

11

Observaes Importantes

Observaes Importantes 1. As provas so individuais e realizadas na unidade.


2. Ser OBRIGATRIO o comparecimento no dia da prova correspondente para assinatura da folha de presena. 3. A segunda chamada, para os alunos faltosos, para apenas uma das provas AV1 ou AV2 e a abrange toda a matria. 4. O controle das notas responsabilidade do aluno e responsvel pela verificao da necessidade de realizao da AVF de acordo com a mdia alcanada. 5. As dvidas relacionadas matria devero ser esclarecidas exclusivamente pelo 28 horas, atravs do envio de mensagens.

Profo. Anderson asantos@unicarioca.edu.br

Sistema de Avaliao

12

So condies para aprovao em cada disciplina, alm de alcanar o mnimo de frequncia: Para aprovao direta ou por mdia > 7,00 (sete)
Se: Mdia (M) =

Se: Mdia (M) < 3,0 aluno reprovado

AV 1 + AV 2 7, 0 2

aluno aprovado

Para aprovao por mdia inferior a 7,00 (sete) e > 3,0 (trs)
Se: 3,0 < M < 7,0 aluno em prova final - AV3

o aluno s ser considerado aprovado na disciplina se alcanar mdia final (MF) entre a prova final (AVF) e mdia aritmtica das duas avaliaes anteriores (AV1 e AV2) igual ou superior (M) a 6,0 (seis).

Se: Mdia Final =

( M + AVF ) 6, 0 aluno aprovado 2


( M + AVF ) < 6, 0 2
aluno reprovado

Se: Mdia Final =

Profo. Anderson asantos@unicarioca.edu.br

18/02/13

AV1 Contedos estudados at a data da AV1.

AV2

2 C H A M A D A / A V F Todos os contedos estudados Todos os contedos estudados no semestre le4vo. no semestre le4vo.

I - Prova (Obrigatria - presencial, individual e I Prova (Obrigatria e compe 50% da nota da I Prova (Obrigatria - sem consulta. Compe 100% na nota). AV2) presencial, individual e sem consulta. Compe 100% na A Prova presencial e individual ser aplicada para Prova Colegiada para disciplinas selecionadas. As nota). todas as turmas, exceto NDC e disciplinas disciplinas sem prova colegiada aplicaro provas denidas pela coordenao de curso. presenciais e individuais. Sero provas discursivas Segunda Chamada permiAda e/ou objeAvas. Se objeAvas, devero ser somente para uma nica Sero provas discursivas e/ou objeAvas. Se aplicadas pelo 28H, no mesmo padro de prova avaliao (AV1 ou AV2), desde objeAvas, devero ser aplicadas pelo 28H, no colegiada. que por moAvo devidamente mesmo padro de prova colegiada. jusAcado. O b s e r v a o : A S e g u n d a II - AAvidade PrAca Supervisionada (Obrigatria Chamada aplica-se AV1 ou e compe at 50% da nota da AV2, a critrio do AV2 como um todo e no, somente a uma das partes que professor) compem essas avaliaes. Ou III Outras AAvidades (Opcional. A critrio de seja, no existe Segunda cada professor, outras formas de avaliao Chamada de provas, aAvidades podero ser uAlizadas para completar a nota de prAcas e outras aAvidades de AV2). forma isolada. O aluno com direito a Segunda Chamada aquele que obteve nota zero por no ter realizado a AV 1 ou AV2 ( e no, nota zero numa prova, ou numa aAvidade supervisionada ou numa outra aAvidade).

Profo. Anderson asantos@unicarioca.edu.br

AV1 Contedos estudados at a data da AV1.

AV2

2 C H A M A D A / A V F Todos os contedos estudados Todos os contedos estudados no semestre le4vo. no semestre le4vo.

I - Prova (Obrigatria - presencial, individual e I Prova (Obrigatria e compe 50% da nota da I Prova (Obrigatria - sem consulta. Compe 100% na nota). AV2) presencial, individual e sem consulta. Compe 100% na A Prova presencial e individual ser aplicada para Prova Colegiada para disciplinas selecionadas. As nota). todas as turmas, exceto NDC e disciplinas disciplinas sem prova colegiada aplicaro provas denidas pela coordenao de curso. presenciais e individuais. Sero provas discursivas Segunda Chamada permiAda e/ou objeAvas. Se objeAvas, devero ser somente para uma nica Sero provas discursivas e/ou objeAvas. Se aplicadas pelo 28H, no mesmo padro de prova avaliao (AV1 ou AV2), desde objeAvas, devero ser aplicadas pelo 28H, no colegiada. que por moAvo devidamente mesmo padro de prova colegiada. jusAcado. O b s e r v a o : A S e g u n d a II - AAvidade PrAca Supervisionada (Obrigatria Chamada aplica-se AV1 ou e compe at 50% da nota da AV2, a critrio do AV2 como um todo e no, somente a uma das partes que professor) compem essas avaliaes. Ou III Outras AAvidades (Opcional. A critrio de seja, no existe Segunda cada professor, outras formas de avaliao Chamada de provas, aAvidades podero ser uAlizadas para completar a nota de prAcas e outras aAvidades de AV2). forma isolada. O aluno com direito a Segunda Chamada aquele que obteve nota zero por no ter realizado a AV 1 ou AV2 ( e no, nota zero numa prova, ou numa aAvidade supervisionada ou numa outra aAvidade).

Profo. Anderson asantos@unicarioca.edu.br

18/02/13

AV1 Contedos estudados at a data da AV1.

AV2

2 C H A M A D A / A V F Todos os contedos estudados Todos os contedos estudados no semestre le4vo. no semestre le4vo.

I - Prova (Obrigatria - presencial, individual e I Prova (Obrigatria e compe 50% da nota da I Prova (Obrigatria - sem consulta. Compe 100% na nota). AV2) presencial, individual e sem consulta. Compe 100% na A Prova presencial e individual ser aplicada para Prova Colegiada para disciplinas selecionadas. As nota). todas as turmas, exceto NDC e disciplinas disciplinas sem prova colegiada aplicaro provas denidas pela coordenao de curso. presenciais e individuais. Sero provas discursivas Segunda Chamada permiAda e/ou objeAvas. Se objeAvas, devero ser somente para uma nica Sero provas discursivas e/ou objeAvas. Se aplicadas pelo 28H, no mesmo padro de prova avaliao (AV1 ou AV2), desde objeAvas, devero ser aplicadas pelo 28H, no colegiada. que por moAvo devidamente mesmo padro de prova colegiada. jusAcado. O b s e r v a o : A S e g u n d a II - AAvidade PrAca Supervisionada (Obrigatria Chamada aplica-se AV1 ou e compe at 50% da nota da AV2, a critrio do AV2 como um todo e no, somente a uma das partes que professor) compem essas avaliaes. Ou III Outras AAvidades (Opcional. A critrio de seja, no existe Segunda cada professor, outras formas de avaliao Chamada de provas, aAvidades podero ser uAlizadas para completar a nota de prAcas e outras aAvidades de AV2). forma isolada. O aluno com direito a Segunda Chamada aquele que obteve nota zero por no ter realizado a AV 1 ou AV2 ( e no, nota zero numa prova, ou numa aAvidade supervisionada ou numa outra aAvidade).

Profo. Anderson asantos@unicarioca.edu.br

AV1 Contedos estudados at a data da AV1.

AV2

2 C H A M A D A / A V F Todos os contedos estudados Todos os contedos estudados no semestre le4vo. no semestre le4vo.

I - Prova (Obrigatria - presencial, individual e I Prova (Obrigatria e compe 50% da nota da I Prova (Obrigatria - sem consulta. Compe 100% na nota). AV2) presencial, individual e sem consulta. Compe 100% na A Prova presencial e individual ser aplicada para Prova Colegiada para disciplinas selecionadas. As nota). todas as turmas, exceto NDC e disciplinas disciplinas sem prova colegiada aplicaro provas denidas pela coordenao de curso. presenciais e individuais. Sero provas discursivas Segunda Chamada permiAda e/ou objeAvas. Se objeAvas, devero ser somente para uma nica Sero provas discursivas e/ou objeAvas. Se aplicadas pelo 28H, no mesmo padro de prova avaliao (AV1 ou AV2), desde objeAvas, devero ser aplicadas pelo 28H, no colegiada. que por moAvo devidamente mesmo padro de prova colegiada. jusAcado. O b s e r v a o : A S e g u n d a II - AAvidade PrAca Supervisionada (Obrigatria Chamada aplica-se AV1 ou e compe at 50% da nota da AV2, a critrio do AV2 como um todo e no, somente a uma das partes que professor) compem essas avaliaes. Ou III Outras AAvidades (Opcional. A critrio de seja, no existe Segunda cada professor, outras formas de avaliao Chamada de provas, aAvidades podero ser uAlizadas para completar a nota de prAcas e outras aAvidades de AV2). forma isolada. O aluno com direito a Segunda Chamada aquele que obteve nota zero por no ter realizado a AV 1 ou AV2 ( e no, nota zero numa prova, ou numa aAvidade supervisionada ou numa outra aAvidade).

Profo. Anderson asantos@unicarioca.edu.br

18/02/13

AV1 Contedos estudados at a data da AV1.

AV2

2 C H A M A D A / A V F Todos os contedos estudados Todos os contedos estudados no semestre le4vo. no semestre le4vo.

I - Prova (Obrigatria - presencial, individual e I Prova (Obrigatria e compe 50% da nota da I Prova (Obrigatria - sem consulta. Compe 100% na nota). AV2) presencial, individual e sem consulta. Compe 100% na A Prova presencial e individual ser aplicada para Prova Colegiada para disciplinas selecionadas. As nota). todas as turmas, exceto NDC e disciplinas disciplinas sem prova colegiada aplicaro provas denidas pela coordenao de curso. presenciais e individuais. Sero provas discursivas Segunda Chamada permiAda e/ou objeAvas. Se objeAvas, devero ser somente para uma nica Sero provas discursivas e/ou objeAvas. Se aplicadas pelo 28H, no mesmo padro de prova avaliao (AV1 ou AV2), desde objeAvas, devero ser aplicadas pelo 28H, no colegiada. que por moAvo devidamente mesmo padro de prova colegiada. jusAcado. O b s e r v a o : A S e g u n d a II - AAvidade PrAca Supervisionada (Obrigatria Chamada aplica-se AV1 ou e compe at 50% da nota da AV2, a critrio do AV2 como um todo e no, somente a uma das partes que professor) compem essas avaliaes. Ou III Outras AAvidades (Opcional. A critrio de seja, no existe Segunda cada professor, outras formas de avaliao Chamada de provas, aAvidades podero ser uAlizadas para completar a nota de prAcas e outras aAvidades de AV2). forma isolada. O aluno com direito a Segunda Chamada aquele que obteve nota zero por no ter realizado a AV 1 ou AV2 ( e no, nota zero numa prova, ou numa aAvidade supervisionada ou numa outra aAvidade).

Profo. Anderson asantos@unicarioca.edu.br

18

Profo. Anderson asantos@unicarioca.edu.br

18/02/13

19

28 Horas
rea dos fruns rea de comunicao da turma e para sanar dvidas gerais e sobre a Atividade Supervisionada.

Profo. Anderson asantos@unicarioca.edu.br

20

28 Horas
Sobre o professor Informaes sobre o professor, como currculo Lattes, email e reas de interesse.

Profo. Anderson asantos@unicarioca.edu.br

10

18/02/13

21

28 Horas
Midiateca Local onde sero disponibilizados links e apostilas de interesse do aluno para o aprendizado

Profo. Anderson asantos@unicarioca.edu.br

22

28 Horas
Material Didtico Local onde est: Transparncias Plano de Ensino Plano de Estudos/Aula

Profo. Anderson asantos@unicarioca.edu.br

11

18/02/13

23

28 Horas
Atividades para compor a primeira avaliao informaes sobre a AV1

Profo. Anderson asantos@unicarioca.edu.br

24

28 Horas
Atividades para compor a segunda avaliao informaes sobre a AV2 informaes sobre a atividade supervisionada

Profo. Anderson asantos@unicarioca.edu.br

12

18/02/13

25

28 Horas
Segunda Chamada informaes sobre a segunda chamada

Profo. Anderson asantos@unicarioca.edu.br

26

28 Horas
Avaliao Final informaes sobre a avaliao final

Profo. Anderson asantos@unicarioca.edu.br

13

18/02/13

27

28 Horas
Atividade Supervisionada informaes sobre a atividade supervisionada

Profo. Anderson asantos@unicarioca.edu.br

28

Atividade Supervisionada
A atividade supervisionada tem a caracterstica de ser um trabalho acompanhado pelo Professor, assim, quaisquer dvidas devero ser sanadas ou nas aulas ou atravs de mensagens no 28 horas que sero verificadas com at uma semana da sua postagem. Implementar na Linguagem Pascal uma calculadora que realize as seguintes contas:
a) soma b) subtrao c) multiplicao d) diviso

CONDIES DE EXECUO:

- Trabalho dever ser entregue pelo 28 horas, seguindo a norma de trabalhos de TCC da UniCarioca. Na capa deste trabalho dever ter o nome completo e matrcula de todos os componentes dos grupos. - Os grupos podero ter at 5 pessoas. - Trabalhos iguais sero consideradas cpias e tero o grau ZERO. - Entrega: 17 de Junho de 2013, at s 23:55h.

Profo. Anderson asantos@unicarioca.edu.br

14

18/02/13

CONTROLE DA PRESENA DO ALUNO. Importante lanar a presena dos alunos as aulas. Cobrar o documento que justifique a falta.

Justificativa de faltas: - Atestado mdico: prprio(a) ou de familiar - Atestado da empresa

Dever conter: nome completo, data e hora. Pode enviar por e-mail, informando o nome da disciplina.

Profo. Anderson asantos@unicarioca.edu.br

COBRANA DE TRABALHOS NOS MOLDES ACADMICOS (Normas ABNT). Ateno especial ao solicitar resumos e resenhas. Indicar tipos e exemplos, principalmente, para alunos que no cumpriram Metodologia Cientfica.

15

18/02/13

31

Plano de Aula

04/02: Apresentao da disciplina 11/02: Carnaval 18/02: Unidade 1 - 1.1 Conceitos Bsicos de Programao Estruturada; 25/02: Unidade 1 - 1.2 Estrutura de um Programa em Pascal; 1.3 Ambiente de Desenvolvimento Integrado (IDE} do Turbo Pascal; 2.1 Palavras Reservadas; 2.2 Operadores Aritmticos, Relacionais e Lgicos
Profo. Anderson asantos@unicarioca.edu.br

32

Plano de Aula

04/03: 2.2 Operadores Aritmticos, Relacionais e Lgicos; 2.3 Tipos Primitivos em Pascal; 2.4 Comandos de Entrada e Sada de Dados 11/03: 2.5 Atribuio de Valores; 2.6 Diretivas de Compilao; 2.7 Mensagens de Erro 18/03: 3.1 Estrutura seqencial; 3.2 Estrutura de Deciso 25/03: 3.1 Estrutura seqencial; 3.2 Estrutura de Deciso; 3.3 Estrutura de Repetio; 3.4 Combinao de Estruturas

Profo. Anderson asantos@unicarioca.edu.br

16

18/02/13

33

Plano de Aula

12/04: 3.3 Estrutura de Repetio; 3.4 Combinao de Estruturas 08/04: AV1 15/04: Vista e Resoluo da Prova AV1 22/04: Feriado 29/04: 3.3 Estrutura de Repetio; 3.4 Combinao de Estruturas
Profo. Anderson asantos@unicarioca.edu.br

34

Plano de Aula

06/05: 4.1 Regras Gerais para a Criao de Sub-rotinas; 4.2 Passagem de parmetro por parmetro por valor e referncia 13/05: Semana UniCarreira 20/05: 4.1 Regras Gerais para a Criao de Sub-rotinas; 4.2 Passagem de parmetro por parmetro por valor e referncia 27/05: 4.3 Estrutura e Emprego dos Procedimentos ('Procedures); 4.4 Estrutura e Emprego das Funes ('Functions')
Profo. Anderson asantos@unicarioca.edu.br

17

18/02/13

35

Plano de Aula

03/06: 4.3 Estrutura e Emprego dos Procedimentos ('Procedures); 4.4 Estrutura e Emprego das Funes ('Functions') 10/06: Exerccios 17/06: AV2 24/06: 2a Chamada
Profo. Anderson asantos@unicarioca.edu.br

36

Plano de Aula

01/07: AVF

Profo. Anderson asantos@unicarioca.edu.br

18

18/02/13

37

Plano de Aula

04/02: Apresentao da disciplina 11/02: Carnaval 18/02: Unidade 1 - 1.1 Conceitos Bsicos de Programao Estruturada; 25/02: Unidade 1 - 1.2 Estrutura de um Programa em Pascal; 1.3 Ambiente de Desenvolvimento Integrado (IDE} do Turbo Pascal; 2.1 Palavras Reservadas; 2.2 Operadores Aritmticos, Relacionais e Lgicos
Profo. Anderson asantos@unicarioca.edu.br

38

Atividade Supervisionada
A atividade supervisionada tem a caracterstica de ser um trabalho acompanhado pelo Professor, assim, quaisquer dvidas devero ser sanadas ou nas aulas ou atravs de mensagens no 28 horas que sero verificadas com at uma semana da sua postagem. Implementar na Linguagem Pascal uma calculadora que realize as seguintes contas:
a) soma b) subtrao c) multiplicao d) diviso

CONDIES DE EXECUO:

- Trabalho dever ser entregue pelo 28 horas, seguindo a norma de trabalhos de TCC da UniCarioca. Na capa deste trabalho dever ter o nome completo e matrcula de todos os componentes dos grupos. - Os grupos podero ter at 5 pessoas. - Trabalhos iguais sero consideradas cpias e tero o grau ZERO. - Entrega: 17 de Junho de 2013, at s 23:55h.

Profo. Anderson asantos@unicarioca.edu.br

19

18/02/13

39
Unidade 1: Introduo
Seo 1.1: Conceitos Bsicos de Programao Estruturada ;

Nascimento: 15 de Fevereiro de 1934

Criada em 1968 pelo Prof. Niklaus Wirth (Sua) Homenagem a Blaise Pascal (1623-1662) Marco na evoluo das Linguagem de Programao Linguagem simples Favorece o uso de boas tcnicas de programao

Pascal and its Successors - Niklaus Wirth


http://www.swissdelphicenter.ch/en/niklauswirth.php

Nascimento: 19 de junho de 1623

Profo. Anderson asantos@unicarioca.edu.br

40

Unidade 1: Introduo

Seo 1.1: Conceitos Bsicos de Programao Estruturada ;

Algoritmo: Conjunto de etapas finitas, ordenadamente definidas com o propsito de obter solues para um determinado problema.

Programa: Formalizao de um algoritmo em uma linguagem inteligvel pelo computador. escrito em uma linguagem de alto nvel, gerando o programa fonte.

Profo. Anderson asantos@unicarioca.edu.br

20

18/02/13

41

Plano de Aula

04/02: Apresentao da disciplina 11/02: Carnaval 18/02: Unidade 1 - 1.1 Conceitos Bsicos de Programao Estruturada; 25/02: Unidade 1 - 1.2 Estrutura de um Programa em Pascal; 1.3 Ambiente de Desenvolvimento Integrado (IDE} do Turbo Pascal; 2.1 Palavras Reservadas; 2.2 Operadores Aritmticos, Relacionais e Lgicos
Profo. Anderson asantos@unicarioca.edu.br

42

Atividade Supervisionada
A atividade supervisionada tem a caracterstica de ser um trabalho acompanhado pelo Professor, assim, quaisquer dvidas devero ser sanadas ou nas aulas ou atravs de mensagens no 28 horas que sero verificadas com at uma semana da sua postagem. Implementar na Linguagem Pascal uma calculadora que realize as seguintes contas:
a) soma b) subtrao c) multiplicao d) diviso

CONDIES DE EXECUO:

- Trabalho dever ser entregue pelo 28 horas, seguindo a norma de trabalhos de TCC da UniCarioca. Na capa deste trabalho dever ter o nome completo e matrcula de todos os componentes dos grupos. - Os grupos podero ter at 5 pessoas. - Trabalhos iguais sero consideradas cpias e tero o grau ZERO. - Entrega: 17 de Junho de 2013, at s 23:55h.

Profo. Anderson asantos@unicarioca.edu.br

21

18/02/13

43

Unidade 1: Introduo
program x; var par: integer; soma: integer; begin soma:=0; par:=0; while par<=200 do begin

Seo 1.2: Estrutura de um Programa em Pascal ;

{ inicializa } { loop da soma }

soma:= soma + par; par:= par + 2; end; writeln (soma); end.


Profo. Anderson asantos@unicarioca.edu.br

44

Unidade 1: Introduo
program x; var par: integer; soma: integer; begin soma:=0; par:=0; while par<=200 do begin

Seo 1.2: Estrutura de um Programa em Pascal ;

CABEALHO

{ inicializa } { loop da soma }

soma:= soma + par; par:= par + 2; end; writeln (soma); end.


Profo. Anderson asantos@unicarioca.edu.br

22

18/02/13

45

Unidade 1: Introduo

Seo 1.2: Estrutura de um Programa em Pascal ;

CABEALHO
utilizada para se fazer a identificao do programa com um nome; atribudo pela instruo program seguida de um nome e um smbolo ponto-e-vrgula (;) no final; exemplo program CALCULA_AREA;

Profo. Anderson asantos@unicarioca.edu.br

46

Unidade 1: Introduo
program x; var par: integer; soma: integer; begin soma:=0; par:=0; while par<=200 do begin

Seo 1.2: Estrutura de um Programa em Pascal ;

REA DE DECLARAES

{ inicializa } { loop da soma }

soma:= soma + par; par:= par + 2; end; writeln (soma); end.


Profo. Anderson asantos@unicarioca.edu.br

23

18/02/13

47

Unidade 1: Introduo

Seo 1.2: Estrutura de um Programa em Pascal ;

REA DE DECLARAES:
utilizada para validar o uso de qualquer tipo de identificador que no seja predefinido; subdividida em sete sub-reas: uses, label, const, type, var, procedure e function; var utilizada na declarao das variveis que sero utilizadas durante a execuo de um programa;

var NOME : string; IDADE : integer; ALTURA, PESO : real;


Profo. Anderson asantos@unicarioca.edu.br

48

Unidade 1: Introduo
program x; var par: integer; soma: integer; begin soma:=0; par:=0; while par<=200 do begin par:= par + 2; end; writeln (soma); end.

Seo 1.2: Estrutura de um Programa em Pascal ;

{ inicializa } { loop da soma }

soma:= soma + par;

CORPO DO PROGRAMA

Profo. Anderson asantos@unicarioca.edu.br

24

18/02/13

49

Unidade 1: Introduo

Seo 1.2: Estrutura de um Programa em Pascal ;

CORPO DO PROGRAMA:
esta rea tem incio com a instruo begin e finalizada pela instruo end. begin
instrues; (...)

end. Nesta rea, podero existir, dependendo da necessidade, vrios blocos.

Profo. Anderson asantos@unicarioca.edu.br

50

Unidade 1: Introduo
program x; var par: integer; soma: integer; begin soma:=0; par:=0; while par<=200 do begin par:= par + 2; end; writeln (soma); end.

Seo 1.2: Estrutura de um Programa em Pascal ;

CABEALHO REA DE DECLARAES

{ inicializa } { loop da soma }

soma:= soma + par;

CORPO DO PROGRAMA

Profo. Anderson asantos@unicarioca.edu.br

25

18/02/13

51

Unidade 1: Introduo

Seo 1.2: Estrutura de um Programa em Pascal ;

program MEU_PRIMEIRO_PROGRAMA; CABEALHO REA DE DECLARAES begin writeln(Ola Mundo!); end. CORPO DO PROGRAMA

Profo. Anderson asantos@unicarioca.edu.br

52

Unidade 1: Introduo

Seo 1.3: Ambiente de Desenvolvimento Integrado (IDE} do Turbo Pascal ;

Compilador que vamos usar: Pascalzim

http://pascalzim.tripod.com/
Requisitos Minimos : Microsoft Windows Utilize o Winzip (ou outro utilitrio capaz de descompactar arquivos zip) para descompactar o arquivo que voc pegou no site, em uma pasta de sua preferncia. Execute o programa clicando em Pzim.exe.
Profo. Anderson asantos@unicarioca.edu.br

26

18/02/13

53

Unidade 1: Introduo

Seo 1.3: Ambiente de Desenvolvimento Integrado (IDE} do Turbo Pascal ;

Profo. Anderson asantos@unicarioca.edu.br

54

Unidade 1: Introduo

Seo 1.3: Ambiente de Desenvolvimento Integrado (IDE} do Turbo Pascal ;

Menu Salvar Abrir rea de Trabalho Executar


Profo. Anderson asantos@unicarioca.edu.br

27

18/02/13

55

Unidade 1: Introduo

Seo 1.3: Ambiente de Desenvolvimento Integrado (IDE} do Turbo Pascal ;

EXERCCIOS: program MEU_PRIMEIRO_PROGRAMA; begin writeln(Ola Mundo!); end.

Profo. Anderson asantos@unicarioca.edu.br

56

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.1: Palavras Reservadas;

So palavras utilizadas pela linguagem, que no podem ser usadas pelos desenvolvedores.
unicarioca leitura escrita read write

Profo. Anderson asantos@unicarioca.edu.br

28

18/02/13

57

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.1: Palavras Reservadas;

Profo. Anderson asantos@unicarioca.edu.br

58

Plano de Aula

04/03: 2.2 Operadores Aritmticos, Relacionais e Lgicos; 2.3 Tipos Primitivos em Pascal; 2.4 Comandos de Entrada e Sada de Dados 11/03: 2.5 Atribuio de Valores; 2.6 Diretivas de Compilao; 2.7 Mensagens de Erro 18/03: 3.1 Estrutura seqencial; 3.2 Estrutura de Deciso 25/03: 3.1 Estrutura seqencial; 3.2 Estrutura de Deciso; 3.3 Estrutura de Repetio; 3.4 Combinao de Estruturas

Profo. Anderson asantos@unicarioca.edu.br

29

18/02/13

59

Atividade Supervisionada
A atividade supervisionada tem a caracterstica de ser um trabalho acompanhado pelo Professor, assim, quaisquer dvidas devero ser sanadas ou nas aulas ou atravs de mensagens no 28 horas que sero verificadas com at uma semana da sua postagem. Implementar na Linguagem Pascal uma calculadora que realize as seguintes contas:
a) soma b) subtrao c) multiplicao d) diviso

CONDIES DE EXECUO:

- Trabalho dever ser entregue pelo 28 horas, seguindo a norma de trabalhos de TCC da UniCarioca. Na capa deste trabalho dever ter o nome completo e matrcula de todos os componentes dos grupos. - Os grupos podero ter at 5 pessoas. - Trabalhos iguais sero consideradas cpias e tero o grau ZERO. - Entrega: 17 de Junho de 2013, at s 23:55h.

Profo. Anderson asantos@unicarioca.edu.br

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

60

Prioridade das Operaes

Profo. Anderson asantos@unicarioca.edu.br

30

18/02/13

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

61

Tipos de Expresses
Numrica
Quando os seus operandos so numricos (inteiros ou reais) e o resultado tambm um valor numrico;

Literal
Quando os seus operandos so literais do tipo string e o resultado tambm um valor literal; S existe um nico operador para se usar em expresses literais Concatenao ( + );

Boolena
Quando seu resultado do tipo boolean (TRUE ou FALSE), podendo seu operando ser de qualquer tipo de dados.
Profo. Anderson asantos@unicarioca.edu.br

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

62

Tipos de Operadores
Operador de Atribuio Operadores Aritmticos Operador de Concatenao Operadores Relacionais Operadores Lgicos

Profo. Anderson asantos@unicarioca.edu.br

31

18/02/13

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

63

Operador de Atribuio

Profo. Anderson asantos@unicarioca.edu.br

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

64

Operadores Aritmticos

Profo. Anderson asantos@unicarioca.edu.br

32

18/02/13

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

65

Operador de Concatenao

Anderson Santos - asantos@unicarioca.edu.br

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

66

Operadores Relacionais

Profo. Anderson asantos@unicarioca.edu.br

33

18/02/13

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

67

Profo. Anderson asantos@unicarioca.edu.br

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

68

Operadores Lgicos

Anderson Santos - asantos@unicarioca.edu.br

34

18/02/13

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

69

Operadores Lgicos

Anderson Santos - asantos@unicarioca.edu.br

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

70

Funes Pr-definidas

Anderson Santos - asantos@unicarioca.edu.br

35

18/02/13

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.2: Operadores Aritmticos, Relacionais e Lgicos ;

71

Anderson Santos - asantos@unicarioca.edu.br

72

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.3: Tipos Primitivos em Pascal;

Numricos (inteiros e reais) Caracteres (letras e smbolos) Lgicos (verdadeiro ou falso)

Profo. Anderson asantos@unicarioca.edu.br

36

18/02/13

73

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.3: Tipos Primitivos em Pascal;

Inteiros Reais Caracteres Lgicos

var nome : string[50]; nota1, nota2 : integer; media : real; aprovado : boolean;

Profo. Anderson asantos@unicarioca.edu.br

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.4: Comandos de Entrada e Sada de Dados;

74

Entrada e Sada (E/S)


As aes que executam estas tarefas so:
Obter dados externos:
leia(dado1, , dadon);

Apresentar dados internos:


imprima(dado1, , dadon);

Exemplos:

leia(NOME, IDADE); leia(PRODUTO, QUANTIDADE, VALOR); imprima(SOMA, MDIA); imprima(Nome: , NOME, Idade: , IDADE);
Anderson Santos - asantos@unicarioca.edu.br

37

18/02/13

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.4: Comandos de Entrada e Sada de Dados;

75

Comandos de entrada e sada


Leitura

program leitura; 1 6,5 2 7,0 3 8,0 4 9,0 var n: integer; 5 5,0 6 4,0 nota: real; 7 3,0 8 9,5 begin readln (n, nota); n, nota ? readln (n, nota); read (n, nota); read (n, nota); { a diferena que o readln gera uma mudana de linha aps a leitura dos valores } end.
Anderson Santos - asantos@unicarioca.edu.br

Entrada:

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.4: Comandos de Entrada e Sada de Dados;

76

Comandos de entrada e sada


Escrita

var n, p: string[4]; x, a: integer; begin x := 0; read (n,a); x := x + a; p := n; write (p,x); a := x + a; writeln (a); x := x + a; write (n, x, a); end.
Anderson Santos - asantos@unicarioca.edu.br

Entrada: Joao25 Sada ?

38

18/02/13

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.4: Comandos de Entrada e Sada de Dados;

77

Comandos de entrada e sada


Formatao na escrita

program formata; var a,b: real; k,m: char; begin a:=3.2; b:=5.81; k:=x; m:=y; write (a:4:2, k:2, +, b:5:2, m:2, =, a+b:6:3); end.
Sada=3.20_x +_5.81_y =_9.010
Anderson Santos - asantos@unicarioca.edu.br

78

Plano de Aula

04/03: 2.2 Operadores Aritmticos, Relacionais e Lgicos; 2.3 Tipos Primitivos em Pascal; 2.4 Comandos de Entrada e Sada de Dados 11/03: 2.5 Atribuio de Valores; 2.6 Diretivas de Compilao; 2.7 Mensagens de Erro 18/03: 3.1 Estrutura seqencial; 3.2 Estrutura de Deciso 25/03: 3.1 Estrutura seqencial; 3.2 Estrutura de Deciso; 3.3 Estrutura de Repetio; 3.4 Combinao de Estruturas

Profo. Anderson asantos@unicarioca.edu.br

39

18/02/13

79

Atividade Supervisionada
A atividade supervisionada tem a caracterstica de ser um trabalho acompanhado pelo Professor, assim, quaisquer dvidas devero ser sanadas ou nas aulas ou atravs de mensagens no 28 horas que sero verificadas com at uma semana da sua postagem. Implementar na Linguagem Pascal uma calculadora que realize as seguintes contas:
a) soma b) subtrao c) multiplicao d) diviso

CONDIES DE EXECUO:

- Trabalho dever ser entregue pelo 28 horas, seguindo a norma de trabalhos de TCC da UniCarioca. Na capa deste trabalho dever ter o nome completo e matrcula de todos os componentes dos grupos. - Os grupos podero ter at 5 pessoas. - Trabalhos iguais sero consideradas cpias e tero o grau ZERO. - Entrega: 17 de Junho de 2013, at s 23:55h.

Profo. Anderson asantos@unicarioca.edu.br

80

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.5: Atribuio de Valores;

Identificador := expresso var A, B, X, Y: integer; K, Media: real; teste: boolean; cor: string; { tipo pr-definido }

K:=1; A:=B; Media := A+B/2; teste := (X=0) and (Y<>2); cor := verde;
Profo. Anderson asantos@unicarioca.edu.br

40

18/02/13

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.6: Diretivas de Compilao;

81

Diretivas de Compilao
Algumas funcionalidades do compilador so controladas atravs de comandos especiais chamadas diretivas de compilao.

Formato:

{$NOME}

Existem trs tipos: switch directives, parameter directives e conditional directives

Anderson Santos - asantos@unicarioca.edu.br

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.6: Diretivas de Compilao;

82

Diretivas de Compilao
Switch Directives
Podem ser locais ou globais. As locais afetam apenas aonde so definidas, enquanto que as globais afetam todo o cdigo. Servem para ligar ou desligar funcionalidades gerais do compilador. Exemplos: Alinhamento de dados {$A+}, avaliao de expresses booleanas {$B+}, debug {$I+}, etc.

Anderson Santos - asantos@unicarioca.edu.br

41

18/02/13

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.6: Diretivas de Compilao;

83

Diretivas de Compilao
Parameter Directives
Informam aes especficas ao compilador, como por exemplo, incluir um arquivo antes do cdigo ser compilado {$I nome_do_arquivo}

Anderson Santos - asantos@unicarioca.edu.br

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.6: Diretivas de Compilao;

84

Diretivas de Compilao
Conditional Directives
Permite que diferentes cdigos possam ser implementados no mesmo cdigo fonte.
{$IFDEF Debug} Writeln('X = " X); {$ENDIF} {$IFDEF CPU8?} {$N+} type Real = Double; {$ELSE} {$N-} type Single = Real; Double = Real; Extended = Real; Comp = Real; {$ENDIF}

Anderson Santos - asantos@unicarioca.edu.br

42

18/02/13

85

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.7: Mensagens de Erro;

Erro sintAco X Erro semnAco


Erro SintAco: erro na estrutura da programao Erro SemnAco: erro na estrutura da lgica do programa

Profo. Anderson asantos@unicarioca.edu.br

86

Unidade 2: Peculiaridades da Linguagem Pascal


Seo 2.7: Mensagens de Erro;

Profo. Anderson asantos@unicarioca.edu.br

43

18/02/13

87

Plano de Aula

04/03: 2.2 Operadores Aritmticos, Relacionais e Lgicos; 2.3 Tipos Primitivos em Pascal; 2.4 Comandos de Entrada e Sada de Dados 11/03: 2.5 Atribuio de Valores; 2.6 Diretivas de Compilao; 2.7 Mensagens de Erro 18/03: 3.1 Estrutura seqencial; 3.2 Estrutura de Deciso 25/03: 3.1 Estrutura seqencial; 3.2 Estrutura de Deciso; 3.3 Estrutura de Repetio; 3.4 Combinao de Estruturas

Profo. Anderson asantos@unicarioca.edu.br

88

Atividade Supervisionada
A atividade supervisionada tem a caracterstica de ser um trabalho acompanhado pelo Professor, assim, quaisquer dvidas devero ser sanadas ou nas aulas ou atravs de mensagens no 28 horas que sero verificadas com at uma semana da sua postagem. Implementar na Linguagem Pascal uma calculadora que realize as seguintes contas:
a) soma b) subtrao c) multiplicao d) diviso

CONDIES DE EXECUO:

- Trabalho dever ser entregue pelo 28 horas, seguindo a norma de trabalhos de TCC da UniCarioca. Na capa deste trabalho dever ter o nome completo e matrcula de todos os componentes dos grupos. - Os grupos podero ter at 5 pessoas. - Trabalhos iguais sero consideradas cpias e tero o grau ZERO. - Entrega: 17 de Junho de 2013, at s 23:55h.

Profo. Anderson asantos@unicarioca.edu.br

44

18/02/13

Unidade 3: Estruturas de Programao


Seo 3.1 Estrutura seqencial;

89

Estrutura Sequncial
incio inteiro: A, B; leia (A,B); C:= (A+B)*B; imprima (C); fim.

Anderson Santos - asantos@unicarioca.edu.br

Unidade 3: Estruturas de Programao


Seo 3.1 Estrutura seqencial;

90

Sequncia
program Calculo; var A,B,C: real; begin read (A, B); C:=(A+B)*B; write (A, B, C); end.
Anderson Santos - asantos@unicarioca.edu.br

45

18/02/13

Unidade 3: Estruturas de Programao


Seo 3.2 Estrutura de Deciso;

91

Estruturas de controle: Condio


incio inteiro: A, B; A1; B2; se A>B ento A5; seno A10; fim se; fim.
Anderson Santos - asantos@unicarioca.edu.br

Unidade 3: Estruturas de Programao


Seo 3.2 Estrutura de Deciso;

92

Condio: IF/ELSE
program x; var A, B, C, menor: real; begin if (A<B) and (A<C) then menor:=A else if B<C then menor:=B else menor:=C; write (menor); end.
Anderson Santos - asantos@unicarioca.edu.br

simples if condicao then bloco;

composta if condicao then bloco1 else bloco2;

46

18/02/13

Unidade 3: Estruturas de Programao


Seo 3.2 Estrutura de Deciso;

93

Condio: IF/ELSE
program x; var nome: string; nota1, nota2, nota3: real; media: real; aprovado: boolean; begin write (Digite seu nome: ); readln (nome); write (Digite suas 3 notas: ); readln (nota1, nota2, nota3); media := (nota1+nota2+nota3)/3; aprovado:=(media>=6);
if aprovado then begin writeln (Parabens , nome, voc est aprovado !); writeln (Sua mdia foi , media:5:2); end else begin writeln (nome, , voc est reprovado !); writeln (Sua mdia foi , media:5:2); end; end.

Anderson Santos - asantos@unicarioca.edu.br

Unidade 3: Estruturas de Programao


Seo 3.2 Estrutura de Deciso;

94

Condio: CASE
CASE <expresso> OF <opo1> : <comando1>; <opo2> : <comando2>; ... ... <opoN> : <comandoN>; [ ELSE <comando>; ] END;

Anderson Santos - asantos@unicarioca.edu.br

47

18/02/13

Unidade 3: Estruturas de Programao


Seo 3.2 Estrutura de Deciso;

95

Condio: CASE
program x; var letra: char; begin read (letra); case letra of a..z : letra := chr ( ord (letra) - 32 ); : letra := ; ... : begin writeln(No usado na lngua portuguesa!); letra:= ?; end; else begin writeln(No est na lista dos aceitos...); letra:= ?; end; end; end.
Anderson Santos - asantos@unicarioca.edu.br

96

Plano de Aula

12/04: 3.3 Estrutura de Repetio; 3.4 Combinao de Estruturas 08/04: AV1 15/04: Vista e Resoluo da Prova AV1 22/04: Feriado 29/04: 3.3 Estrutura de Repetio; 3.4 Combinao de Estruturas
Profo. Anderson asantos@unicarioca.edu.br

48

18/02/13

97

Atividade Supervisionada
A atividade supervisionada tem a caracterstica de ser um trabalho acompanhado pelo Professor, assim, quaisquer dvidas devero ser sanadas ou nas aulas ou atravs de mensagens no 28 horas que sero verificadas com at uma semana da sua postagem. Implementar na Linguagem Pascal uma calculadora que realize as seguintes contas:
a) soma b) subtrao c) multiplicao d) diviso

CONDIES DE EXECUO:

- Trabalho dever ser entregue pelo 28 horas, seguindo a norma de trabalhos de TCC da UniCarioca. Na capa deste trabalho dever ter o nome completo e matrcula de todos os componentes dos grupos. - Os grupos podero ter at 5 pessoas. - Trabalhos iguais sero consideradas cpias e tero o grau ZERO. - Entrega: 17 de Junho de 2013, at s 23:55h.

Profo. Anderson asantos@unicarioca.edu.br

Unidade 3: Estruturas de Programao


Seo 3.3 Estrutura de Repetio;

98

Estruturas de controle: Repetio


incio inteiro: A, B, I, C; A1; B1; I1; enquanto I<5 faa CA+B; AB; BC; I I+1; fim enquanto; fim.
Anderson Santos - asantos@unicarioca.edu.br

49

18/02/13

Unidade 3: Estruturas de Programao


Seo 3.3 Estrutura de Repetio;

99

Repetio: while (enquanto)


program x; var resp: char; begin resp := X; while ( resp <> N ) and ( resp <>n ) do begin writeln (Ol!); write (Novamente (S/N) ? ); readln (Resp); end; end.
Anderson Santos - asantos@unicarioca.edu.br

while condio do begin comandos; end;

Unidade 3: Estruturas de Programao


Seo 3.3 Estrutura de Repetio;

10 0

Repetio: while (enquanto)


... readln (Media); { parar com -1 (flag=sinal) } while Media <> -1 do begin if Media >= 6.0 then writeln (Aprovado) else writeln (Reprovado); readln (Media); end; ...
Anderson Santos - asantos@unicarioca.edu.br

50

18/02/13

Unidade 3: Estruturas de Programao


Seo 3.3 Estrutura de Repetio;

10 1

Repetio: while (enquanto) - ERROS!


... WHILE Idade < 20 { Lao Infinito! } DO Salario := Salario Desconto; ... X := 1.0; WHILE X < 10.0 { Condio mal definida } DO X := X 0.1; ... Resp := ?; { Lao Infinito! } WHILE Resp <> S DO WriteLn (Novamente (S/N) ? ); ReadLn (Resp); ...
Anderson Santos - asantos@unicarioca.edu.br

Unidade 3: Estruturas de Programao


Seo 3.3 Estrutura de Repetio;

10 2

Repetio: for (para...)


program x; var for var := inicial to final do begin aluno: integer; comandos; nota1, nota2: real; end; begin for aluno := 1 to 5 do begin readln (nota1, nota2); writeln (Mdia = , (nota1+nota2)/2); end; end.
Anderson Santos - asantos@unicarioca.edu.br

51

18/02/13

Unidade 3: Estruturas de Programao


Seo 3.3 Estrutura de Repetio;

10 3

Repetio: for (para...)


program x; var f, i, N: integer; begin read (N); f:=1; for i:=1 to N do f:=f*i; write (f); end.
Anderson Santos - asantos@unicarioca.edu.br

Unidade 3: Estruturas de Programao


Seo 3.3 Estrutura de Repetio;

10 4

Repetio: for (para...)


program x; var c: char; begin for c:=Z downto A do write (c); end.

Anderson Santos - asantos@unicarioca.edu.br

52

18/02/13

Unidade 3: Estruturas de Programao


Seo 3.3 Estrutura de Repetio;

10 5

Repetio: repeat ... until


repeat writeln (Ol!); repeat write (Novamente (S/N) ? ); comandos; readln (resp); until ( resp = N ) or ( resp =n ) ; until condicao; ... repeat { -1 pra o programa } begin readln (Media); if (Media <> -1) then if ( Media >= 6.0 ) then writeln (Aprovado) else writeln (Reprovado); end; until Media = -1 ; ...
Anderson Santos - asantos@unicarioca.edu.br

Unidade 3: Estruturas de Programao


Seo 3.4 Combinao de Estruturas;

106

Combinao de estruturas
a combinao de todas as estruturas anteriores; Exemplo: for i:=1 to 10 do begin if (i div 2 = 0) then write( par!) else write( mpar!); end;
Anderson Santos - asantos@unicarioca.edu.br

53

18/02/13

10 7

Plano de Aula

06/05: 4.1 Regras Gerais para a Criao de Sub-rotinas; 4.2 Passagem de parmetro por parmetro por valor e referncia 13/05: Semana UniCarreira 20/05: 4.1 Regras Gerais para a Criao de Sub-rotinas; 4.2 Passagem de parmetro por parmetro por valor e referncia 27/05: 4.3 Estrutura e Emprego dos Procedimentos ('Procedures); 4.4 Estrutura e Emprego das Funes ('Functions')
Profo. Anderson asantos@unicarioca.edu.br

10 8

Atividade Supervisionada
A atividade supervisionada tem a caracterstica de ser um trabalho acompanhado pelo Professor, assim, quaisquer dvidas devero ser sanadas ou nas aulas ou atravs de mensagens no 28 horas que sero verificadas com at uma semana da sua postagem. Implementar na Linguagem Pascal uma calculadora que realize as seguintes contas:
a) soma b) subtrao c) multiplicao d) diviso

CONDIES DE EXECUO:

- Trabalho dever ser entregue pelo 28 horas, seguindo a norma de trabalhos de TCC da UniCarioca. Na capa deste trabalho dever ter o nome completo e matrcula de todos os componentes dos grupos. - Os grupos podero ter at 5 pessoas. - Trabalhos iguais sero consideradas cpias e tero o grau ZERO. - Entrega: 17 de Junho de 2013, at s 23:55h.

Profo. Anderson asantos@unicarioca.edu.br

54

18/02/13

109

Unidade 4: Sub-rotinas ('Procedures' e 'Functions')


Seo 4.1 Regras Gerais para a Criao de Sub-rotinas ;

Uma subrotina um sub-programa com variveis e comandos prprios e que, para ser executada, precisa ser chamada pelo programa principal. Na linguagem PASCAL temos dois tipos de subrotinas:
Procedimentos (procedures); Funes (functions).

A funo retorna um valor, o procedimento no.


Profo. Anderson asantos@unicarioca.edu.br

Unidade 4: Sub-rotinas ('Procedures' e 'Functions')

110

Seo 4.2 Passagem de parmetro por parmetro por valor e referncia;

Nomenclatura dos parmetros


Parmetros
reais: chamadora; formais: subrotina.

Procedure Troca (var A,B: real); Troca ( x,y );

Anderson Santos - asantos@unicarioca.edu.br

55

18/02/13

Unidade 4: Sub-rotinas ('Procedures' e 'Functions')

111

Seo 4.2 Passagem de parmetro por parmetro por valor e referncia;

Passagem de parmetros
Passagem
por valor: Apenas

o valor transferido. Ento, as alteraes feitas nos parmetros formais (da subrotina) no alteram os reais (chamadora). endereo do parmetro real transferido. Ento, as alteraes nos parmetros formais da subrotina na verdade esto sendo feitas sobre os parmetros reais. por referncia

por referncia: O

Declarao

procedure inicializa ( var A,B: real; C: real; var D: integer ); por valor
Anderson Santos - asantos@unicarioca.edu.br

Unidade 4: Sub-rotinas ('Procedures' e 'Functions')


program Parametros; procedure inicializa ( var A,B: real; C: real; var D: integer ); begin writeln ('Passo 1:', A, B, C, D); A:=1; B:=1; C:=1; D:=1; writeln ('Passo 2:', A, B, C, D); end; var X,Y,Z: real; W: integer;

112

Seo 4.2 Passagem de parmetro por parmetro por valor e referncia;

begin X:=0; Y:=0; Z:=0; W:=0; inicializa (X, Y, Z, W); writeln ('Passo 3:', X, Y, Z, W); end;
Anderson Santos - asantos@unicarioca.edu.br

56

18/02/13

11 3

Plano de Aula

06/05: 4.1 Regras Gerais para a Criao de Sub-rotinas; 4.2 Passagem de parmetro por parmetro por valor e referncia 13/05: Semana UniCarreira 20/05: 4.1 Regras Gerais para a Criao de Sub-rotinas; 4.2 Passagem de parmetro por parmetro por valor e referncia 27/05: 4.3 Estrutura e Emprego dos Procedimentos ('Procedures); 4.4 Estrutura e Emprego das Funes ('Functions')
Profo. Anderson asantos@unicarioca.edu.br

11 4

Plano de Aula

03/06: 4.3 Estrutura e Emprego dos Procedimentos ('Procedures); 4.4 Estrutura e Emprego das Funes ('Functions') 10/06: Exerccios 17/06: AV2 24/06: 2a Chamada
Profo. Anderson asantos@unicarioca.edu.br

57

18/02/13

11 5

Atividade Supervisionada
A atividade supervisionada tem a caracterstica de ser um trabalho acompanhado pelo Professor, assim, quaisquer dvidas devero ser sanadas ou nas aulas ou atravs de mensagens no 28 horas que sero verificadas com at uma semana da sua postagem. Implementar na Linguagem Pascal uma calculadora que realize as seguintes contas:
a) soma b) subtrao c) multiplicao d) diviso

CONDIES DE EXECUO:

- Trabalho dever ser entregue pelo 28 horas, seguindo a norma de trabalhos de TCC da UniCarioca. Na capa deste trabalho dever ter o nome completo e matrcula de todos os componentes dos grupos. - Os grupos podero ter at 5 pessoas. - Trabalhos iguais sero consideradas cpias e tero o grau ZERO. - Entrega: 17 de Junho de 2013, at s 23:55h.

Profo. Anderson asantos@unicarioca.edu.br

Unidade 4: Sub-rotinas ('Procedures' e 'Functions')


Seo 4.3 Estrutura e Emprego dos Procedimentos ('Procedures');

116

Procedimentos
Declarao
procedure nome (lista-de-parmetros); declarao de variveis locais; begin comandos; end;

Exemplo:

procedure Troca (var A,B: real); var aux: real; begin aux:=A; A:=B; B:=A; end;

Anderson Santos - asantos@unicarioca.edu.br

58

18/02/13

program OrdemCrescente; { ------- SUBROTINA TROCA ------- } procedure Troca (var A,B: real); var aux: real; begin aux:=A; A:=B; B:=aux; end; { ------- FIM TROCA ------- } var L,M,N: real; begin { ------- PROGRAMA PRINCIPAL ------- } readln (L, M, N); if (L>M) OR (L>N) then if (M<N) then Troca (L, M) else Troca (L, N); if (M>N) then Troca (M, N); writeln(L, M, N); { ------- FIM PRINCIPAL ------- } end.
Anderson Santos - asantos@unicarioca.edu.br

117

Unidade 4: Sub-rotinas ('Procedures' e 'Functions')


Seo 4.4 Estrutura e Emprego das Funes ('Functions');

118

Funes
Declarao
function nome (lista-de-parmetros): tipo; declarao de variveis locais; begin comandos; end;

Exemplo:

function Hipotenusa (A,B: real): real; begin Hipotenusa:= sqrt( sqr(A) + sqr(B) ); end;

Anderson Santos - asantos@unicarioca.edu.br

59

18/02/13

119

program Diagonal; { Diagonal de um paralelepipedo }

C { Funcao Hipotenusa } function Hipotenusa (A,B: real): real; begin Hipotenusa:= sqrt ( sqr(A) + sqr(B) ); end; { Fim Funcao Hipotenusa }
var A, B, C, D: real; begin { Programa Principal } readln (A, B, C, D); { dimensoes } D: = Hipotenusa ( Hipotenusa (A, B), C ); writeln (D); { Fim Programa Principal } end.
Anderson Santos - asantos@unicarioca.edu.br

B A

12 0

Plano de Aula

01/07: AVF

Profo. Anderson asantos@unicarioca.edu.br

60

Anda mungkin juga menyukai