Simulado de Linguagem de Programação Java



Documentos relacionados
Simulado de Linguagem de Programação Java

Tipos de dados e comandos POO

IO.println(a+" * "+b+" = "+produto); } }

Recursividade. Métodos iterativos. Prof. Cesar Augusto Tacla. Métodos iterativos utilizam estruturas de repetição

Seleção Múltipla Laços (while, do-while, for) AULA 05

Sintaxe Básica de Java Parte 2

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 6 Filas

Fundamentos de programação

: 25/10/2005. (marque com um "X"): Custódio Dirceu Marcus Vinícius ! "# $ %&'( )* +, -)./#01 +& (, * ( &% #

Vetores Unimensionais

Um Exemplo de Refatoração. Prof. Alberto Costa Neto DComp/UFS

Programação de Computadores II TCC /Turma A 1

Recursividade. Prof. Jesus José de Oliveira Neto

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Cartão de fidelização de clientes das distribuidoras de combustível.

Para entender o conceito de objetos em programação devemos fazer uma analogia com o mundo real:

1. Estude e implemente a classe Exemplo1 apresentada abaixo:

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas

Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Recursividade. Estrutura de Dados. Prof. Kleber Rezende

Linguagem de Programação III

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis

Programação de Computadores II

Apêndice A. Alguns construtores e métodos importantes e úteis da classe Vector são:

Algoritmos I Aula 14 Java: estruturas de seleção e repetição

Introdução à Programação de Computadores Parte I

PROGRAMAÇÃO JAVA. Parte 3

INF 1005 Programação I

