Escolar Documentos
Profissional Documentos
Cultura Documentos
Introduo Programao 1
Apndice D
Testes de programao
JEDITM
Autor Florence Tiu Balagtas Equipe Joyce Avestro Florence Balagtas Rommel Feria Reginald Hutcherson Rebecca Ong John Paul Petines Sang Shin Raghavan Srinivas Matthew Thompson
Sistemas Operacionais Suportados NetBeans IDE 5.5 para os seguintes sistemas operacionais: Microsoft Windows XP Profissional SP2 ou superior Mac OS X 10.4.5 ou superior Red Hat Fedora Core 3 Solaris 10 Operating System (SPARC e x86/x64 Platform Edition) NetBeans Enterprise Pack, poder ser executado nas seguintes plataformas: Microsoft Windows 2000 Profissional SP4 Solaris 8 OS (SPARC e x86/x64 Platform Edition) e Solaris 9 OS (SPARC e x86/x64 Platform Edition) Vrias outras distribuies Linux Configurao Mnima de Hardware Nota: IDE NetBeans com resoluo de tela em 1024x768 pixel Sistema Operacional Microsoft Windows Linux Solaris OS (SPARC) Solaris OS (x86/x64 Platform Edition) Mac OS X Processador 500 MHz Intel Pentium III workstation ou equivalente 500 MHz Intel Pentium III workstation ou equivalente UltraSPARC II 450 MHz AMD Opteron 100 Srie 1.8 GHz PowerPC G4 Memria 512 MB 512 MB 512 MB 512 MB 512 MB HD Livre 850 MB 450 MB 450 MB 450 MB 450 MB
Configurao Recomendada de Hardware Sistema Operacional Microsoft Windows Linux Solaris OS (SPARC) Solaris OS (x86/x64 Platform Edition) Mac OS X Processador 1.4 GHz Intel Pentium III workstation ou equivalente 1.4 GHz Intel Pentium III workstation ou equivalente UltraSPARC IIIi 1 GHz AMD Opteron 100 Series 1.8 GHz PowerPC G5 Memria 1 GB 1 GB 1 GB 1 GB 1 GB HD Livre 1 GB 850 MB 850 MB 850 MB 850 MB
Requerimentos de Software NetBeans Enterprise Pack 5.5 executando sobre Java 2 Platform Standard Edition Development Kit 5.0 ou superior (JDK 5.0, verso 1.5.0_01 ou superior), contemplando a Java Runtime Environment, ferramentas de desenvolvimento para compilar, depurar, e executar aplicaes escritas em linguagem Java. Sun Java System Application Server Platform Edition 9. Para Solaris, Windows, e Linux, os arquivos da JDK podem ser obtidos para sua plataforma em http://java.sun.com/j2se/1.5.0/download.html Para Mac OS X, Java 2 Plataform Standard Edition (J2SE) 5.0 Release 4, pode ser obtida diretamente da Apple's Developer Connection, no endereo: http://developer.apple.com/java ( necessrio registrar o download da JDK). Para mais informaes: http://www.netbeans.org/community/releases/55/relnotes.html
Introduo Programao I
JEDITM
Auxiliadores especiais
Reviso Geral do texto para os seguintes Pases:
Brasil Tiago Flach Guin Bissau Alfredo C, Bunene Sisse e Buon Olossato Quebi ONG Asas de Socorro
Coordenao do DFJUG
Daniel deOliveira JUGLeader responsvel pelos acordos de parcerias Luci Campos - Idealizadora do DFJUG responsvel pelo apoio social Fernando Anselmo - Coordenador responsvel pelo processo de traduo e reviso, disponibilizao dos materiais e insero de novos mdulos Regina Mariani - Coordenadora responsvel pela parte jurdica Rodrigo Nunes - Coordenador responsvel pela parte multimdia Srgio Gomes Veloso - Coordenador responsvel pelo ambiente JEDITM (Moodle)
Agradecimento Especial
John Paul Petines Criador da Iniciativa JEDITM Rommel Feria Criador da Iniciativa JEDITM
Introduo Programao I
JEDITM
1. Objetivos
Neste apndice, veremos apenas idias de projetos para que o estudante possa se aprofundar cada vez mais com Java. No existem solues nicas para cada projeto e cabe ao estudante implement-lo da maneira como melhor lhe agradar. Nota: VOC tem alguma idia interessante para um projeto? Envie-a para o email do Fernando Anselmo (fernando.anselmo@dfjug.org) e ajude a iniciativa JEDI a crescer. No assunto do email escreva: "Projeto para JEDI" e no corpo do email: Ttulo do Projeto: Descrio do Projeto: Nome completo do autor: Estes projetos devem ser idias originais e inditas. Colabore.
Introduo Programao I
JEDITM
2. Agenda Telefnica
Escrever um programa que cria uma agenda telefnica na qual seja possvel acrescentar, excluir, visualizar e pesquisar os registros. O usurio deve ter a possibilidade de visualizar todos registros por ordem alfabtica ou por ordem crescente de nmeros de telefone. Na pesquisa por registros, o usurio deve ter a opo de pesquisar por nome ou por nmero de telefone. Na pesquisa pelo nome, o usurio deve ter uma opo em que possa selecionar se a pesquisa ser efetuada com base no primeiro ou ltimo nome. MENU 1 2 3 PRINCIPAL Adicionar registro na agenda telefnica Excluir registro da agenda telefnica Visualizar todos os registros a ordem alfabtica b ordem numrica crescente de nmero de telefone 4 Pesquisa de registros a por nome b por nmero de telefone 5 Sair Esse um exemplo da aplicao rodando:
Adicionar registro na agenda telefnica Digite o Nome: Digite o nmero do Telefone: (* Se o registro j existir, avise o operador da existncia do registro) Visualizar todos os registros Mostra todos os registros em ordem alfabtica Mostra todos os registros em ordem crescente de nmero de telefone Pesquisa registros Pesquisa agenda telefnica por nome Pesquisa agenda telefnica pelo primeiro nome Pesquisa agenda telefnica pelo ltimo nome Pesquisa agenda telefnica por nmero do telefone Sair Fechar agenda telefnica 1 pelo primeiro nome 2 pelo ltimo nome
Introduo Programao I
JEDITM
3. Caa-Minas
Este jogo uma verso simplificada do popular jogo de computador Caa-minas (minesweeper). Inicialmente, questionado se o usurio quer jogar numa grade de 5x5 ou numa grade de 10x10. Voc tem 2 arrays bidimensionais que contm informaes sobre a grade selecionada. Um registro desse array pode conter 0 ou 1. O valor 1 significa que existe uma bomba nessa localizao e o valor 0 se no existir. Por exemplo, dado o seguinte array: int bombList5by5[][]={{0, {0, {0, {0, {0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0}, 0}, 0}, 1}, 0}};
Dada a lista de bombas, temos 6 bombas nessa lista. As bombas esto localizadas nas clulas (linha,coluna), (0,2), (2,1), (3,3), (3,4), (4,1) e (4,2). Se o usurio escolhe uma clula que contenha uma bomba, o jogo acaba e todas as bombas so mostradas. Se o usurio escolhe uma clula que no contenha uma bomba, um nmero mostrado naquela posio indicando a quantidade de clulas vizinhas que contm bombas. O jogo dever terminar quando todas as clulas que no contenham bombas tiverem sido marcadas (jogador vence) ou quando o usurio seleciona uma bomba (jogador perde). Segue um exemplo de tela do jogo quando selecionada uma grade 5x5 que tenha o mesmo contedo do array bombList5by5 acima.
Benvindo ao Caa-Minas! Escolha o tamanho da grade(Digite 1 para 5x5, [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] Digite linha e coluna da clula que voc quer [ ] [ ] [ ] [ ] [ ] [ ] [2] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] Digite linha e coluna da clula que voc quer [ ] [ ] [ ] [ ] [ ] [ ] [2] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [4] [ ] [ ] [ ] [ ] [ ] [ ] [ ] Digite linha e coluna da clula que voc quer [ ] [ ] [X] [ ] [ ] [ ] [2] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [4] [ ] [ ] [ ] [ ] [ ] [ ] [ ] Ooppps! Voc pisou numa bomba. Sinto muito, o Digite 2 para 10x10): 1
abrir[linha coluna]: 1
abrir[linha coluna]: 3
abrir[linha coluna]: 0
Introduo Programao I
JEDITM
4. Converso Numrica
Criar uma calculadora cientfica que converta os nmeros digitados para as quatro representaes numricas: decimal, binrio, octal e hexadecimal. O projeto deve gerar o seguinte menu na tela. MENU PRINCIPAL: Por favor, selecione o tipo de converso: 1 Binrio para Decimal 2 Decimal para Octal 3 Octal para Hexadecimal 4 Hexadecimal para Binrio 5 Sair A seguinte tela deve ser mostrada quando uma das opes do menu for escolhida.
Seleo 1: Digite um nmero binrio: 11000 11000 base 2 = 24 base 10 (volta para o menu principal) Seleo 2: Digite um nmero Decimal: 24 24 base 10 = 30 base 8 (volta para o menu principal) Seleo 3: Digite um nmero Octal: 30 30 base 8 = 18 base 16 (volta para o menu principal) Seleo 4: Digite um nmero Hexadecimal: 18 18 base 16 = 11000 base 2 Seleo 1: Digite Nmero Digite 1 base (volta um nmero Binrio: 110A binrio invlido! um nmero binrio: 1 2 = 1 base 10 para o menu principal)
possvel ser mais criativo com a interface do usurio, contanto que o programa gere devidamente as converses numricas.
Introduo Programao I
JEDITM
Instituto CTS Patrocinador do DFJUG. Sun Microsystems Fornecimento de servidor de dados para o armazenamento dos vdeo-aulas. Java Research and Development Center da Universidade das Filipinas Criador da Iniciativa JEDITM. DFJUG Detentor dos direitos do JEDITM nos pases de lngua portuguesa. Banco do Brasil Disponibilizao de seus telecentros para abrigar e difundir a Iniciativa JEDITM. Politec Suporte e apoio financeiro e logstico a todo o processo. Borland Apoio internacional para que possamos alcanar os outros pases de lngua portuguesa. Instituto Gaudium/CNBB Fornecimento da sua infra-estrutura de hardware de seus servidores para que os milhares de alunos possam acessar o material do curso simultaneamente.
Introduo Programao I