22
Computação e Linguagem de Programação Computação e Linguagem de Programação Professores Sandro Fonseca de Souza Dilson de Jesus Damião 1 Aula 5 parte 1

Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Computação e Linguagem de Programação

Computação e Linguagem de Programação

ProfessoresSandro Fonseca de SouzaDilson de Jesus Damião

1

Aula 5 parte 1

Page 2: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Sumáriol Bibliografia Sugerida l Motivações em FAEl Introdução à Programação

l Linguagem de Programação C++ (parte 1)

2Computação e Linguagem de Programação

Page 3: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Bibliografia Sugerida

3Computação e Linguagem de Programação

Page 4: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Bibliografia Sugerida

4Computação e Linguagem de Programação

Tutorial na Web

http://www.cplusp

lus.com/

Bibliotecas padrão do C++

http://w

ww.cplusp

lus.com/ref

erence/

Page 5: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Motivaçãol Linguagem de programação é uma parte

essencial do trabalho dos Físicos de Altas Energias.

l Este curso é uma introdução a métodos numéricos e computacionais aplicados a FAE.

l Você ira aprender alguns métodos de simulação em Física, bem como técnicas de analise da dados usando linguagem C++.

5Computação e Linguagem de Programação

Page 6: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Motivação

6Computação e Linguagem de Programação

Page 7: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Introduçãol https://en.wikipedia.org/wiki/Computer

l O que faz cálculos (pessoa ou máquina).

l Aparelho eletrônico usado para processar, guardar e tornar acessível informação de variados tipos.

l Os primeiros computadores foram desenvolvidos em 1940-1945 entretanto eles eram muitos grandes.

l Os computadores atuais são baseados em circuitos integrados o que possibilita serem pequenos e ultra rápidos em comparação aos primeiros computadores.

7Computação e Linguagem de Programação

Réplica do Z3 foi o primeiro computadores totalmente digital (eletromecânico) - 1938-39.

Page 8: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Introduçãol Estrutura de um computador digital que pode ser dividida em

duas partes. l Hardware: que é composto da estrutura digital e mecânica. l Software: que são todos os programas.

l Sistema operacional (e.x.: Linux), compiladores e os programas.

8Computação e Linguagem de Programação Estrutura básica de um hardware

Page 9: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Programação de computadoresl https://en.wikipedia.org/wiki/Computer_programming l Linguagem de programação é um processo de:

l Escrita (writing); l Testar (testing),depurar (debugging) e resolução de

problemas (troubleshooting); l Manutenção ou preservação (maintaining) de um código fonte de um programa de computador que pode ser escrito em uma linguagem de programação, por exemplo:

9Computação e Linguagem de Programação

Page 10: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Gerando e executando um arquivo

10Computação e Linguagem de Programação

Arquivo Executável

Linker

Código Objeto

Compilador

Código Fonte

Conjunto de instruções escritas pelo programador (linguagem de alta nível) https://en.wikipedia.org/wiki/High-level_programming_language

Traduz as instruções do código fonte para linguagem de máquina ( linguagem de baixo nível )https://en.wikipedia.org/wiki/Low-level_programming_language

Compila o código (linguagem de baixo nível)

https://en.wikipedia.org/wiki/Machine_code

Gera o código de máquina (código executável ou programa executável)https://en.wikipedia.org/wiki/Executablehttps://en.wikipedia.org/wiki/Linker_(computing)

O programa executável que é executado sobre o sistema operacional (hello.exe)

Page 11: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

O que é C++l http://en.wikipedia.org/wiki/C++

l A linguagem de programação C++ (em inglês cplusplus) é : l é de propósito geral e de nível intermediário l sendo um aprimoramento da linguagem de programação C

https://en.wikipedia.org/wiki/C_(programming_language) l foi desenvolvida pelo cientista da computação - Bjarne

Stroustrup - 1979 na Bell Labs l Padronização do C++:

11Computação e Linguagem de Programação

Bjarne Stroustrup

Sugestão de palestra:http://indico.cern.ch/event/67017/

Page 12: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

O primeiro programa em C++

12Computação e Linguagem de Programação

❖ O programa fonte se chama: hello.cc

❖ Em geral, o C++ possui diversas extensões: .cpp, c++, cxx.cc

Page 13: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Computação e Linguagem de Programação

➡ Linha 1: Linhas que começam com // são consideradas comentários.➡ Linha 2: Linhas que começam com # são diretrizes para preprocessamento

#include<iostream> informa ao compilador para incluir o arquivo iostream que contém as declarações básicas de entrada e saída.

➡ Linha 3: Todos os elementos (variáveis, objetos, ...) da biblioteca C ++ declarada no namespace std. cout é a parte do namespace std.

➡ Linha 4: Uma linha em branco não faz nada, mas ajuda a organização do código.➡ Linha 5: O programa acima começa com a função main(). Cada programa em C++

deve ter somente uma função main() . O começo e final do bloco main() é indicado entre chaves{}.

➡ Linha 7: A saída “Hello World aparecerá na tela do usuário.➡ Linha 9: A instrução de retorno finaliza a função (no exemplo o programa

principal. A instrução return 0 envia uma mensagem para o sistema operacional que: “o programa acabou seu problemas”.

Page 14: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Computação e Linguagem de Programação

Compilando e Executando um programa no terminal

Page 15: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Computação e Linguagem de Programação

Segundo Programa

Page 16: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Comandos de Entrada e Saída Padrão (I/O)

l As bibliotecas padrão do C++ inclui os arquivos de cabeçalho iostream onde objetos padrão do fluxo de entrada e saída são definidos:

16Computação e Linguagem de Programação

Page 17: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Comandos de Entrada e Saída Padrão (I/O)

17Computação e Linguagem de Programação

Sintaxe de Saída

Quebra de linha

Page 18: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Comandos de Entrada e Saída Padrão (I/O)

18Computação e Linguagem de Programação

Sintaxe de Entrada

Page 19: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Comandos de Entrada e Saída Padrão (I/O)

19Computação e Linguagem de Programação

Caso seja removida a linha “using namespace std;”, o programa deverá ser modificado. Veja abaixo em vermelho.

Page 20: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Computação e Linguagem de Programação

Exercícios

Page 21: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Exercícios1) Escreva um programa (triangulo.cc) para determinar a área de

triângulo sendo as variáveis de entrada a base (b) e a altura (r).

2) Escreva um programa (circumferencia.cc) para determinar a circunferência de um circulo sendo a variável de entrada o raio do circulo (r).

3) Desenvolva um programa (eletron.cc) para determinar o momentum (MeV/c) e comprimento de onda de Broglie (nm) para um elétrons usando sua energia cinética (K em MeV) e a massa do elétron de 0,551 MeV/c2.

21Computação e Linguagem de Programação

Page 22: Computação e Linguagem de Programaçãodfnae.fis.uerj.br/twiki/pub/DFNAE/TopicosAnalises/Aula_5_1.pdf · 1 Aula 5 parte 1. Sumário l Bibliografia Sugerida l Motivações em FAE

Próxima Aula

l Tipos de dados; l Operadores; l Strings; l Funções intrínsecas

22Computação e Linguagem de Programação