Revisões de PG. Programação Orientada por Objetos (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa

RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:

Análise de Programação

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica.

Programação Orientada a Objetos II Java Segunda aula. Prof. Rogério Albuquerque de Almeida

JAVA. Professor: Bruno Toledo

Aula 7 Modularização. Processamento da Informação. Universidade Federal do ABC

Tratamento de Exceções

Sabemos que a classe é responsável por definir a estrutura e o comportamento de seus objetos. Portanto, os objetos são instâncias das classes.

MsC. João Maria MsC. Liviane Melo

Unidade 3: Estruturas de Controle Parte 2 - Lógica, SWITCH, FOR, WHILE e DO WHILE Prof. Daniel Caetano

Prof. A. G. Silva. 13 de setembro de Prof. A. G. Silva INE5603 Introdução à POO 13 de setembro de / 21

Fabiano Moreira.

private static Ascii ascii = new Ascii(); static List<Character> asciinumber = ascii.getasciitable(); Scanner input = new Scanner(System.

Caderno de Exercícios

Estruturas de Decisão

Linguagem C (repetição)

Computação 1 - Python Aula 3 - Teórica: Tipos de dados, Strings, Estrutura Condicional 1/ 28

Laboratório 3 Comandos de repetição while, do-while e for

Prof. Rogério Rocha 1

Estruturas de Repetição e String. Vanessa Braganholo

PHP Estruturas de repetição

ALGORITMOS. Professor: Diego Oliveira. Aula 06 - Tipos Primitivos de Dados

Estruturas de Repetição e String

Luz, C Âmera, Ação! Introdução ao Java Cont.

Processamento da Informação Estruturas de seleção simples e composta

Prof. A. G. Silva. 13 de novembro de Prof. A. G. Silva INE5603 Introdução à POO 13 de novembro de / 1

Estruturas de controle Parte 1

Aula 11: Desvios e Laços

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação

BC-0505 Processamento da Informação

Comando Portugol (Visualg) Java

Introdução. Universidade Federal de Uberlândia. Programação Orientada a Objetos. Prof. Fabiano Dorça

Orientação a Objetos e Java

Tratamento de Exceções. Julio Cesar Nardi

Introdução ao Java. Marco A L Barbosa malbarbo.pro.br. Departamento de Informática Universidade Estadual de Maringá

Arrays em Java. Introdução à Programação. Bruno Cartaxo

Tipos, Literais, Operadores

Tipos, Literais, Operadores

Algoritmos II Aula 11 Funções e Procedimentos

FUNÇÕES EM C Material adaptado da profa Silvana Maria Affonso de Lara

Familiarização com a ferramenta JavaCC

Algoritmos II prof. Daniel Oliveira

Simulado da Prova Parcial 2 (01/08/2013)

Estruturas de Repe,ção e String

1ª Lista de Exercícios

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO AO JAVA. Professor Carlos Muniz

insfcanceof new public switch transient while byte continue extends for int null

Estruturas de Repetição

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição

O AMBIENTE DE DESENVOLVIMENTO

Notações: in, pré e posfixada

SSC300- Linguagens de Programação e Aplicações Profa Vânia de Oliveira Neves. ICMC/USP São Carlos

Sobrecarga. Algoritmos e Programação II. Aula 3 Sobrecarga

Algoritmos I Aula 13 Linguagem de Programação Java

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS

ESQUEMA AULA PRÁTICA 0 Familiarização com o Ambiente de Desenvolvimento NetBeans Construção do primeiro programa em java.

DIRETORIA ACADÊMICA DE GESTÃO E TECNOLOGIA DA INFORMAÇÃO DIATINF TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TADS

Vetores Unimensionais

Classes, instâncias e métodos de acesso. prática

Linguagem C: while e do-while

Testes de correção (de defeitos)

double x; x = enigmab1(100);

Desenvolvimento Modular de Procedimentos

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS

1 Da aula teórica ao Java

Revisões de PG. Programação Orientada por Objetos (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa

Variáveis primitivas e Controle de fluxo

Linguagem Algorítmica OO. Linguagem Algorítmica

Usando o Eclipse - Fundamentos. Professor Vicente Paulo de Camargo

Exercício de Estrutura de dados. Java Fila

Transcrição:

Simulado de Linguagem de Programação Java 1. Descreva o processo de criação de programas em Java, desde a criação do código-fonte até a obtenção do resultado esperado, por meio de sua execução. Cite as instruções e/ou comandos usados durante o processo. Passo 1: criar e/ou editar o código-fonte usando um editor de textos ASCII Passo 2: compilar o código-fonte com javac <nome_da_classe>.java Passo 3: executar a classe com Java <nome_da_classe> 2. Descreva sucintamente em que situações ocorrem os erro e exceções listados abaixo e quais as ações necessárias para corrigi-los. a. NoSuchMethodError: main Causa: tentativa de executar um classe sem o método main. Solução: verificar se o método existe e se a sua assinatura está correta public static void main(string a[]). b. NoClassDefFoundError: principal Causa: tentativa de executar uma classe que não existe. Solução: verificar se o nome da classe este correto em sua declaração. c. ArrayIndexOutOfBoundException: 2 Causa: tentativa de acessar o elemento de índice 2 de um array. Solução: verificar erro de lógica e se todos os argumentos da linha de comando, esperados pelo programa, foram de fato passados. d. incompatible types: found <tipo1> required <tipo1> Causa: tentativa de usar um tipo de dado <tipo1> onde era esperado <tipo1> Solução: corrigir erro de lógica, definindo o tipo adequado e compatível e. NumberFormatException: For input string "xpto" Causa: tentativa de gerar um tipo numérico a partir de um String, sendo que o String não pode ser convertido em número. Solução: tratar o erro com try/catch ou assegurar de outra forma que o String que se deseja converter contenha apenas dígitos.

f. cannot find symbol: <qual> <onde> Causa: alguma variável ou método <qual> usado não está definido em <onde>. Solução: definir o que não está definido ou corrigir erro de digitação. g. javac: file not found: Teste.java Causa: tentativa de compilar um código-fonte (Teste.java) que não existe na pasta atual. Solução: verificar a existência do arquivo, alterando sua localização e/ou nome.

3. Escrever uma classe executável em Java que gera e escreve os 4 primeiros números perfeitos. Um número perfeito é aquele que é igual à soma dos seus divisores. Ex: 6 = 1+2+3, 28 = 1+2+4+7+14. public class NrosPerfeitos { int n = 6; int cont = 0; while (cont <= 4) { if (eperfeito(n)) { cont++; n + " eh " + eperfeito(n)); n++; static boolean eperfeito(int n) { boolean perfeito = false; int soma = 0; for (int i = 1; i < n; i++) { soma += i; if (soma == n) { perfeito = true; return perfeito;

4. Escrever uma classe executável em Java que lê um número não determinado de valores, todos inteiros e positivos, pela linha de comando. Para cada número proceder como segue: (a) se par, verificar quantos divisores possui e escrever esta informação; (b) se ímpar e menor do que 12, calcular e escrever o seu fatorial; (c) se ímpar e maior ou igual a 12 calcular e escrever a soma dos inteiros de um até o número lido. Atenção: é requisito técnico da solução que seja usado o for aprimorado, disponível a partir da versão 5 da Linguagem Java. public class NrosAnaliseMultipla { if (args.length == 0) { "Erro na quantidade de argumentos!!!"); else { for (String a : args) { int n = Integer.parseInt(a); if (n % 2 == 0) { n + " tem " + qtddivisores(n) + " divisores!!!"); else { if (n < 12) { "O fatorial de " + n + " = " + fatorial(n)); else { "A soma dos inteiros ate " + n + " = " + somainteirosate(n)); static int qtddivisores(int n) { int qtddiv = 0; for (int i = 1; i < n; i++) { qtddiv++; return qtddiv; static int fatorial(int n) { int fat = 1; for (int i = n; i > 1; i--) { fat*=i; return fat; static int somainteirosate(int n) { int soma = 0; for (int i = 1; i <= n; i++) { soma += i; return soma;

5. Faça uma classe executável em Java que gere uma tabela com os números de 1 a 10 e mostre o número (N), seu quadrado (Q), cubo (C), fatorial (F), número de divisores (D) e uma mensagem dizendo se o número é primo ou não, conforme layout a seguir: N Q C F D Primo 1 1 1 1 1 Sim 2 4 8 2 2 Sim public class NrosAnaliseMultiplaV2 { "N Q C F D Primo"); for (int i = 1; i <= 10; i++) { i + " " + i * i + " " + i * i * i + " " + fatorial(i) + " " + qtddivisores(i) + " " + eprimo(i)); static int qtddivisores(int n) { int qtddiv = 0; for (int i = 1; i <= n; i++) { qtddiv++; return qtddiv; static int fatorial(int n) { int fat = 1; for (int i = n; i > 1; i--) { fat *= i; return fat; static boolean eprimo(int n) { boolean primo = true; for (int i = 2; i < n; i++) { primo = false; break; return primo;

6. Escrever uma classe executável em Java que lê um conjunto não determinado de pares de valores a, b, todos inteiros e positivos, e para cada par lido, obtém o Máximo Divisor Comum (MDC) e o Mínimo Múltiplo Comum (MMC) de a,b, escrevendo-os juntamente com os valores lidos. public class MmcEMdc { if (args.length == 0 args.length % 2!= 0) { "Erro na quantidade de argumentos!!!"); else { for (int i = 0; i < args.length-1; i++) { int a = Integer.parseInt(args[i]); int b = Integer.parseInt(args[i+1]); "a = " + a + " b = " + b + " MDC = " + calcmdc(a, b) + " MMC = " + calcmmc(a, b)); static int calcmmc(int a, int b) { return (a * b) / calcmdc(a, b); static int calcmdc(int a, int b) { int menor = a; if (a > b) { menor = b; int mdc = 0; for (int i = 1; i <= menor; i++) { if (a % i == 0 && b % i == 0) { mdc = i; return mdc;