Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 FACULDADE DE COMPUTAÇÃO E INFORMÁTICA BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO Introdução a Programação – Aula 7 – 2º SEMESTRE/2013 TEORIA: ESTRUTURA SEQUENCIAL Nossos objetivos nesta aula são: Formalizar a estrutura sequencial para algoritmos e programas Construir algoritmos e programas que recebem dados, efetuam cálculos e produzem resultados Aprofundar os principais comandos de entrada/saída em VisuAlg e Java A referência para esta aula é o Capítulo 5 (Estrutura Sequencial , páginas 104 a 81) do nosso livro-texto: Piva Jr., D. et al. Algoritmos e Programação de Computadores. Rio de Janeiro: Elsevier, 2012. Não deixem de ler este capítulo após a aula de hoje! Até este momento, já temos as seguintes habilidades de programação: Declarar variáveis, escolhendo o tipo adequado de dado para o problema Ler variáveis e exibir o seu conteúdo Realizar operações matemáticas (aritméticas, relacionais e lógicas) com as variáveis Nos algoritmos e programas que construímos até agora, sempre utilizamos uma mesma sequência: 1. Declaração de variáveis (exceto em algoritmos) 2. Leitura de variáveis 3. Operações matemáticas 4. Exibição de resultados Este fluxo único de acompanhamento dos programas é conhecido como estrutura sequencial. 2 EXERCÍCIO TUTORIADO (a) Construa um algoritmo na notação de fluxograma e pesudocódigo para calcular a área de um quadrilátero. (b) Numere cada parte do fluxograma e exiba qual a sua sequência de “execução”. (c) Existe outra possibilidade de sequência de “execução” deste fluxograma ? EXERCÍCIO TUTORIADO Implemente o algoritmo anterior em VisuAlg e Java. Numere as linhas e diga qual a ordem de execução de cada um dos comandos presentes nos programas. VisuAlg Java 3 EXERCÍCIO COM DISCUSSÃO EM DUPLAS (a) Construa um algoritmo na notação de fluxograma e pseudocódigo para converter uma temperatura em Celsius para Fahrenheit e mostrar as duas temperaturas. Sugestão: lembre-se que a conversão de Celsius (C) para Fahrenheit(F) é F=1.8C+32. (b) Numere cada parte do fluxograma e exiba qual a sua sequência de “execução”. (c) Existe outra possibilidade de sequência de “execução” deste fluxograma ? EXERCÍCIO COM DISCUSSÃO EM DUPLAS Implemente o algoritmo anterior em VisuAlg e Java. Numere as linhas e diga qual a ordem de execução de cada um dos comandos presentes nos programas. VisuAlg Java 4 Construções Adicionais de Entrada e Saída em VisuAlg Para facilitar a entrada de dados em VisuAlg, ao invés de efetuarmos um comando leia(...) para cada variável, podemos colocar todas as variáveis a serem lidas em um único comando leia. Assim: leia(x) leia(y) leia(z) podem ser feitos em único comando leia (x,y,z) Quando vamos escrever em VisuAlg, podemos utilizar dois comandos escreva: escreva(...) e escreval(...). O comando escreva não muda de linha, enquanto que o comando escreval muda. É uma boa prática de programação, para aumentar a interatividade com o usuário do seu programa, dizer o que é para ser fornecido antes de um comando de leitura. Para isto, usamos o comando escreva para que não se mude de linha antes da leitura: escreva (“Digite a sua idade: “) leia (idade) EXERCÍCIO COM DISCUSSÃO EM DUPLAS Reescreva o programa VisuAlg para cálculo da área do quadrilátero para utilizar as novas construções de entrada/saída do VisuAlg, assim como para aumentar a interatividade do seu programa. 5 Construções Adicionais de Entrada e Saída em Java Assim como em VisuAlg, a linguagem Java também possui comandos para indicar mudança ou não de linha: System.out.print(...) : não muda de linha System.out.println(...): muda de linha Em Java, ainda podemos utilizar um recurso gráfico para leitura de variáveis, utilizando a classe JOptionPane. Uma vez que utilizemos o método showMessageDialog desta classe, recebemos uma cadeia de caracteres (String) e a convertemos para o tipo desejado. Ao final do nosso curso, estudaremos as cadeias de caracteres. Abaixo, temos um exemplo de JOptionPane para leitura: import javax.swing.JOptionPane; public class Entrada{ public static void main(String args[]){ String entrada; // um String é uma sequência de caracteres int numero; // Leitura do número como uma cadeia de caracteres entrada = JOptionPane.showInputDialog(“Digite um Numero Inteiro:”); // Conversão de string para número inteiro numero = Integer.parseInt(entrada) } } 6 EXERCÍCIO COM DISCUSSÃO EM DUPLAS Reimplemente o seu programa Java de conversão de Celsius para Fahenheit para utilizar o recurso de JOptionPane e melhorar a interatividade de sua programa. 7 ATIVIDADES DE LABORATÓRIO Faça um programa em Java que leia dois valores para as variáveis A e B, efetue a troca dos valores de forma que a variável A passe a possuir o valor da variável B e que a variável B passe a possuir o valor da variável A. Apresentar os valores trocados. Considere um triângulo retângulo. Supondo que você conheça a hipotenusa deste triângulo e um ângulo diferente do ângulo reto, calcule o cateto oposto a este ângulo através de um programa Java. 8 EXERCÍCIOS EXTRA-CLASSE 1. Escreva um algoritmo (em pseudocódigo e em fluxograma) para encontrar as raízes (quando existirem) de uma equação do segundo grau: ax2+bx+c=0 2. Escreva programas em VisuAlg e Java para o algoritmo da questão 1. Utilize os recursos aprendidos para aula de hoje para aumentar a interação do usuário com o programa. 3. Escreva um algoritmo (em pseudocódigo e em fluxograma) para calcular o valor da hipotenusa de um triângulo retângulo, supondo fornecidos os valores dos dois catetos. 4. Escreva programas em VisuAlg e Java para o algoritmo da questão 3. Utilize os recursos aprendidos para aula de hoje para aumentar a interação do usuário com o programa. 5. Escreva um algoritmo (em pseudocódigo e fluxograma) que, tendo como dados de entrada os três comprimentos das arestas de uma caixa, calcule e informe: a quantidade de tinta necessária para pintá-la externamente; o custo total = mão de obra + material; sabendo-se que : para cada metro quadrado, são necessários 3 litros de tinta para cada 10 metro quadrados, é necessário um novo rolo de tinta que custa R$ 5,00 cada; a mão de obra cobra R$20,00 por metro quadrado; cada lata de tinta contém 5 litros e custa R$ 45,00. 6. Escreva programas em VisuAlg e Java para o algoritmo da questão 5. Utilize os recursos aprendidos para aula de hoje para aumentar a interação do usuário com o programa.
Compartilhar