técnicas de programação - blackboard learn · os diagramas de blocos podem ser representados de...

30
Técnicas de Programação

Upload: lykiet

Post on 28-Apr-2018

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

Técnicas de Programação

Page 2: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres
Page 3: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

Material Teórico

Responsável pelo Conteúdo:Prof.a Esp. Margarete Eliane da Silva Almendro

Revisão Técnica:Prof. Me. Douglas Almendro

Revisão Textual:Prof.a Eliane Tavelli Alves

Conceito de Lógica Aplicada a Programas

Page 4: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres
Page 5: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

5

• Introdução

• Nomenclaturas

• Resolução de problemas

• Tipos de Dados

• Variáveis

• Comandos de Entrada e Saída (Input/Output)

• Características Gerais de Java

• Operadores

• Expressões Aritméticas

Nesta unidade o aluno terá uma visão do que vem a ser algoritmos de programação, bem como suas facetas, para entender o pensamento de programação computacional.

Para que você possa obter um bom aproveitamento nesta unidade vamos conferir a estrutura da mesma:

Atividade de Sistematização: os exercícios disponibilizados são de autocorreção e visam permitir a você praticar o que aprendeu na disciplina e a identificar os pontos em que precisa prestar mais atenção, ou pedir esclarecimentos a seu tutor. Além disso, as notas atribuídas aos exercícios farão parte de sua média final na disciplina.

Atividade de Aprofundamento: é uma atividade dissertativa ou de pesquisa.

Material Complementar e Referências Bibliográficas: nestes links você poderá ampliar seus conhecimentos.

Videoaula: neste link serão apresentadas algumas ferramentas e a utilização delas na prática; também se apresenta a resolução de alguns exercícios de forma prática.

Lembramos a você da importância de realizar todas as atividades propostas dentro do prazo estabelecido para cada unidade, dessa forma, você evitará que o conteúdo se acumule e que você tenha problemas ao final do semestre.

Uma última recomendação, caso tenha problemas para acessar algum item da disciplina, ou dúvidas com relação ao conteúdo, não deixe de entrar em contato com seu professor tutor através do botão mensagens ou fóruns.

Conceito de Lógica Aplicada a Programas

Page 6: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

6

Unidade: Conceito de Lógica Aplicada a Programas

Contextualização

Pela definição do Dicionário Aurélio, lógica é a sequência coerente, regular e necessária de acontecimentos, de coisas ou fatos; ou a maneira de raciocínio particular que cabe a um indivíduo ou a um grupo. Então, podemos dizer que lógica é a ciência que estuda as leis e critérios de validade que regem o pensamento e a demonstração, ou seja, ciência dos princípios formais do raciocínio.

Muitos desenvolvedores “desenham” o processo do programa antes do desenvolvimento do código, essa técnica tem como objetivo:

» Agilizar a codificação da escrita da programação; » Facilitar a depuração da sua leitura; » Permitir a verificação de possíveis falhas apresentadas pelos programas.

Deve ser composta por quatro passos fundamentais: » Facilitar as alterações e atualizações dos programas;

» Escrever as instruções em sequências ligadas entre si apenas por estruturas sequenciais, repetitivas ou de seleção;

» Escrever instruções em grupos pequenos e combiná-las;

» Distribuir módulos do programa entre os diferentes programadores que trabalharão sob a supervisão de um programador sênior ou chefe.

Page 7: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

7

Introdução

Lógica

Para os profissionais da área de tecnologia, o uso da lógica é um fator importante a ser considerado, porque a todo tempo os programadores e analistas e precisam resolver problemas do seu cotidiano. Saber lidar com problemas de ordem administrativa, de controle, de planejamento e de estratégia requer atenção e boa técnica para representar esses problemas.

Lógica aplicada no desenvolvimento de softwares ou programas

Muitos desenvolvedores “desenham” o processo do programa antes do desenvolvimento do código. O que é chamado de ‘desenho’ são as etapas que o programa deveria realizar e uma forma de testar os pontos chaves do programa verificando se não existe nenhum erro de lógica de programação. Esses desenhos são chamados de diagramas de blocos que, após a conclusão, poderão ser interpretados por qualquer desenvolvedor e ser desenvolvidos em qualquer linguagem disponível no mercado.

A técnica mais importante no projeto da lógica de programas denomina-se programação estruturada, a qual consiste em uma metodologia de projeto objetivando:

» Agilizar a codificação da escrita da programação;

