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.
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
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')
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.
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
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
18/02/13
11
Observaes Importantes
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) =
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).
18/02/13
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).
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).
18/02/13
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).
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).
18/02/13
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).
18
18/02/13
19
28 Horas
rea dos fruns rea de comunicao da turma e para sanar dvidas gerais e sobre a Atividade Supervisionada.
20
28 Horas
Sobre o professor Informaes sobre o professor, como currculo Lattes, email e reas de interesse.
10
18/02/13
21
28 Horas
Midiateca Local onde sero disponibilizados links e apostilas de interesse do aluno para o aprendizado
22
28 Horas
Material Didtico Local onde est: Transparncias Plano de Ensino Plano de Estudos/Aula
11
18/02/13
23
28 Horas
Atividades para compor a primeira avaliao informaes sobre a AV1
24
28 Horas
Atividades para compor a segunda avaliao informaes sobre a AV2 informaes sobre a atividade supervisionada
12
18/02/13
25
28 Horas
Segunda Chamada informaes sobre a segunda chamada
26
28 Horas
Avaliao Final informaes sobre a avaliao final
13
18/02/13
27
28 Horas
Atividade Supervisionada informaes sobre a atividade supervisionada
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.
14
18/02/13
CONTROLE DA PRESENA DO ALUNO. Importante lanar a presena dos alunos as aulas. Cobrar o documento que justifique a falta.
Dever conter: nome completo, data e hora. Pode enviar por e-mail, informando o nome da disciplina.
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
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
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.
19
18/02/13
39
Unidade 1: Introduo
Seo 1.1: Conceitos Bsicos de Programao Estruturada ;
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
40
Unidade 1: Introduo
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.
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.
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
44
Unidade 1: Introduo
program x; var par: integer; soma: integer; begin soma:=0; par:=0; while par<=200 do begin
CABEALHO
22
18/02/13
45
Unidade 1: Introduo
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;
46
Unidade 1: Introduo
program x; var par: integer; soma: integer; begin soma:=0; par:=0; while par<=200 do begin
REA DE DECLARAES
23
18/02/13
47
Unidade 1: Introduo
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;
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.
CORPO DO PROGRAMA
24
18/02/13
49
Unidade 1: Introduo
CORPO DO PROGRAMA:
esta rea tem incio com a instruo begin e finalizada pela instruo end. begin
instrues; (...)
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.
CORPO DO PROGRAMA
25
18/02/13
51
Unidade 1: Introduo
program MEU_PRIMEIRO_PROGRAMA; CABEALHO REA DE DECLARAES begin writeln(Ola Mundo!); end. CORPO DO PROGRAMA
52
Unidade 1: Introduo
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
54
Unidade 1: Introduo
27
18/02/13
55
Unidade 1: Introduo
56
So palavras utilizadas pela linguagem, que no podem ser usadas pelos desenvolvedores.
unicarioca leitura escrita read write
28
18/02/13
57
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
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.
60
30
18/02/13
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
62
Tipos de Operadores
Operador de Atribuio Operadores Aritmticos Operador de Concatenao Operadores Relacionais Operadores Lgicos
31
18/02/13
63
Operador de Atribuio
64
Operadores Aritmticos
32
18/02/13
65
Operador de Concatenao
66
Operadores Relacionais
33
18/02/13
67
68
Operadores Lgicos
34
18/02/13
69
Operadores Lgicos
70
Funes Pr-definidas
35
18/02/13
71
72
36
18/02/13
73
var nome : string[50]; nota1, nota2 : integer; media : real; aprovado : boolean;
74
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
75
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:
76
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
38
18/02/13
77
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
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.
80
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
81
Diretivas de Compilao
Algumas funcionalidades do compilador so controladas atravs de comandos especiais chamadas diretivas de compilao.
Formato:
{$NOME}
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.
41
18/02/13
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}
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}
42
18/02/13
85
86
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
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.
44
18/02/13
89
Estrutura Sequncial
incio inteiro: A, B; leia (A,B); C:= (A+B)*B; imprima (C); fim.
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
91
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
46
18/02/13
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.
94
Condio: CASE
CASE <expresso> OF <opo1> : <comando1>; <opo2> : <comando2>; ... ... <opoN> : <comandoN>; [ ELSE <comando>; ] END;
47
18/02/13
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.
98
49
18/02/13
99
10 0
50
18/02/13
10 1
10 2
51
18/02/13
10 3
10 4
52
18/02/13
10 5
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.
54
18/02/13
109
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).
110
55
18/02/13
111
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
112
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.
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;
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
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;
59
18/02/13
119
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
60