Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3....

29
Representa¸ ao de dados Processamento da Informa¸ ao Introdu¸ ao ` a Linguagem Java e suas Estruturas Sequenciais Mirtha Lina Fern´ andez Venero [email protected] Sala 506-2, Bloco A 1 de mar¸ co de 2018

Transcript of Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3....

Page 1: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Processamento da Informacao

Introducao a Linguagem Java e suasEstruturas Sequenciais

Mirtha Lina Fernandez [email protected]

Sala 506-2, Bloco A

1 de marco de 2018

Page 2: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Agenda

Introducao

Introducao a Netbeans, Java e seus tipos de dados basicos

Saıda de dados

Variaveis, Atribuicoes e Expressoes

Exercıcios para casa

Bibliografia

Page 3: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao

Agenda

Introducao

Introducao a Netbeans, Java e seus tipos de dados basicos

Saıda de dados

Variaveis, Atribuicoes e Expressoes

Exercıcios para casa

Bibliografia

Page 4: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao a Netbeans, Java e seus tipos de dados basicos

Agenda

Introducao

Introducao a Netbeans, Java e seus tipos de dados basicos

Saıda de dados

Variaveis, Atribuicoes e Expressoes

Exercıcios para casa

Bibliografia

Page 5: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao a Netbeans, Java e seus tipos de dados basicos

NetBeans IDE 8.1 e Programas Java

Page 6: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao a Netbeans, Java e seus tipos de dados basicos

Criando Novo Projeto: Arquivo → Novo Projeto

Page 7: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao a Netbeans, Java e seus tipos de dados basicos

Criando Novo Projeto: Arquivo → Novo Projeto

Page 8: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao a Netbeans, Java e seus tipos de dados basicos

Criando Novo Projeto: Arquivo → Novo Projeto

Page 9: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao a Netbeans, Java e seus tipos de dados basicos

Criando Novo Projeto: Arquivo → Novo Projeto

Netbeans cria uma pasta com o nome do projeto e variassubpastas. O arquivo com o nosso programa tem extensao .java ee armazenado dentro da subpasta src.

Page 10: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao a Netbeans, Java e seus tipos de dados basicos

Tipos de dados basicos em Java

http://www.javatpoint.com/variable-datatype

http://docstore.mik.ua/orelly/java-ent/jnut/ch02_04.htm

Page 11: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao a Netbeans, Java e seus tipos de dados basicos

Tipos char e String

char tab = ’\t’, apostrophe = ’\’’, a=’\u0041’; b=’b’;

http://unicode-table.com/en/#control-character

Page 12: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao a Netbeans, Java e seus tipos de dados basicos

Tipos char e String

char tab = ’\t’, apostrophe = ’\’’, a=’\u0041’; b=’b’;

http://unicode-table.com/en/#mathematical-operators

Page 13: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao a Netbeans, Java e seus tipos de dados basicos

Tipos char e String

char tab = ’\t’, apostrophe = ’\’’, a=’\u0041’; b=’b’;

http://unicode-table.com/en/#mathematical-operators

Exemplo de cadeias: String s = "’This’ is a string!";

Page 14: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Introducao a Netbeans, Java e seus tipos de dados basicos

O que fazer com os tipos? Mostrar seus valores constantes

Tambem e possıvel mostrar o resultado de operacoes sobre esses valores. Exercıcio: Mostre o resultado de 34.5/4.7

Page 15: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Saıda de dados

Agenda

Introducao

Introducao a Netbeans, Java e seus tipos de dados basicos

Saıda de dados

Variaveis, Atribuicoes e Expressoes

Exercıcios para casa

Bibliografia

Page 16: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Saıda de dados

Mostrar valores e operacoesI Instrucao basica de saıda: System.out.println(...)I Operadores aritmeticos +, - *, /, % (resto da divisao)I O pacote Math. tem muitas funcoes matematicas

I Se precisar use varias instrucoes de saıda separadas por pontoe vırgula

I O operador de soma (nao a vırgula) pode ser usado paramisturar cadeias e numeros numa unica expressao/instrucao

Page 17: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Saıda de dados

Exercıcios em Sala

Escreva um programa Java que imprima ”bonitinho”

1. os valores de π computados usando as seguintes fracoes:22/7, 333/106, 355/113 e 52163/16604. Qual e o valor de πque usa Java?

2. o resultado das funcoes trigonometricas seno, cosseno etangente dos valores π/5 e 3π/5

Page 18: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Saıda de dados

Exercıcios em Sala

Escreva um programa Java que imprima ”bonitinho”

1. os valores de π computados usando as seguintes fracoes:22/7, 333/106, 355/113 e 52163/16604. Qual e o valor de πque usa Java?

2. o resultado das funcoes trigonometricas seno, cosseno etangente dos valores π/5 e 3π/5

Como melhorar o segundo programa???

Page 19: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Variaveis, Atribuicoes e Expressoes

Agenda

Introducao

Introducao a Netbeans, Java e seus tipos de dados basicos

Saıda de dados

Variaveis, Atribuicoes e Expressoes

Exercıcios para casa

Bibliografia

Page 20: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Variaveis, Atribuicoes e Expressoes

Variaveis

A informacao e armazenada na memoria do computador empalavras de memoria (celula/caixa/gaveta)

I Um programa pode usar a memoria atraves devariaveis (nomes para enderecos de memoria - identificador)

I Uma variavel armazena um valor (conteudo) e ela pode serlida (obter o conteudo) ou escrita (modificar o conteudo)

Page 21: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Variaveis, Atribuicoes e Expressoes

Identificadores em Java

Toda linguagem de programacao tem seu proprio conjunto deregras e convencoes para os identificadores. As regras econvencoes de nomenclatura para as variaveis em Java podem serresumidas como segue:

I O nome de uma variavel pode ser uma sequencia de letras enumeros Unicode, comecando com uma letra, o sinal de dolar,ou o caractere sublinhado

I Os nomes das variaveis sao o sensıveis a maiusculas eminusculas

I Ao escolher um nome para as variaveis, use palavrascompletas em vez de abreviaturas enigmaticas. Isso fara comque seu codigo mais facil de ler e compreender.

https://docs.oracle.com/javase/tutorial/java/nutsandbolts/variables.html

Page 22: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Variaveis, Atribuicoes e Expressoes

Identificadores em Java

I Se o nome escolhido consiste em apenas uma palavrapequena, use todas as letras em minusculas. Se ele ecomposto por mais de uma palavra, capitalize a primeira letrade cada palavra subsequente. Os nomes numero enumeroEstudantes sao exemplos de esta convencao. Porconvencao, o caractere sublinhado somente e usado paraconstantes.

I Os nomes de variaveis nao devem ser palavras chaves oureservadas de Java

Exemplo: Nao usar para variaveis os seguintes identificadores:abstract, continue, for, new, switch, default, package,boolean, do, if, private this break double byte else importpublic, case, return, int, short, char, class, long, float, while, ...

http://docs.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.html

Page 23: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Variaveis, Atribuicoes e Expressoes

Variaveis

I Toda variavel Java tem um tipo que determina os valores queela armazena (inteiras, booleanas, reais, cadeias, etc).

I Toda variavel precisa ser declarada (em qualquer lugar) antesde ser usada. A declaracao inclui o tipo, o identificador davariavel e, opcionalmente, um valor inicial

I Os tipos da variavel e o valor inicial devem ser compatıveis

Lembre-se: use identificadores com nomes apropriados quedescrevam o uso da variavel. Evite identificadores duma letra so.

Page 24: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Variaveis, Atribuicoes e Expressoes

Atribuicoes e Expressoes

I Atribuicao: comando que modifica o valor de uma variavel

1. Valor constante. Exemplo: x = 11, y = 5

2. Conteudo de outra variavel. Exemplo: x = y

3. Resultado de uma funcao ou operacao.Exemplo: x=3+4-y, sexo = ’F’

Em geral uma atribuicao Java tem a forma<identificador> = <express~ao>;

I A ordem de avaliacao das operacoes importa!!!Exemplo: (3+4)*5 6= 3+4*5

I Os tipos da expressao e da variavel devem ser compatıveis

Ver mais sobre a atribuicao em e.g. https://docs.oracle.com/javase/tutorial/java/nutsandbolts

Page 25: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Variaveis, Atribuicoes e Expressoes

Exercıcios em Sala

Escreva um programa Java que imprima ”bonitinho”

1. os valores de π computados usando as seguintes fracoes:22/7, 333/106, 355/113 e 52163/16604. Qual e o valor de πque usa Java?

2. o resultado das funcoes trigonometricas seno, cosseno etangente dos valores π/5 e 3π/5

3. o resultado da avaliacao do polinomio x4 − 3x3 + 4x2 − 9 novalor real 7.5

Lembre-te: Sempre que possıvel, use variaveis para evitarque seu programa calcule a mesma expressao mais duma vez.

Page 26: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Exercıcios para casa

Agenda

Introducao

Introducao a Netbeans, Java e seus tipos de dados basicos

Saıda de dados

Variaveis, Atribuicoes e Expressoes

Exercıcios para casa

Bibliografia

Page 27: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Exercıcios para casa

Exercıcios: Escreva programas Java para

4. ler um numero real x0 e avaliar o polinomiox4 − 3x3 + 4x2 − 9 no valor lido.

5. calcule a area e o perımetro de uma circunferencia

6. dados os catetos de um triangulo retangulo, calcule sua area,a hipotenusa e o perımetro

7. dados dois pontos no plano calcule a distancia entre eles

Lembre-te: Antes de resolver qualquer exercıcio leia comatencao o enunciado, pense bem qual deve ser a entrada e asaıda do programa, defina variaveis para armazenar essasentradas com nomes e tipos apropriados, pense nos passosnecessarios para o processamento, escreva o programa Javacom comentarios e faca varios testes.

Page 28: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Bibliografia

Agenda

Introducao

Introducao a Netbeans, Java e seus tipos de dados basicos

Saıda de dados

Variaveis, Atribuicoes e Expressoes

Exercıcios para casa

Bibliografia

Page 29: Processamento da Informa˘c~aoprofessor.ufabc.edu.br/~mirtha.lina/UFABC/docPI/PI01.pdf · 2018. 3. 1. · Representa˘c~ao de dados Processamento da Informa˘c~ao Introdu˘c~ao a

Representacao de dados

Bibliografia

Bibliografia

Toda a bibliografia recomendada na teoria

Notas de curso: disponibilizadas dia apos cada aula emhttps://tidia4.ufabc.edu.br/portal, site PI-Q1-2017-Mirtha

Ambientes Integrados de Desenvolvimento para Java

I NetBeans (http://www.oracle.com/technetwork/java/javase/downloads/jdk-netbeans-jsp-142931.html)Ver video de instalacaohttps://www.youtube.com/watch?v=3qnOKAlJgtI

I Eclipse (http://www.eclipse.org/)I Online editors: https://repl.it/,

http://pythontutor.com/java.html#mode=edit,http://www.tutorialspoint.com/compile_java_online.php,https://www.compilejava.net/, ...