» Facilitar a depuração da sua leitura;

» Permitir a verificação de possíveis falhas apresentadas pelos programas.

Ela deve ser composta por quatro passos fundamentais:

» Facilitar as alterações e atualizações dos programas;

» Escrever as instruções em sequência ligadas entre si apenas por estruturas sequenciais, repetitivas ou de seleção;

» Escrever instruções em grupos pequenos e combiná-las;

» Distribuir módulos do programa entre os diferentes programadores que trabalharão sobre a supervisão de um programador sênior ou chefe.

Page 8: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

8

Unidade: Conceito de Lógica Aplicada a Programas

Nomenclaturas

Muitos profissionais utilizam a linguagem para denominação de símbolos que representam a linha de raciocínio lógico de fluxogramas, diagramas de blocos e algoritmos. Vejam a definição de cada um.

Fluxograma Ferramenta utilizada pelos profissionais de análise de sistemas para descrever o fluxo de ação de uma atividade automatizada ou manual. Usa símbolos denominados pela norma ISO 5807:1985, e é representado por alguns desenhos geométricos

Diagrama de blocos Também conhecido como diagrama de fluxo (diferente de fluxograma), uma ferramenta utilizada pelo programador com o objetivo de descrever o método e a sequência de ações ou eventos a serem executadas pelo computador. Também é utilizada diversas formas geométricas para representar as atividades. Esses símbolos são conhecidos mundialmente e definidos pela norma ISO 5807:1985(E). Após a criação do diagrama de blocos, a próxima etapa será a codificação do programa na linguagem escolhida pelo programador.

Algoritmo Conjunto de regras formais que serão utilizados para a resolução do problema. Nessa solução pode-se dizer que estão embutidos as fórmulas de expressões aritméticas.

Os algoritmos podem ser representados por meio da escrita ou representados por meio de formas geométricas. Em suma, o algoritmo pode ser definido como a resolução do problema e a transformação desse problema em um programa que possa ser executado por um programador.

Page 9: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

9

Na ciência da computação, eles podem ser definidos como uma sequência de instruções ou operações básicas, cuja execução, em tempo finito resolve um problema computacional.

Eles podem ser representados graficamente, em pseudocódigo ou diretamente na linguagem escolhida para desenvolvimento do programa.

A forma de representação gráfica, segundo ISO 5807:1985 é uma forma de representar os dados e os procedimentos a serem executados por um programa a partir da linha de raciocínio lógico de um programador para demonstrar o resultado final de um programa.

média =(nota1 + nota 2)/2

média =(nota1 + nota 2)/2

média > 6

vai para exame vai para exame

notaexame

notaexame

Resultado =(média + exame)/2

Resultado =(média + exame)/2

Resultado ≥ 5 Resultado ≥ 5

Aprovado

Aprovado

AprovadoReprovado

S

S

N

N

Aprovado

média > 6 AprovadoS

S

N

N

Page 10: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

10

Unidade: Conceito de Lógica Aplicada a Programas

Resolução de problemas

Para que um diagrama de blocos seja desenvolvido de forma correta, deve-se levar em consideração como procedimentos prioritários as seguintes regras:

» Diagramas de blocos devem ser feitos e quebrados em vários níveis;

» Para o desenvolvimento correto de um diagrama de bloco, ele deve ser iniciado de cima para baixo;

» Não deve ocorrer, em hipótese alguma, cruzamentos de linhas de fluxo de dados entre os símbolos.

Os diagramas de blocos podem ser representados de várias formas, o que não impede que a solução seja entregue e sem erros. Vejamos alguns exemplos:

Linear A técnica linear é conhecida como um modelo tradicional de desenvolvimento e resolução de problemas.

Estruturada Essa técnica é mais utilizada pelos profi ssionais de processamento de dados. A sequência, a seleção e a interação são as três estruturas básicas para a construção do diagrama de bloco.

Modular A técnica da lógica modular deve ser elaborada como uma estrutura de partes independentes, denominadas de módulos, cujo procedimento é controlado por um conjunto de regras.

Representação em Pseudocódigo

Essa técnica é baseada no Program Design Language – PDL, onde a linguagem é apresentada e codifi cada na língua portuguesa. Ela foi desenvolvida com o propósito de ser uma ferramenta comercial que poderia ser utilizada com qualquer linguagem. Por ser uma escrita didática, começou a ser utilizada para o ensino de programação. Por exemplo:

algoritmo <Nome do algoritmo><declaração de variáveis>

