DS1 4
DS1 4
Desenvolvimento de Sistemas
LÓGICA DE
PROGRAMAÇÃO
GEEaD - Grupo de Estudos de Educação a Distância
Centro de Educação Tecnológica Paula Souza
São Paulo – SP, 2019
Expediente
GOVERNO DO ESTADO DE SÃO PAULO
EIXO TECNOLÓGICO DE INFORMAÇÃO E COMUNICAÇÃO
TÉCNICO EM DESENVOLVIMENTO DE SISTEMAS
LÓGICA DE PROGRAMAÇÃO
Autores:
Eliana Cristina Nogueira Barion
Marcelo Fernando Iguchi
Paulo Henrique Mendes Carvalho
Rute Akie Utida
Revisão Gramatical:
Juçara Maria Montenegro Simonsen Santos
A LÓGICA
APLICADA
EM JAVA
Comandos
de Entrada
e Saída de
dados
A LÓGICA APLICADA EM JAVA
Agora que você já instalou a IDE Java, seja o Netbeans, Eclipse, Intellij IDEA ou outro tipo de IDE, vamos
estudar a estrutura de um programa Java e colocar em prática as estruturas lógicas de programação.
Vamos lá?
Agora que você já criou um código fonte em Java, você poderá aprender a estrutura básica de um
programa. A seguir, temos uma imagem representando um código fonte em Java:
Imagem 21: A imagem representa a estrutura básica de uma classe o símbolo “abre e fecha chaves” significa início e fim de programa,
respectivamente. A estrutura de um programa é composta por: public class “nome do Programa”, abre chave, public static void main (String[]
args, fecha a chave { da estrutura principal, onde será inserida a codificação a ser desenvolvida e fecha a chave da classe principal.
Você pode ver na imagem que o programa em si está dentro de uma classe, essa estrutura é necessária para
seu funcionamento, porém, para estudos de lógica de programação não abordaremos os conceitos de
Orientação a objetos.
Os comandos Início e Fim contidos no Pseudocódigo são substituídos por chaves { } em Java, sendo a abertura
de Chave { o início e, o fechamento de chave } o final do seu programa. Em algumas estruturas que veremos
posteriormente, também utilizaremos marcações de início e fim por meio de chaves.
A partir de agora, além da sua forma utilizada no fluxograma e no pseudocódigo, os novos comandos
também serão apresentados em Java.
O comando Escreva
escreva
mensagem
4
A LÓGICA APLICADA EM JAVA
Com o auxílio dele é possível enviar uma simples mensagem ao usuário do programa, como também,
mostrar o resultado de uma conta. Na prática, você deverá utilizar este comando para mostrar tudo o que
você deseja que o usuário veja.
Em Java, por ser uma linguagem de programação, devemos indicar o caminho completo da operação
de exibição de mensagem para o usuário, que é feita da seguinte forma:
Imagem 22: Representação da estrutura do comando System.out.println. Descrição do comando: System: Biblioteca
responsável pela iteração com o Sistema Operacional. Out: Indica que o comando a ser utilizado será uma saída de dados
do sistema. Println: Indica que a saída de dados será feita na tela do susário. Pode ser substituído pelo comando print.
VOCÊ NO COMANDO
Reflita e responda: Agora que vimos o comando print e println, reflita e
responda: Qual dos dois comandos você acha que é o mais eficiente?
Existe alguma situação específica para a utilização de cada um dos
comandos?
A resposta é muito simples: depende do caso! O comando print escreverá a mensagem na tela sem efetuar
nenhuma modificação na mensagem. O comando println pulará uma linha na tela, ao final da escrita da
mensagem.
Portanto, se a sua intenção é exibir a mensagem grudada na mensagem exibida anteriormente, utilize o print,
caso você deseje que a mensagem seja exibida em uma nova linha, utilize o println.
Para utilizar uma variável, devemos primeiramente declará-la no texto do programa. Mas o que significa
declarar uma variável?
Com a declaração de variável avisamos o computador que ele deve criar um espaço na memória para receber
um valor posteriormente. Todo o espaço na memória declarado deve ter um nome e ser vinculado a um tipo
de variável. Informamos qual é o seu tipo (inteiro, texto ou real, por exemplo) e, além disso, qual é o nome
que usaremos para referenciá-la no texto do programa. Por exemplo, para declarar uma variável do tipo
inteiro que representa o número de matrícula de um aluno, utilizamos o seguinte código:
5
A LÓGICA APLICADA EM JAVA
int numeroMatricula;
Tipos de
Tipos de Valores compreendidos dentro do Exemplo de
variáveis
variáveis Java tipo valores em Java.
Pseudocódigo
byte Números entre -128 e 127. 10
short Números entre -32768 e 32767. 13320
Números entre -2147483648 e
Int -170000000
Inteiro 2147483647.
Números entre -
long 9223372036854775808 e 14000222999333
9223372036854775807.
float Números reais entre -1038 até 1038. 0.134
Real 143.49382930192
double Números reais entre -10308 até 10308.
83
Um único caractere (letra), entre
char ‘d’
apóstrofos. Exemplo: ‘a’.
Caractere
Mais de um caractere, entre aspas.
String “Informática”
Exemplo: “Técnico em Informática”.
Lógico boolean Verdadeiro ou Falso. Falso
Imagem 23: Tabela de tipos de variáveis e suas representações em pseudocódigo e Java – no pseudocódigo temos as variáveis inteiro, real,
caractere e lógico em Java o inteiro é representado pelos tipos byte, short, int, long, o real por float e double, o tipo caractere por char e String
e o lógico como boolean, lembrando que cada tipo de variável numérica é representada pela sua faixa de valores.
Note que em Java, o único tipo de dado que se inicia com letra maiúscula é o String. Vale lembrar
também que os números decimais são separados por ponto ( . ) ao invés de vírgula.
No caso de armazenamento de número de telefone, qual seria o tipo de dado a ser aplicado?
O número de telefone seria uma variável do tipo String, pois apesar de ser um número de telefone, não
efetuamos nenhum tipo de cálculo com este número, sendo assim, não é necessário definir este tipo de dado
como inteiro.
Após identificar o tipo da variável que você utilizará, basta declará-la em seu programa, seguindo o padrão
para cada linguagem de programação, sendo:
PSEUDOCÓDIGO JAVA
declare
nome da variavel como tipodedado tipodedado nome da variavel;
Pseudocódigo Java
Exemplo declare
nome como caractere String nome;
idade como inteiro int idade;
preco como real double preco;
Imagem 24: Tabela de representação de declaração de variáveis em fluxograma, pseudocódigo e codificação em Java – deve-se seguir o
padrão de cada linguagem, ambos fluxograma e pseudocódigo as variáveis são declaradas da mesma forma, nome da variável e o seu
tipo, em Java primeiro declara-se o tipo de dado e depois o nome da variável.
6
A LÓGICA APLICADA EM JAVA
Quando nomeamos as variáveis, é imprescindível também seguir algumas regras, que são:
Imagem 25: Nomeação de variáveis – exemplos de nomes de variáveis corretas e incorretas, variáveis corretas sem espaço
em branco, variáveis incorretas com espaço em branco. Na imagem temos 4 quadros com declaração de variáveis. 1º
quadro: “nome do aluno como caractere”, 2º quadro: string data de nascimento. Esses dois quadros, posicionados à
esquerda, estão com um xis vermelho indicando erro. Do lado direito temos mais dois quadros. 3º quadro: nomeAluno
como caractere e o 4º quadro: string data_nascimento. Esses dois últimos quadros estão com um ticket verde à esquerda
indicando que estão corretos.
Caso você necessite de mais de uma palavra para definir o nome de uma variável, junte as palavras ou então
separe-as apenas com um underline.
Remova as preposições do nome da variável, assim o nome dela ficará mais objetivo e fácil de entender.
Não inclua mais do que duas palavras em um nome de variável, seja sempre objetivo.
Imagem 26: Nomeação de variáveis – exemplos de variáveis corretas e incorretas, não é permitido o uso de caracteres especiais. Na
imagem temos 4 quadros com declaração de variáveis. 1º quadro: “masculono/feminino como caractere”, 2º quadro: int
di@sem@n@. Esses dois quadros, posicionados à esquerda, estão com um xis vermelho indicando erro. Do lado direito temos mais
dois quadros. 3º quadro: sexo como caractere e o 4º quadro: int diasemana. Esses dois últimos quadros estão com um ticket verde à
esquerda indicando que estão corretos.
7
A LÓGICA APLICADA EM JAVA
Imagem 27: Nomeação de variáveis – exemplos de variáveis corretas e incorretas, não é permitido o uso de acentuação nos nomes. Na imagem
temos 4 quadros com declaração de variáveis. 1º quadro: “String preço”, 2º quadro: Double média. Esses dois quadros, posicionados à
esquerda, estão com um xis vermelho indicando erro. Do lado direito temos mais dois quadros. 3º quadro: String preco e o 4º quadro: Double
media. Esses dois últimos quadros estão com um ticket verde à esquerda indicando que estão corretos.
Você poderá utilizar, normalmente, um número no nome da sua variável, desde que este número não seja o
primeiro caractere de seu nome.
Imagem 28: Nomeação de variáveis- exemplos de variáveis corretas e incorretas, não é permitido iniciar o nome com um número. Na imagem
temos 4 quadros com declaração de variáveis. 1º quadro: “1nota como real”, 2º quadro: String 10convidado. Esses dois quadros, posicionados
à esquerda, estão com um xis vermelho indicando erro. Do lado direito temos mais dois quadros. 3º quadro: nota1 como real e o 4º quadro:
String convidado10. Esses dois últimos quadros estão com um ticket verde à esquerda indicando que estão corretos.
8
A LÓGICA APLICADA EM JAVA
O comando Leia
O comando Leia é o comando responsável por receber dados inseridos pelo usuário. Em geral, estes dados
são inseridos por meio do teclado, podendo ser numérico ou caractere dependendo do tipo de dados para
que a variável - que receberá o valor - estiver configurada.
Como o computador não saberá qual será o valor que o usuário digitará, sempre teremos que utilizar uma
variável para armazenar o valor obtido por meio do comando Leia. A sintaxe do comando Leia é:
leia (variável)
PSEUDOCÓDIGO
Variável que receberá o dado
digitado pelo usuário
Imagem 29: Comando “leia” – recebe um valor digitado pelo usuário
Em Java, um programa inicial contém a exibição de mensagens no monitor, processamentos básicos de dados
e utilização de variáveis com o objetivo de garantir a otimização do espaço de seu programa em disco e,
consequentemente, o peso da sua aplicação.
Para que seja possível a utilização de recursos diferentes, é necessário realizar uma importação de uma
biblioteca de classes para o seu Projeto.
Estas bibliotecas contêm as instruções necessárias para que o Java consiga trabalhar com novas funções
conforme a necessidade do programador. Vale lembrar que não é recomendado que você faça uma importação
de biblioteca em seu programa, caso não tenha intenção de utilizá-la, pois isto poderá acarretar perda de
desempenho desnecessária em sua aplicação.
9
A LÓGICA APLICADA EM JAVA
Imagem 30: comando para importação da biblioteca Java. A imagem explica cada comando de importação da biblioteca import
java.util.Scanner; sendo: import – palavra chave para importar bibliotecas, java é a biblioteca básica do Java, útil o pacote de utilitários do
Java e Scanner a ferramenta para leitura de dados. Este é o comando para importar a biblioteca Scanner, responsável pela leitura de dados.
Note que o comando import deve ser inserido na primeira linha do seu código, antes mesmo de todos os
códigos gerados automaticamente pela IDE Netbeans.
Não! O Java possui inúmeras bibliotecas que poderão ser importadas sempre que necessário. Além disto, você
também poderá importar bibliotecas feitas por outras pessoas, como objetivo de poupar muito trabalho no
desenvolvimento de uma nova ferramenta a partir da estaca zero.
10
A LÓGICA APLICADA EM JAVA
Voltando a leitura de dados. Após a importação da ferramenta Scanner, precisamos “criá-la” dentro do nosso
programa, utilizando o seguinte comando:
Imagem 32: sintaxe de criação do comando scanner: Scanner leitor = new Scanner(System.in); Sendo: Scanner o nome da
ferramenta. Leitor é o apelido para o uso corrente. New Scanner é a indicação de que o leitor terá como base a ferramenta Scanner
e System.in que indica que o Scanner será utilizado como entrada de dados do sistema.
O comando para criar o leitor dentro do nosso programa é chamado de instância. Na instância, a sua
ferramenta importada cria vida, tornando-se funcional e utilizável na sua aplicação. A partir deste
momento, o leitor será carregado na memória do computador junto com a sua aplicação.
11
A LÓGICA APLICADA EM JAVA
Agora que já vimos individualmente as principais ferramentas de uma linguagem de programação, chegou a
hora de praticarmos, produzindo um programa completo. Para tanto, vamos criar um programa que calcule
a soma de dois números digitados pelo usuário:
Entrada: O programa deverá solicitar que o usuário digite dois números, do tipo numérico.
Processamento: O programa calculará a soma destes números.
Saída: O programa exibirá a soma destes números.
Imagem 34: A imagem mostra três quadrados verdes escrito Entrada, Processamento e Saída de Dados. Na seta que vai da entrada para
o processamento, temos a representação de um usuário. Um rótulo escrito Programa que aponta para o processamento e uma seta
com um computador aponta para a saída de dados.
Seguindo a definição de variáveis, precisamos identificar quais dados não serão fixos no nosso programa.
Verificando as informações construídas no passo 1, nota-se que os dois números que o usuário digitar e a
soma deles não são fixos, podendo ser modificado cada vez que o usuário utilizar o programa.
Logo, as variáveis serão: numero1 como inteiro numero2 como inteiro Soma como inteiro
12
A LÓGICA APLICADA EM JAVA
Imagem 35: GEEaD: Representação de um Fluxograma – o exemplo usado é para ler dois números, calcular a soma destes e apresentar o
resultado.
Sempre procure identificar a entrada, o processamento e a saída dos seus dados em qualquer fluxograma,
assim a chance de conter erros no fluxograma cairá consideravelmente.
13
A LÓGICA APLICADA EM JAVA
Declare
numero1 como inteiro
numero2 como inteiro
soma como inteiro
Inicio
Escreva(“Programa Soma – Este programa calculará a soma entre 2 números”)
Escreva(“digite o PRIMEIRO número”)
Leia(numero1) Entrada
Escreva(“digite o SEGUNDO número”)
Leia(numero2)
Processamento
soma <- numero1 + numero2
Imagem 36: Nesse pseudocódigo existe uma caixa à direita indicando que os comandos “Leia número 1 e leia número 2 representam a entrada
de dados, soma = numero1 + numero2 representa o processamento dos dados e o comando Escreva(“A soma dos números é: “ + soma)
representa a saída de dados.
Assim como fizemos com o Pseudocódigo, basta aplicar as regras básicas da linguagem Java.
Em primeiro lugar, criaremos um projeto para este exemplo, da mesma forma que vimos anteriormente.
A seguir, aplicamos o Pseudocódigo, adaptando-o para a linguagem Java. Não podemos esquecer de
importar a biblioteca responsável pela leitura de dados:
14
A LÓGICA APLICADA EM JAVA
import java.util.Scanner;
}
Imagem 37: Codificação em Java da Classe SomaValores - o exemplo de soma de dois valores foi representado usando código da
linguagem Java.
Algumas considerações:
1. Você percebeu que há explicações precedidas por duas barras // ou /* ? Estes sinais indicam
comentários do Java, com eles você poderá escrever qualquer mensagem para o programador ou
então anotar informações importantes sobre o seu código. Estes códigos não serão processados pelo
computador.
15
A LÓGICA APLICADA EM JAVA
2. O Java é uma linguagem Case Sensitive, ou seja, diferencia as letras maiúsculas de minúsculas.
Para o Java a letra “a” minúscula é diferente da letra “A” maiúscula. Por este motivo, os comandos da
linguagem devem ser reproduzidos, fielmente, de acordo com a apresentação, caso contrário o
comando não será reconhecido. É o caso do System.out.println(), onde o S deve ser sempre digitado
em letra maiúscula. Essa regra também é valida para a declaração e utilização de variáveis.
3. Todo o comando feito em Java deve ser finalizado por um ponto e vírgula ( ; ). É com o ponto e
vírgula que o Java entende que o comando foi finalizado, executando-o e preparando-se para receber
o próximo comando. Caso você esqueça do ponto e vírgula (que por sinal é o erro mais comum), o seu
programa não funcionará.
4. Caso o seu texto digitado com auxílio do Netbeans fique sublinhado em vermelho, significa que ele
está com erro. Caso isto ocorra, primeiro você deve sempre o corrigir, caso contrário seu programa
não funcionará. Geralmente estes erros são causados por “erro de sintaxe”, em outras palavras, o
comando foi digitado incorretamente.
5. Comandos sublinhados em amarelo não são erros. Geralmente são recomendações ou aviso de
variáveis declaradas, mas não utilizadas.
16
A LÓGICA APLICADA EM JAVA
Caso a janela console não apareça, você pode abri-la acessando o menu Window > Show View >Console
Vale lembrar que caso tenha erros em seu código fonte, a IDE
(Netbeans) retornará uma mensagem de erro, pois não é possível executar
o seu código enquanto os erros (sublinhados em vermelho) não sejam
corrigidos.
17
A LÓGICA APLICADA EM JAVA
d) Juntar as palavras “Técnico” com “Módulo” com “1”.
2. Crie um Fluxograma, um Pseudocódigo e uma codificação Java que satisfaça às seguintes situações:
a. Leia o seu nome e sobrenome, e exiba-os na sua forma inversa (sobrenome, nome).
b. Leia dois números inteiros, realize a multiplicação do primeiro pelo segundo e exiba o resultado final.
1.
a) Multiplicar por 2 o resultado de (7 + 3)+3.
18
A LÓGICA APLICADA EM JAVA
2.
a. Leia o seu nome e sobrenome, e exiba-os na sua forma inversa (sobrenome, nome).
Fluxograma Pseudocódigo
Início Declare
nome como caractere
sobrenome como caractere
nome como caractere Inicio
sobrenome como caractere
Escreva(“Programa 5a – Este programa inverterá o seu
nome e sobrenome”)
Programa 5a – Este Escreva(“Digite o seu nome: “)
programa inverterá o seu Leia(nome)
nome e sobrenome.
Escreva(“Digite o seu sobrenome: “)
Leia(sobrenome)
Escreva( sobrenome + “, “ + nome);
Digite o seu nome: Fim
nome
sobrenome
sobrenome + nome
Fim
Codificação em Java:
import java.util.Scanner;
Pseudocódigo Fluxograma
Programa ex6
Declare
num1 como inteiro
num2 como inteiro
multi como inteiro
Início
Escreva (“Digite primeiro número”)
Leia (num1)
Escreva (“Digite segundo número”)
Leia (num2)
multi ← num1 * num2
Escreva (“A multiplicação é”)
Escreva (multi)
Fim.
20
A LÓGICA APLICADA EM JAVA
Codificação em Java:
1- import java.util.Scanner;
2-
3- public class Programa_ex6 {
4- public static void main (String args[]){
5- //Declaração das variáveis
6- int numero1;
7- int numero2;
8- int multi;
9- Scanner leitor = new Scanner(System.in);
10- // início do programa
11- System.out.println("Programa 6a – Soma de valores");
12- System.out.println("Digite o PRIMEIRO valor");
13- //leitura do primeiro valor
14- numero1 = leitor.nextInt();
15- System.out.println("Digite o SEGUNDO valor");
16- //leitura do primeiro valor
17- numero2 = leitor.nextInt();
18- //Processamento
19- multi=numero1*numero2;
20-
21- //saída
22- System.out.println("Resultado" + multi);
23- }
24- }
25- }
21