Você está na página 1de 21

Laboratório de Programação I

1. Quais são as etapas de um programa?

 Análise: Nesta etapa estuda-se o enunciado do problema


para definir os dados de entrada, o processamento e dados
de saída.
 Algoritmo: Ferramentas do tipo descrição narrativa,
fluxograma ou em português estruturado são utilizadas para
descrever o problema com suas soluções.
 Codificação: O algoritmo é transformado em códigos de
programação escolhida para se trabalhar.
Portanto, um programa é a codificação de um algoritmo em uma
linguagem de programação.
2. Conceitue algoritmo.

 É uma sequencia de passos que visa atingir um objetivo


bem definido.
 É a sequência de passos que deve seguida para a
realização de uma tarefa.
 É uma sequência de finita de instruções ou operações
cuja execução, em tempo finito, resolve um problema
computacional, qualquer que seja a sua instância.
 São regras formais para a obtenção de um resultado ou
da solução de um problema, englobando fórmulas de
expressões aritméticas.
De forma geral um algoritmo é um procedimento computacional
que com um conjunto de dados de entrada realiza uma tarefa,
resultando em um conjunto de dados de saída. Ou seja, um
conjunto de passos computacionais que recebe uma entrada e gera
uma saída.

Entrada Algoritmo Saída

3. Dê exemplo de algoritmo.
Ex.: 1. Somar três números.
Passo 1: Receber três números.
Passo 2: Somar três números.
Passo 3: Mostrar o resultado obtido.
4. Qual o método para a construção de algoritmos?
Para a construção de qualquer tipo de algoritmo, serão
necessários seguir estes passos:
a) Compreender completamente o problema a ser resolvido,
destacando os pontos mais importantes e os objetos que o
compõem.
b) Definir os dados de entrada, ou seja, quais dados serão
fornecidos e quais objetos fazem parte desse cenário-
problema.
c) Definir o processamento, ou seja, quais cálculos serão
efetuados e quais as restrições para esses cálculos. O
processamento é responsável pela transformação dos dados
de entrada em dados de saída. Além disso, deve-se verificar
quais os objetos são responsáveis pelas atividades.
d) Definir os dados de saída, ou seja, quais dados serão
gerados depois do processamento.
e) Construir o algoritmo utilizando um dos tipos descritos na
próxima seção.
f) Testar o algoritmo realizando simulações.

5. Cite tipos de algoritmos.

 O pseudocódigo utiliza linguagem estruturada e se


assemelha, na forma, a um programa escrito na linguagem
de programação Pascal. O pseudocódigo é também
denominado por alguns autores como português
estruturado, embora existam pequenas diferenças de
metodologia entre ambos. É bastante utilizado para
representação da resolução de problemas computacionais.
 A descrição narrativa utiliza linguagem natural para
especificar os passos para a realização das tarefas. Isso dá
margem a más interpretações e ambiguidades. Não é muito
utilizada.
 O fluxograma é uma forma universal de representação,
pois se utiliza de figuras geométricas para ilustrar os passos
a serem seguidos para a resolução dos problemas. Bastante
utilizado, é também chamado por alguns autores de
diagrama de blocos.

6. Fundamento o fluxograma.
É um tipo de algoritmo que utiliza símbolos gráficos para
representar as ações ou instruções a serem seguidas. Assim como o
pseudocódigo, o fluxograma é utilizado para organizar o raciocínio
lógico a ser seguido para a resolução de um problema ou para
definir os passos para a execução de uma tarefa. Também é
utilizado para documentar rotinas de um sistema, mas só é
recomendado para casos pouco extensos.
7. Qual simbologia do fluxograma?

8. O que que são algoritmos computacionais?