início<corpo do algoritmo>

Fim

Page 11: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

11

Tipos de Dados

Quando especificamos um algoritmo, detalhamos os dados (números binários, isto é, sequências de 0s e 1s armazenadas na memória e que correspondem à porção das informações a serem processadas) que serão processados e as instruções (ou comandos; que comandam o funcionamento da máquina e determinam como devem ser manipulados os dados) que vão operar sobre esses.

O objetivo é classificar os dados de acordo com o tipo de informação contida neles. A classificação apresentada não se aplica a nenhuma linguagem de programação específica.

Inteiro Informações que não possuem componente decimal ou fracionário, podendo ser positivo ou negativo.

Real Informações que podem possuir componentes decimais ou fracionários; podem ser positivos ou negativos. A simples existência do ponto decimal diferencia um dado numérico do tipo inteiro de um do tipo real.

Caracter É constituído por uma sequência de caracteres contendo letras, dígitos e/ou símbolos especiais. São representados nos algoritmos pela coleção de caracteres delimitada pelas aspas (“texto”).

Lógico Informação que pode assumir apenas dois possíveis valores: verdadeiro ou falso, sim/não, 1/0, true / false.

A figura abaixo representa a disposição dos tipos de dados.

Tipos de dados

Caracter LógicoNumérico

RealInteiro

Page 12: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

12

Unidade: Conceito de Lógica Aplicada a Programas

Variáveis

Uma variável é, simplesmente, um espaço, reservado e rotulado para armazenar dados. Toda variável tem um nome que a identifica univocamente (identificador) e um valor, que corresponde à informação a ela atribuída.

12num1

num2

Nomes

Memória

3

Nos algoritmos, cada variável corresponde a uma posição de memória, cujo conteúdo pode ser alterado em algum instante no decorrer do tempo, ou seja, durante a execução de um algoritmo. Embora uma variável possa assumir diferentes valores, ela só pode armazenar um valor a cada instante.

Uma variável possui três atributos: um nome (ou identificador), um tipo de dado e a informação por ela guardada.

Todo nome de uma variável tem a função de diferenciá-la das demais. Cada linguagem de programação estabelece suas próprias regras de formação de nomes de variáveis.

O nome de uma variável deve ser representativo do seu conteúdo e possui as seguintes regras:

1. Não pode começar com números, apenas com letras, underscore ou $.

2. Não pode conter espaços em branco.

3. Não pode conter caracteres especiais (#, ?, !, @).4. Não pode ser palavras reservadas.

Declaração de VariáveisTodas as variáveis utilizadas nos algoritmos devem ser definidas antes de serem utilizadas. Isto se

faz necessário para permitir que o compilador reserve um espaço na memória para as mesmas.

Para indicar o tipo de uma ou mais variáveis é feita a declaração de variáveis. A partir do momento da declaração das variáveis, é feita uma associação do nome escolhido, com a respectiva posição de memória.

Page 13: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

13

Exemplo:inteiro number1,number2real arquivocaracter nomelógico escolha

Inicialização de VariáveisExistem várias maneiras de atribuir valores a variáveis:

Dizendo no algoritmo qual o valor a variável deve assumir:

real preçopreço = 12.99

Definir que uma variável assuma o valor de uma outra variável:

inteiro n1,n2

n1 = 10

n2 = n1

Atribuir uma variável ao resultado de uma expressão:

real a,b,c

a = 12.05

b = 5.20

c = a * b

Observações: » Uma variável do tipo real só poderá assumir valores com ponto flutuante ou inteiro. Caso sejam valores flutuantes, somente por meio do ([.] ponto) e não da vírgula por conta de estarmos trabalhando com o padrão inglês.

» Variáveis do tipo inteiro só assumem a parte inteira de um número.

» Variáveis do tipo char assumem qualquer valor, pois estará convertendo os mesmos em sequência de caracteres.

» Variáveis do tipo lógico assumem somente valores true ou false.

Page 14: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

14

Unidade: Conceito de Lógica Aplicada a Programas

Comandos de Entrada e Saída (Input/Output)

Os algoritmos precisam ser ‘alimentados’ com dados provenientes do meio externo para efetuarem as operações e cálculos e é necessário também mostrar os resultados.

Comando de entrada:

LEIA tem como finalidade atribuir o dado a ser fornecido à variável identificada.

leia <variável>

Comando de saída:

ESCREVA cuja finalidade é exibir uma mensagem. Essa mensagem pode ser um texto ou o conteúdo de uma variável, ou ambos juntos:

escreva “Mensagem”escreva “Mensagem”+<variável>escreva <variável>

Exemplo – Algoritmo 01

Algoritmo Quadrado de um Númerointeiro q,n

inícioescreva “Entre com o número”leia nq = n*nescreva “O quadrado de” + n + “é” + q

fim

Exemplo – Algoritmo 02

Algoritmo Volume de um Cilindroreal a, r, v, PIPI = 3.1415

inícioescreva “Entre com o raio”leia rescreva “Entre com a altura”leia av = PI * r * r * aescreva “O volume do cilindro é” + v

fim

Page 15: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

15

Características Gerais de Java

Java possui uma coleção de APIs (bibliotecas) padrão que podem ser usadas para construir aplicações:

» Organizadas em pacotes (java.*, javax.* e extensões). » Usadas pelos ambientes de execução (JRE) e de desenvolvimento (SDK).

As principais APIs são distribuídas juntamente com os produtos para desenvolvimento de aplicações:

Java 2 Standard Edition (J2SE): Ferramentas e APIs essenciais para qualquer aplicação Java (inclusive GUI).

Java 2 Enterprise Edition (J2EE): Ferramentas e APIs para o desenvolvimento de aplicações distribuídas.

Java 2 Micro Edition (J2ME): Ferramentas e APIs para o desenvolvimento de aplicações para aparelhos portáteis.

Desenvolvimento e execução

» Java Development Kit (JDK)Coleção de ferramentas de linha de comando para, entre outras tarefas, compilar, executar e depurar aplicações Java.Para habilitar o ambiente via linha de comando é preciso colocar o caminho $JAVA_HOME/bin no PATH do sistema.

» Java Runtime Environment (JRE)Tudo o que é necessário para executar aplicações Java.JVM – Java Virtual Machine (Máquina Virtual Java).

Mecanismo de Trabalho

Programa Java ( .java)

Classes ( .class)

Interpretador Javajava

Execução do código

BytecodesInstruções Java VirtualMachine - JVM

Compilador Java

Na fase de execução énecessário que haja aMáquina Virtual Java(MVJ)

A JVM interpreta os bycodesgerados pelo compilador.O objetivo da JVM é permitirque qualquer sistemaoperacional poassa executaruma aplicação Java

Pacotes javac

Page 16: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

16

Unidade: Conceito de Lógica Aplicada a Programas

Classe Java

Uma classe deve começar com a criação do seu nome de arquivo em maiúsculo e deve ter o mesmo na digitação da classe.

Comentando um pouco sobre o código acima:

Page 17: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

17

Tipo de Dados em Java

Importação de dados

Na classe JOptionPane há alguns métodos que possibilitam trabalhar com janelas. Veremos os métodos showInputDialog( ) e o showMessageDialog( ).

Para ter acesso a estas classes, deveremos importar o pacote onde ela se encontra. A classe JOptionPane está no pacote javax.swing. Portanto, como primeira linha do nosso programa temos que colocar o comando import javax.swing.*;

Entrada de Dados

Para a entrada de dados em Java temos uma particularidade, pois tudo o que o usuário digitar será sempre uma String “conjunto de caracteres”. Mas e se precisarmos atribuir um valor numérico?

Para isto temos os conversores de String para número.

» Integer.parseInt( ); Inteiro » Float.parseFloat( ); Float » Double.parseDouble( ); Double » Long.parseLong( ); Long

A linha para entrada de dados fica da seguinte forma:

» nota=Float.parseFloat(JOptionPane.showInputDialog(“Entre com a nota”) );

Page 18: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

18

Unidade: Conceito de Lógica Aplicada a Programas

Abaixo um exemplo de uma classe em Java para apenas a entrada de uma nota.

import javax.swing.*;public class EntradaSaida { public static void main(String args[ ]) { float nota; nota=Float.parseFloat( JOptionPane.showInputDialog(“Entre com a nota”)); }}

Agora que já temos uma base de algoritmo e programação, vamos colocar em prática.

Programando o Algoritmo 01

Algoritmo Quadrado de um Número inteiro q,ninício escreva “Entre com o número” leia n q = n*n escreva “O quadrado de” + n + “é” + qfim

O sinal de + tem o papel de concatenar “juntar palavras e valores para uma visualização interativa”. As palavras sempre deverão estar entre aspas. Já as variáveis devem conter antes e depois o sinal de + para juntar com a String.

Agora vamos passar o algoritmo para linguagem de programação Java.

//Quadrado de um Númeroimport javax.swing.*;public class Algoritmo01

public static void main(String [] args) {int q, n;n = Integer.parseInt(JOptionPane.showInputDialog(“Entre com o número”));q = n*n;JOptionPane.showMessageDialog( null, “O quadrado de” + n +“é“ + q);

}}