Um programa de um computador nada mais é do que um
algoritmo de linguagem de programação que passa por um
processo de compilação ou interpretação que traduz os comandos
da linguagem em instruções que o computador executa.
9. O que são dados?
Os dados são, na verdade, os valores que serão utilizados para a
resolução de problema. Esses valores podem ser fornecidos pelo
usuário do programa, podem ser originados a partir de
processamentos (cálculos) ou então, a partir de arquivos, banco de
dados ou outros programas.
Os dados são armazenados temporariamente em variáveis para
que sejam processados de acordo com as especificações do
algoritmo. Para que haja integridade no resultado obtido, os dados
devem classificados de acordo com o tipo do valor a ser
armazenado na variável, isto é, para evitar problemas que podem
ser ocasionados devido ao fornecimento de valores inadequados à
operação que será realizada. Por exemplo, vamos, vamos supor que
o algoritmo deva especificar os passos para efetuar a soma de dois
números pelo usuário. Então, será feita uma operação aritmética
(soma), que só poderá ser realizada com valores numéricos.
10. Como são definidos os tipos de dados?
Os tipos de dados são definidos, normalmente, a partir dos tipos
primitivos criados em função das características dos computadores.
Como os dados manipulados pelos computadores durante a
execução dos programas são armazenados na memória, esses tipos
seguem as características de formato e espaço disponível nessa
memória. Assim, são organizados em bits e bytes e suas
combinações. Por exemplo, para representar um número inteiro,
poderiam ser usados dois bytes ou 16 bits. Isso resultaria em 2 16
combinações possíveis para a representação de números, ou 65.536
possibilidades, considerando os estados que um bit pode assumir: 0
ou 1. Lembrando que os números poderiam assumir valores
negativos e positivos nessa faixa, teríamos representações que
iriam de -32.768 a 32.767.
11. O que é um bit?
A menor unidade de informação reconhecida pelo computador;
pode representar os estados 0 (desligado) 1 (ligado).
12. E um byte o que é?
Conjunto de 8 bits que pode representar um caractere (letras,
números ou símbolos especiais).
13. Esclareça os tipos de dados.
Definir o tipo de dado mais adequado para ser armazenado em
uma variável é uma questão de grande importância para garantir a
resolução do problema. Ao desenvolver um algoritmo, é necessário
que se tenha conhecimento prévio do tipo de informação (dado)
que será utilizado para resolver o problema proposto. A partir daí
escolhe-se o tipo adequado para a variável que representar esse
valor. Na confecção de algoritmos, utilizamos os tipos de dados
primitivos (literal, inteiro, real e lógico), uma vez que os
algoritmos apenas representam a resolução dos problemas. Já na
confecção de programas, existem desdobramentos para esses tipos
de dados a fim de adequá-los melhor ao propósito de cada
linguagem e à resolução práticas dos problemas.
14. O que é uma variável?
Um dado é classificado como variável quando tem a
possibilidade de ser alterado em algum instante no decorrer do
tempo, ou seja, durante a execução do algoritmo em que é
utilizado, o valor do dado sofre alteração ou o dado é dependente
da execução em um certo momento ou circunstância.
Nos algoritmos, as variáveis são utilizadas para representar
valores desconhecidos, porém necessários para a resolução de um
problema e que poderão ser alterados de acordo com a situação. Por
isso dizemos que as variáveis armazenam valores (dados)
temporiamente.
Quando um algoritmo é transcrito para uma determinada
linguagem de programação, as variáveis também terão a função de
armazenar dados temporiamente, mas na memória RAM. Esses
dados serão utilizados durante o processamento para a resolução do
problema em questão.
Ex.:A cotação do dólar, o peso de uma pessoa, o índice da
inflação.
15. Fundamente a identificação das variáveis para algoritmos.
Toda variável deve ser identificada, isto é, deve receber um
nome ou identificador. O nome de uma variável deve único e deve
estar de acordo com algumas regras.
Não utilizar espaços entre as letras. Por exemplo, em
vez de nome do cliente, correto seria nome_cliente ou
nomecliente. O caractere ‘sublinha’ ou ‘underline’ (_)
pode ser utilizado para representar o espaço entre as
letras.
Não iniciar o nome da variável com algarismos
(números). Ex.: não usar 2valor. O correto seria valor2.
Não utilizar palavras reservadas, isto é, palavras que são
utilizadas nos algoritmos para representar ações
específicas. Ex.: se a palavra que representa uma
condição ou teste lógico; var palavra que representa a
área de declaração de variáveis.
Não utilizar caracteres especiais, como acentos,
símbolos (?/: @# etc.), ç, entre outros.
Ser sucinto e utilizar nomes coerentes.

16. O que são constantes?


São valores que não sofrem alterações ao longo do
desenvolvimento do algoritmo ou da execução do programa. Por
exemplo, na expressão abaixo, o valor 3.1415 é atribuído à
constante pi e permanecerá fixo até o final da execução.
17. Quais são os principais personagens de um programa Java?
Os principais atores de um programa Java são os objetos. Os
objetos armazenam dados que fornecem os métodos para acessar e
modificar esses dados. Todo objeto é instância de uma classe que
define o tipo de objeto, bem como os tipos de operações que
executa. Os membros críticos de uma classe Java são os seguintes
(classe também podem conter definições de classes aninhadas):
Dados de objetos Java são armazenados em variáveis
de instância (também chamadas de campos). Por essa
razão, se um objeto de classe deve armazenar dados,
então sua classe deve especificar variáveis de instância
para esse fim. As variáveis de instância podem ser de
tipos básicos (tais como inteiros, números de ponto
flutuante ou booleanos) ou podem se referir a objetos de
outra classe.
As operações que podem atuar sobre os dados e que
expressam as “mensagens” às quais os objetos
respondem são chamadas de métodos, e estes consistem
de construtores, sub-programas e funções. Eles definem
o comportamento dos objetos daquela classe.

18. Nosso primeiro programa.


programa 01

Programa impresso no prompt de comando.

19. Linha 1. programa01

Começa com //, que indica que a linha é um comentário. Você


insere comentário documentar programas e aprimorar sua
legibilidade. O compilador ignora os comentários, portanto eles não
fazem o computador realizar nenhuma ação quando o programa é
executado. Por convenção, iniciamos cada programa com um
comentário indicando o número da figura e o nome de arquivo.
Um comentário que começa // é um comentário de linha – ele
termina no fim da linha em que aparece. Um comentário de fim
linha também pode iniciar no meio de uma linha e continua até o
fim dessa linha. Outro tipo de comentário, chamado de comentário
tradicional, poder ser distribuído por varias linhas como em:
/*Isso é comentário tradicional. Ele
pode ser dividido em várias linhas*/
Esse tipo de comentário com /* e termina com */. Todo o texto
entre os delimitadores é ignorado pelo compilador. O Java
incorporou comentários tradicionais e comentários de fim de linha
das linguagens de programação C e C++, respectivamente. Nesse
livro, utilizamos somente comentário //.
O Java também comentário no estilo Javadoc que são
delimitados por /**/. Como ocorre com comentário tradicionais,
todo o texto entre os delimitadores de comentário no estilo Javadoc
é ignorado pelo compilador. Os comentários no estilo Javadoc
permitem-lhe incorporar a documentação do programa diretamente
aos seus programas. Esses comentários são o formato de
documentação Java preferido na indústria. O programa utilitário
javadoc (parte do Java SE Development Kit) lê comentário no
estilo Javadoc e utiliza0os para preparar documentação do seu

programa no formato HTML.

20. Linha 2. Comentário. programa01

É um comentário que descreve o propósito do programa.


Esquecer um dos delimitadores de um comentário tradicional no
estilo Javadoc causa um erro de sintaxe. A sintaxe de uma
linguagem de programação específica as regras para criar
programas apropriadas nessa linguagem, assim como as regras de
gramática de uma língua natural especificam a estrutura da frase.
Um erro de sintaxe ocorre quando o compilador encontra o código
que viola as regras da linguagem do Java (isto é, sua sintaxe).
Nesse caso, o compilador emite uma mensagem de erro e impede o
programa de compilar. Erros de sintaxe também são chamados
erros de compilador, erros de compilação porque o compilador
detecta-os durante a fase de compilação.
Obs: algumas organizações exigem que todo programa comece
com um comentário que informa o objetivo e o autor do programa,
a data e a hora em que programa foi modificado pela última vez.
21. A linha 3. Linha em branco
É uma linha em branco. As linhas em branco e caracteres de
espaço tornam os programas mais fáceis de ler. Juntos, as linhas em
branco, os espaços e as tabulações são conhecidos como em espaço
em branco. Espaços em branco são ignorados pelo compilador.
22. Linha 4. Declarando uma classe. programa01

Inicia uma declaração da classe da classe benvindo. Todo


programa Java consiste em pelo menos uma classe que você (o
programador) define. Essas são conhecidas como classes definidas
pelo programador. A palavra-chave class introduz uma
declaração de classe e é imediatamente seguida pelo nome de
classe (benvindo). Palavras-chave (às vezes chamadas de palavras
reservadas) são reservadas ´para uso pelo Java e sempre escritas
com todas letras minúsculas.
Por convenção, os nomes de classe iniciam com uma letra
maiúscula e apresentam a letra de cada inicial de cada palavra que
eles incluem em maiúscula. O nome de cada classe é um
identificador – uma série de caracteres que consiste em letras,
dígitos, sublinhados (_) e sinais de ($) que não iniciam com um
dígito e não contêm espaços. Alguns identificadores válidos são
Bemvindo, $valor, _valor, m_campoDeEntrada e botao7. O nome
7butao não é um identificador válido porque inicia com um dígito;
o input field não é um identificador válido porque contém um
espaço. Normalmente, um identificador que não inicia com uma
letra maiúscula não é um nome de classe. O Java faz distinção
entre letras maiúsculas e minúsculas – letras maiúsculas e
minúsculas são diferentes.

Atenção: Uma classe public deve ser colocada em um arquivo que


tenha o mesmo nome da classe (tanto na ortografia como no uso
de maiúsculas e minúsculas) mais a extensão .java caso
contrário, ocorre um erro de compilação. Ex.: a classe public
bemvindo deve ser colocada em um arquivo chamado
bemvindo.java
23. Linha 6. Declarando um método. programa01

É o ponto de partida de cada aplicativo Java. Os parênteses


depois do identificador main indicam que ele é um bloco de
construção do programa chamado método. Declarações de classe
Java normalmente contêm um ou mais métodos. Para um aplicativo
Java, um dos métodos deve ser chamado main e deve ser definido
como na linha 7; caso contrário a JVM não executará o aplicativo.
Os métodos realizam tarefas e podem retornar informações quando
completam suas tarefas. A palavra chave void indica que esse
método não devolverá nenhuma informação.
24. Linha 9. Gerando saída com System.out.println.
programa01
Instrui o computador a realizar uma ação – a saber, imprimir a
string de caracteres contida entre aspas duplas (mas não as
próprias aspas duplas). Uma string às vezes é chamada de string
de caractere ou string literal. Os caracteres de espaço em branco
Strings não são ignorados pelo compilador. As strings não pode
distribuir várias linhas de código.
O objeto System.out é conhecido como o objeto de saída
padrão. Ele permite que aplicativos Java exibam strings na janela
de comando a partir do qual o aplicativo de Java executa. Em
versões recentes do Microsoft Windows, a janela de comando
chama-se prompt de comando. No Unix/Linux/Mac os X, a janela
de comando é chamada janela terminal ou shell.
O método System.out.println exibe (ou imprime) uma linha de
texto na janela de comando. A string entre parênteses na linha 9 é o
argumento para o método. Quando System.out.println completa
sua tarefa, ele posiciona o cursor de saída (o local em que o
próximo caractere será exibido) no começo da linha seguinte na
janela de comando. (Esse movimento de cursor semelhante ao
posicionamento da tecla Enter ao digitar em um editor de textos –
o curso aparece no começo da próxima linha do documento).
Sequência de Descrição
escape
Nova linha. Posiciona o cursor de tela no início
\n
da próxima linha
Tabulação horizontal. Move o cursor de tela para
\t
a próxima parada de tabulação
Retorno de carro. Posiciona o cursor no início da
linha atual – não avança para a próxima linha.
\r Qualquer saída de caracteres depois de retorno de
carro sobrescreve a saída anteriormente gerados
na linha atual.
Barras invertidas. Utilizada para imprimir um
\\
caractere de barra invertida.
Aspas duplas. Utilizada para imprimir um
\” caractere de aspas duplas. Por exemplo
System.out.println(“\ “in quotes” ”)

25. Como exibir texto com printf na linguagem Java?


O método System.out.printf (f significa “formatted”) exibe os
dados formatados. Utiliza esse método para saída das strings
“bem_vindo a” e “programação Java”.

A linha 9 chama o método System.out.printf para exibir a saída


do programa. A chamada de método específica três argumentos.
Quando um método exige múltiplos argumentos, estes são
colocados em lista separada por vírgulas.
Atenção: Dividir uma instrução no meio de um identificador ou
de uma string é um erro de sintaxe.
26. Qual primeiro argumento do método printf?
O primeiro argumento do método printf é uma string de
formato que pode consistir em texto e especificadores de
formato. A saída do texto fixo é gerada por printf exatamente
como seria gerada por printfln. Cada especificador de formato é um
marcador de lugar para um valor e específica o tipo da saída de
dados. Especificadores de formato também podem incluir
informações opcionais de formatação.
Especificadores de formato com um sinal de porcentagem (%) e
são seguidos por um caractere que representa o tipo de dados. Ex.:
O especificador de formato % é um marcador de lugar para uma
strings. A string de formato específica que o printf deve gerar a
saída de duas strings, cada uma seguida por caractere de nova
linha. Na primeira posição do especificador de formato, printf
substitui o valor do primeiro argumento depois das strings de
formato. Em cada posição subsequente, printf substitui o valor do
próximo argumento na lista argumentos. Portanto, esse exemplo
coloca “bemvindo” no lugar do primeiro %s e “Programa Java” no
lugar do segundo %s. A saída mostra que duas linhas de texto são
exibidas.

27. O que são variáveis?


Basicamente, o que um programa faz é manipular dados. Em
geral, esses dados são armazenados em variáveis localizadas na
memória RAM do computador. Uma variável pode guardar dados
de vários tipos: números, textos booleanos (verdadeiro ou falso),
referências de objetos. Além disso, toda variável possui um nome
que é utilizado quando a informação dentro da variável precisa ser
manipulada pelo programa.
Na linguagem de programação Java, as variáveis devem ser
declaradas para possam ser utilizadas. A declaração de uma
variável definir um nome único (identificador) dentro de um
escopo e um tipo de valor. As variáveis são acessadas pelos nomes
e armazenam valores compatíveis com o seu tipo.
28. Somando inteiros.
Nosso aplicativo lê (ou insere) dois inteiros (números integrais,
como -22.7,0 e 1024) digitados por um usuário do teclado, calcula a
soma dos valores e exibe o resultado. Esse programa deve manter
um registro dos números fornecidos pelo usuário para o cálculo
mais tarde no programa. Os programas lembram-se dos números e
outros dados da memória do computador e acessam esses dados por
meio de elementos de programa chamados variáveis. O
programa02

O programa imprime como resultado.

29. O programa a seguir aumenta a complexidade. Veja.


Este programa soma as notas de um aluno e tira a média. E
imprime o seguinte.
E imprime o seguinte

Nosso próximo programa lê (ou insere) dois inteiros, (números


integras, como -22,7 e 1024) digitados por um usuário no teclado,
calcula a soma dos valores e exibe o resultado. Esse programa deve
manter um registro dos números fornecidos pelo usuário para o
cálculo mais tarde do programa. Os programas lembram-se dos
números e outros dados memória do computador e acessam esses
dados por meio de elementos de programa chamados variáveis. O
programa a seguir esses conceitos.
programa04

O acima imprime o seguinte:


programa05
O programa a seguir pede que o usuário digite o ano de seu
nascimento e imprime quantos anos ele tem como resultado.

30. Observe o próximo. Programa05


Este programa imprime o seguinte:

31. Linhas 1 a 7: Programa05

O conteúdo dessas é implemente o cabeçalho e forma de


comentário.
1. Linha 10. Programa05

É uma declaração import que ajuda o compilador a localizar


uma classe utilizada nesse programa. Um dos pontos do Java é seu
rico conjunto de classes relacionadas - e, coletivamente, são
chamadas de biblioteca de classes Java, ou Java Applicatiom
Programing Interface (Java API). Utilize declarações import para
identificar as classes predefinidas utilizadas em um programa Java.
A declaração import da linha 10 indica que exemplo usa a classe
Scanner predefinida do Java.
Atenção: Todas as declarações import devem aparecer antes da
primeira de classe no arquivo. Colocar uma declaração import
dentro do corpo de declaração de classe é um erro de sintaxe.
Em geral, esquecer-se de incluir uma declaração import para
uma classe utilizada no seu programa resulta em um erro de
compilação contendo uma mensagem como “cannot fin symbol1”.
Quando isso ocorre, verifique se você verá forneceu as declarações
import adequadas e que os nomes nas declarações impor estão
escritos corretamente, incluindo a utilização adequada de letras
maiúsculas e minúsculas.
32. A linha 12. Programa05
Inicia a declaração de classe somar. O nome para essa classe
public deve ser somar.java. Lembre-se de que o corpo de cada
declaração de classe inicia com uma chave esquerda de abertura
(linha14) e termina com uma chave direita de fechamento (linha
38).
O aplicativo inicia a execução com o método main (18 a 36). A
chave a esquerda (linha 14) marca o início do corpo de main e a
corresponde direita (linha 36) marca o final do corpo de main.
Observe que o método main está recuado um nível no corpo da
classe somar e que o código no corpo de main está recuado um
outro nível para legibilidade.
33. A linha 20. Programa05

É uma instrução de declaração variável que especifica o nome


(input) e o tipo (Scanner) de uma variável que é usada nesse
programa. Uma variável é uma posição na memória do computador
onde um valor pode ser armazenado para uso posterior em um
programa. Todas as variáveis Java devem ser declaradas com um
nome e um tipo antes que elas possam ser utilizadas. O nome de
uma variável permite que o programa acesse o valor da variável na
memória. O nome de uma variável pode ser qualquer identificador
válido. (Os requisitos de atribuição de nome de identificadores são
fornecidos posteriormente). O tipo da variável específica o tipo de
uma variável especifica o tipo de informações armazenado nessa
posição na memória. Como ocorre com outras instruções de
declaração terminam com um ponto-e-vírgula. (;).
A declaração na linha 20 especifica que a variável nomeada
input seja do tipo Scanner. Um Scanner permite a um programa ler
os dados (Ex.: números) para utilização em um programa. Os dados
podem ser provenientes de várias origens, como os digitados pelo
usuário ou um arquivo do disco. Antes de utilizar um Scanner, você
deve cria-lo e especificar a origem dos dados.
O sinal de igual (=) na linha 20 indica a variável Scanner, você
ser inicializada (isto é, prepara para utilização no programa) na
sua declaração com o resultado da expressão new Scanner
(System.in) à direita do sinal de igual. Essa expressão utiliza a
palavra-chave new para criar um objeto Scanner que lê caracteres
digitados pelo usuário no teclado. O objeto de entrada padrão,
System.in, permite que aplicativos leiam bytes de informações pelo
usuário. Objeto Scanner traduz esses bytes em tipos (como ints)
que podem ser utilizados em um programa.
34. As linhas 23 – 25. As instruções de declaração de variável.
Programa05

Declaram que as variáveis num1 e num2 e soma armazenam


dados do tipo int- elas podem armazenar valores inteiros (números
inteiros como -72, - 1127 e 0). Essas variáveis ainda não
inicializadas. O intervalo de valores com um int é -2147.483.648 a
+2.147.483.647 (valores int reais podem não conter vírgulas). A
seguir, discutiremos os tipos float e double, para armazenas
números reais, o tipo char, para armazenar dados de caracteres. Os
números reais contêm pontos decimais, como 3,4,0 e -11.19.
Variáveis do tipo char representam caracteres individuais, como
uma letra maiúsculas (por exemplo, A), um dígito (Ex.: 7), um
caractere especial (Ex.: * ou %) ou uma sequência de escape (Ex.:
o caractere de nova linha.\n). Os tipos int, float, double e char são
chamados de tipos primitivos. Os nomes dos tipos primitivos são
palavras-chave e devem aparecer em letras minúsculas. O apêndice
D resume as características dos oito primitivos (boolean, byte,
char, short, int, float e double).
35. Linhas 23-25. Programa05

Diversas variáveis do mesmo tipo podem ser declaradas em uma


declaração com os nomes de variável separados por vírgulas (isto
é, uma lista separada por vírgulas de nomes de variáveis).
36. Linhas 27 e 28. Programa05

Utiliza System.out.print para exibir a mensagem “Digite o


primeiro número”. Essa mensagem é chamada prompt porque
direciona o usuário para uma ação específica. Utilizamos o método
println para que a entrada do usuário apareça na mesma linha que o
prompt. Lembre-se de que esses identificadores que iniciam com
letras maiúsculas representam em geral nome de classe. Portanto,
System é uma classe. A classe System faz parte do pacote
java.lang.
37. Linha 28. Programa05
Utiliza o método nextInt do valor input do objeto Scanner para
obter um inteiro digitado pelo usuário. Nesse momento o programa
espera que o usuário digite o número e pressione a tecla Enter para
submenter o número para o programa.
Nosso programa assume que o usuário inere um valor válido de
inteiro. Se não for válido, um erro de lógica em tempo de execução
ocorrerá e o programa terminará.
Na linha 28, o resultado da chamada ao método nextInt (um
valor int) é colocado na variável num1 utilizando o operador de
atribuição, =. A instrução exibe “number1 gets the value of
input.nextInt()”. Essa instrução inteira é chamada instrução de
atribuição porque atribui um valor a uma variável. Tudo à direita
do operador de atribuição, =, sempre é avaliado antes de a
atribuição ser realizada.
38. Linha 30. Programa05

Pede ao usuário inserir o segundo inteiro


A linha 31

Lê o segundo inteiro e o atribui à variável num2.


39. A linha 33. Programa05
40. O que É uma instrução de atribuição que calcula a soma das
variáveis num1 e num2 e, então, atribui o resultado à
variável soma utilizando operador de atribuição, =. A
instrução é lida como “soma obtém o valor de num1 e
num2”. Em geral, os cálculos são realizados em instruções
de atribuição. A encontrar a operação de adição, o programa
usa os valores armazenados nas variáveis num1 e num2 para
fazer o cálculo. Na instrução anterior, o operador de adição
é um operador binário – seus dois operandos nas variáveis
num1 e num2. As partes das instruções que contêm cálculos
são chamadas de expressões. De fato, uma expressão é
qualquer parte de uma instrução que tem um valor associado
com ela. Ex.: O valor da expressão num1 e num2 é a soma
dos números. Da mesma forma, o valor da expressão
input.next() é um inteiro digitado pelo usuário.

ARRAYS
Este capítulo apresenta estrutura de dados – coleções dos itens
de dados relacionado. Objetos array são estruturas de dados
consistindo em itens de mesmo tipo relacionados. Arrays tornam
conveniente processar grupos relacionados de valores. O
cumprimento de arrays permanece o mesmo depois que são
criados. Estudaremos estrutura de dados em profundidade
posteriormente.
41. O que é um arrays?
Um arrays é um grupo de variáveis (chamados elementos ou
componentes) que contém valores todos do mesmo tipo. Os arrays
são objetos; portanto, são considerados tipos por referência. Como
você logo verá, o que em geral consideramos um array é, na
verdade, uma referência a um objeto array na memória. Os
elementos de um array podem ser tipos primitivos ou tipos
referência. Para referenciar um elemento particular em um array,
especificamos o nome da referência para o array e o número de
posição do elemento é chamado de índice ou subscrito.
42. Qual a representação lógica de array?
A figura abaixo mostra uma representação lógica de um array de
inteiro chamado c. Esse array contém 12 elementos. Um programa
refere-se a qualquer um desses elementos com uma expressão de
acesso ao array que inclui o nome do array seguido pelo índice do
elemento particular entre colchetes ( [ ] ). O primeiro elemento em
cada array tem índice zero e às vezes é chamado zero-ésimo
elemento. Assim, os elementos de array são c [0], c [1], c [2] etc. O
índice mais alto no array c é 11, que é 1 menor que 12 – o número
de elementos no array. Nomes de array seguem as mesmas
convenções que outros nome de variável.
Um índice deve ser um inteiro não negativo. Um programa pode
utilizar uma expressão como um índice. Por exemplo, se supomos
que variável a é 5 e a variável b, 6, então a instrução adiciona 2 ao
elemento do array c[11]. Um nome de array indexado é uma
expressão de acesso a arrays, que pode ser usada à esquerda de
uma atribuição para colocar um novo valor em um elemento de
array.
Vamos examinar o array c na figura acima mais atentamente. O
nome do array C. Cada objeto array conhece seu comprimento e
armazena-o em variável de instância length. A expressão c.length
retorna o comprimento do array c. Embora a variável de instância
length de um array seja public, ela não pode ser alterada porque é
uma variável final. Os 12 elementos desse array são chamados c
[0], c [1], c [2], c [3], c [4], c [5], c [6], c [7], c [8], c [9], c [10],c
[9], c [10], [11]. Para calcular a soma dos valores contidos nos
primeiros três elementos de array c e armazenar o resultado na
variável soma, escreveríamos ea
seguinte saída

43. Como se declara um array?


Os objetos array ocupam espaço na memória. Como outros objetos,
arrays são criados com a palavra-chave new. Para um objeto array,
especifique o tipo dos elementos do array e o número de elementos
como parte de uma expressão de array que utiliza a palavra-chave
new. Tal expressão retorna uma referência que pode ser
armazenada em variável de array. A declaração e a expressão de
criação de arrays a seguir a seguir criam um objeto que contém 12
elementos int e armazenam a referência do array na variável c do
array:

Essa expressão pode ser utilizada para criar um array. Quando


um array é criado, cada um de seus elementos recebe um valor
padrão – zero para os elementos de tipo primitivo numéricos, false
para elementos boolean e null para referências. Como veremos
adiante, pode-se fornecer valores não padrão de elementos ao criar
um array.
Na declaração, os colchetes que seguem o tipo indicam que c é
uma variável que referenciará um array (isto é, a variável
armazenará uma referência de array). Na instrução de atribuição, a
variável de array c recebe a referência para um novo array de 12
elementos int.
Atenção: Em uma declaração de array, especificar o número de
elementos entre os colchetes da declaração (Ex.: int [12] c) é um
erro de sintaxe.
Um programa pode criar vários arrays em uma única declaração.
A declaração seguinte reserva 100 elementos para b e 27 para
elementos para x:

Quando o tipo de array e os colchetes são combinados no início


da declaração, todos os identificadores na declaração são variáveis
de array. Nesse caso, as variáveis b e x referem-se as arrays String.
Para mais legibilidade, é preferível que se declare apenas uma
variável por declaração. A declaração anterior é equivalente a:

44. Como se cria um array?


O aplicativo abaixo utiliza a palavra chave new para criar um
array de 10 elementos int, que são inicialmente zero (o padrão para
variáveis int).

Que tem a seguinte saída.

A linha 21 declara array – uma referência capaz de se referir a


um array dos elementos int -, então inicializa a variável com
referência a um objeto array contendo 10 elementos int.
A linha 23 gera uma saída dos títulos da coluna. A primeira
coluna contém o índice (0 a 9) de cada elemento de array, e a
segunda, o valor inicial padrão (0) de cada elemento de array.
A instrução for nas linhas 26 e 27 gera saída do índice
(representado por contador) e o valor de cada elemento de array
(representado por array [contador]). A variável de controle
contador é o inicialmente 0 – valores de índice começam em 0,
portanto usar contagem baseada em zero permite que o loop acesse
cada elemento do array. A condição de continuação do loop for
utiliza a expressão array.length para determinar o comprimento do
array. Nesse exemplo, o comprimento do array é 10, assim o loop
continua a executar enquanto o valor da variável de controle
contador for menor que 10. O valor de índice mais alto de um array
de 10 elementos é 9, portanto, usar o operador “menor que” na
condição de continuação do loop que o loop não tente acessar um
elemento além do fim do array (isto é, durante a iteração final do
loop, contador é 9)

Você também pode gostar