Observação Toda quebra de linha só poderá ocorrer depois de uma vírgula ou do sinal de + “exceto quando tivermos uma expressão matemática”.

Page 19: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

19

Operadores

São elementos funcionais que atuam sobre operandos e produzem em determinado resultado.

Podem ser classificados em:

Binários Quando atuam sobre dois operandos. Exemplo: (soma, subtração; multiplicação, divisão).

Unários Quando atuam sobre um único operando. Exemplo: –27.

Outra classificação dos operadores é feita considerando-se o tipo de dados de seus operandos e do valor resultante de sua avaliação.

» Aritméticos;

» Relacionais;

» Lógicos.

Aritméticos

Operador Operação Prioridade

+ Soma 5º

- Subtração 5º

* Multiplicação 4º

/ Divisão 4º

% ou mod Resto de uma divisão inteira 3º

^ Potência 2º

+ Manutenção de sinal 1º

- Inversão de sinal 1º

Page 20: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

20

Unidade: Conceito de Lógica Aplicada a Programas

Exemplos

Faça um algoritmo que leia dois números inteiros e calcule e mostre o resultado das seguintes operações aritméticas: soma, subtração, multiplicação, divisão e resto da divisão.

Algoritmo operações int num1, num2

Inicio escreva “Digite um número” leia num1 escreva “Digite outro número” leia num2 escreva “Soma:” + num1+num2 escreva “Subtração:” + num1-num2 escreva “Multiplicação:” + num1*num2 escreva “Divisão:” + num1/num2 escreva “Resto:” + num1%num2

Fim

Agora em Java

Page 21: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

21

Vamos ver outro exemplo

Escreva um algoritmo que leia a quantidade de moedas de R$ 0,25, R$ 0,10 e R$0,05 armazenados em um cofre. Calcule e mostre o valor em reais (R$).

Algoritmo operaçõesAlgoritmo cofre int q25, q10, q5 real totalInício escreva “Entre com a quantidade de moedas de R$ 0,25” leia q25 escreva “Entre com a quantidade de moedas de R$ 0,10” leia q10 escreva “Entre com a quantidade de moedas de R$ 0,05” leia q5 total = q25*0.25+q10*0.10+q5*0.05 escreva “O valor total em reais é: R$” + totalFim

Agora em Java

Page 22: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

22

Unidade: Conceito de Lógica Aplicada a Programas

RelacionaisComparações só podem ser feitas entre objetos de mesma natureza, isto é, variáveis do

mesmo tipo de dados. O resultado de uma comparação é sempre um valor lógico.

Operador Comparação

== Igual

!= ou <> Diferente

< Menor

<= Menor ou igual

> Maior

>= Maior ou igual

Lógicos

Operador Tipo Operaçãoou Binário Disjunção

e Binário Conjunção

não Unário negação

Operadores Lógicos em Java

Operador Operadorou ||e &&

não !

Tabela Verdade

A B A OU B A E B não AF F F F VF V V F VV F V F FV V V V F

» OU basta que um dos seus operandos seja V para que o resultado seja V.

» E é necessário que seus dois operandos tenham o valor lógico V para que o resultado seja V.

Page 23: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

23

Prioridade entre os operadores

Operador OperadorLógicos 4º

Relacionais 3º

Aritméticos 2º

Parênteses 1º

Expressões Aritméticas

As expressões aritméticas são definidas pelo relacionamento existente entre variáveis, constantes numéricas e valores, por meio da utilização dos operadores aritméticos.

Exemplo:Escreva um programa capaz de calcular o valor de ‘x’ em uma equação do segundo grau

ax2 + bx + c = 0. Os valores de ‘a’, ‘b’ e ‘c’ devem ser informados pelo usuário. O programa não deve tratar as raízes complexas. A equação de Bhaskara é:

Page 24: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

24

Unidade: Conceito de Lógica Aplicada a Programas

Vamos fazer o algoritmo lembrando que neste exemplo não iremos tratar dos números complexos.

Algoritmo equação real a, b, c, x1,x2

Início escreva “Digite o valor de a” leia a escreva “Digite o valor de b” leia b escreva “Digite o valor de c“ leia c x1=(-b+sqrt(b^2-4*a*c))/(2*a) x2=(-b-sqrt(b^2-4*a*c))/(2*a) escreva “x1 é igual a:” + x1 + “e x2 é igual a:” + x2

Fim.

Em Java

Page 25: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

25

Material Complementar

Vídeos:

Comandos de Entradas e Saídas - Expressões e Operadoreshttps://youtu.be/G8haXi-EgSc - Acesso em: 15 de janeiro de 2018.

Livros:Capítulo 3 - Programação com Sequência

3.5 - Os Operadores Aritméticos3.6 - Expressões Aritméticas

Capítulo 4 - Programação com Decisão4.1 - Decisões, Condições e Operadores Relacionais4.1.1 - Desvio Condicional Simples4.1.2 - Desvio Condicional Composto4.1.3 - Desvio Condicional Sequencial4.1.4 - Desvio Condicional Encadeado4.1.5 - Desvio Condicional por Seleção4.2 - Operadores Lógicos4.2.1 - Operador Lógico: E4.2.2 - Operador Lógico: OU4.2.3 - Operador Lógico: NÃO4.3 - Divisibilidade: Múltiplos e Divisores4.4 - Exercícios de Aprendizagem4.5 - Exercícios de Fixação

MANZANO, J. A. N. G.; OLIVEIRA, J. F. Estudo Dirigido de Algoritmos. 24ª ed São Paulo: Érica, 2010.

WIRTH, N. Algoritmos e estruturas de dados. Rio de Janeiro: Ltc-Livros Técnicos e Científi cos, 1999.

Page 26: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

26

Unidade: Conceito de Lógica Aplicada a Programas

Referências

ASCENCIO, A. F. G.; CAMPOS, E. A. V. Fundamentos da programação de computadores: algoritmos, Pascal, C/C++ e Java. 2ª ed. São Paulo: Pearson Education Brasil, 2010. E-BOOK.

CHRISTOS, P.; UMESH, V. Algoritmos. Porto Alegre: Grupo A, 2011. E-BOOK.

DEITEL, H. M. Java: como programar. 6ª ed. Porto Alegre: Bookman, 2003. E-BOOK.

EDELWEISS, N.; GALANTE, R. Estruturas de dados. Porto Alegre: Grupo A, 2011. E-BOOK.

FARRER, H. Algoritmos estruturados. 3ª ed. Rio de Janeiro: Ltc-Livros Técnicos e Científicos, 1999.

FERREIRA, A. B. H. Dicionário aurélio da língua portuguesa. 5ª ed. Curitiba: Positivo, 2010.

FORBELLONE, A. L. V.; EBERSPACHER, H. F. Lógica de programação: a construção de algoritmos e estrutura de dados. 3ª ed. São Paulo: Pearson Prentice Hall, 2008.

FURGERI, S. JAVA 6 ensino didático: desenvolvendo e implementando aplicações. 2ª ed. São Paulo: Érica, 2009.

GOODRICH, M. T.; TAMASSIA, R. Estruturas de dados e algoritmos em Java. Porto Alegre: Grupo A, 2011. E-BOOK.

HORSTMANN, C. Conceitos de computação com Java. 5ª ed. Porto Alegre: Grupo A, 2009. E-BOOK.

MANZANO, J. A. N. G. Algoritmos: lógica para desenvolvimento de programação. 24ª ed. São Paulo: Érica, 2010.

OLIVEIRA, J. F.; MANZANO, J. A. N. G. Algoritmos: lógica para desenvolvimento de programação de computadores. 16ª ed. São Paulo: Érica, 2004. [Ver o conteúdo de Parte II – Técnicas Básicas de Programação – Cap. 3 – Tipo de Dados e Instruções Primitivas].

VILARIM, G. O. Algoritmos: programação para iniciantes. Rio de Janeiro: Ciência Moderna, 2004.

Bibliografia Complementar

WIRTH, N. Algoritmos e estruturas de dados. Rio de Janeiro: Ltc-Livros Técnicos e Científicos, 1999.

Page 27: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres

27

Anotações

Page 28: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres
Page 29: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres
Page 30: Técnicas de Programação - Blackboard Learn · Os diagramas de blocos podem ser representados de várias formas, ... Não pode conter espaços em branco. 3. Não pode conter caracteres