Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: ArrayList |
Como criar um ArrayList de inteiros e pedir para o usuário informar os valores - Desafio de Programação Resolvido em JavaQuantidade de visualizações: 2744 vezes |
Pergunta/Tarefa: Escreva um programa Java contendo um ArrayList de inteiros chamado valores. Peça para o usuário informar 5 valores inteiros e adicione-os individualmente no ArrayList. Em seguida imprima os elementos do ArrayList, de forma individual, usando o laço for. Sua saída deverá ser parecida com: Informe o 1.o valor: 9 Informe o 2.o valor: 2 Informe o 3.o valor: 54 Informe o 4.o valor: 10 Informe o 5.o valor: 7 Conteúdo do ArrayList: 9 2 54 10 7 Veja a resolução comentada deste exercício usando Java console: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; import java.util.ArrayList; import java.util.Scanner; public class Estudos{ public static void main(String[] args){ // para fazer a leitura do usuário Scanner entrada = new Scanner(System.in); // vamos criar uma ArrayList de números inteiros ArrayList<Integer> valores = new ArrayList<>(); // agora vamos pedir para o usuário inserir 5 valores no ArrayList for(int i = 0; i < 5; i++){ System.out.print("Informe o " + (i + 1) + ".o valor: "); int valor = Integer.parseInt(entrada.nextLine()); // vamos adicionar este valor ao ArrayList valores.add(valor); } // agora vamos exibir o conteúdo do ArrayList System.out.println("\nConteúdo do ArrayList:\n"); for(int i = 0; i < valores.size(); i++){ System.out.println(valores.get(i)); } } } |
![]() |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Como usar o laço for para percorrer os elementos de um array e exibí-los na ordem original e invertidosQuantidade de visualizações: 14947 vezes |
Pergunta/Tarefa: Considere o seguinte array de inteiros: // um array de inteiros contendo sete elementos int valores[] = {6, 9, 12, 34, 83, 20, 17}; Seu programa deverá exibir a seguinte saída: Ordem original: 6 9 12 34 83 20 17 Ordem inversa: 17 20 83 34 12 9 6 ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- public static void main(String[] args){ // um vetor de inteiros contendo sete elementos int valores[] = {6, 9, 12, 34, 83, 20, 17}; // primeiro vamos exibir os valores do vetor na ordem original System.out.println("Ordem original:\n"); for(int i = 0; i < valores.length; i++){ System.out.print(valores[i] + " "); } // agora vamos exibir na ordem inversa System.out.println("\n\nOrdem inversa:\n"); for(int i = valores.length - 1; i >= 0; i--){ System.out.print(valores[i] + " "); } } |
Java ::: Estruturas de Dados ::: Pilhas |
Como criar uma pilha em Java usando um vetor (array) - Estruturas de Dados em JavaQuantidade de visualizações: 2377 vezes |
A Pilha é uma estrutura de dados do tipo LIFO - Last-In, First-Out (Último a entrar, primeiro a sair). Neste tipo de estrutura, o último elemento a ser inserido é o primeiro a ser removido. Veja a imagem a seguir:![]() Embora seja mais comum a criação de uma estrutura de dados do tipo Pilha de forma dinâmica (usando ponteiros e referências), nesta dica eu mostrarei como podemos criá-la em Java usando um array, ou seja, um vetor. No exemplo eu usei inteiros, mas você pode modificar para o tipo de dados que você achar mais adequado. Veja o código completo para uma classe Pilha usando um vetor de ints. Veja que o tamanho do vetor é informado no construtor da classe. Note também a lógica empregada na construção dos métodos empilhar(), desempilhar() e imprimirPilha(): Código para Pilha.java: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; public class Pilha { private int elementos[]; // elementos na pilha private int topo; // o elemento no topo da pilha private int maximo; // a quantidade máxima de elementos na pilha // construtor da classe Pilha public Pilha(int tamanho) { // constrói o vetor this.elementos = new int[tamanho]; // define o topo como -1 this.topo = -1; // ajusta o tamanho da pilha para o valor recebido this.maximo = tamanho; } // método usado para empilhar um novo elemento na pilha public void empilhar(int item) { // a pilha já está cheia? if (this.topo == (this.maximo - 1)) { System.out.println("\nA pilha está cheia\n"); } else { // vamos inserir este elemento no topo da pilha this.elementos[++this.topo] = item; } } // méodo usado para desempilhar um elemento da pilha public int desempilhar() { // a pilha está vazia if (this.topo == -1) { System.out.println("\nA pilha está vazia\n"); return -1; } else { System.out.println("Elemento desempilhado: " + elementos[topo]); return this.elementos[this.topo--]; } } // método que permite imprimir o conteúdo da pilha public void imprimirPilha() { // pilha vazia if (this.topo == -1) { System.out.println("\nA pilha está vazia\n"); } else { // vamos percorrer todos os elementos da pilha for (int i = 0; i <= this.topo; i++) { System.out.println("Item[" + (i + 1) + "]: " + this.elementos[i]); } } } } Veja agora o código para a classe principal, ou seja, a classe Main usada para testar a funcionalidade da nossa pilha: Código para Principal.java: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; public class Estudos{ public static void main(String[] args){ // vamos criar uma nova pilha com capacidade para 5 elementos Pilha p = new Pilha(5); // vamos empilhar 3 elementos p.empilhar(34); p.empilhar(52); p.empilhar(18); // vamos mostrar os elementos na pilha System.out.println("Itens presentes na Pilha\n"); p.imprimirPilha(); // agora vamos remover e retornar dois elementos da pilha System.out.println(); p.desempilhar(); p.desempilhar(); // vamos mostrar os elementos na pilha novamente System.out.println("\nItens presentes na Pilha\n"); p.imprimirPilha(); } } Ao executar este código Java nós teremos o seguinte resultado: Itens presentes na Pilha Item[1]: 34 Item[2]: 52 Item[3]: 18 Elemento desempilhado: 18 Elemento desempilhado: 52 Itens presentes na Pilha Item[1]: 34 |
Java ::: Classes e Componentes ::: JComboBox |
Tutorial Java Swing - Como remover todos os itens de um JComboBox (Caixa de Combinação) em tempo de execuçãoQuantidade de visualizações: 12349 vezes |
Nesta dica mostrarei como é possível usar o método removeAllItems() da classe JComboBox para remover todos os seus itens. Note que criei a aplicação Java Swing na mão mesmo, sem usar nenhum editor visual de GUI, como o que está disponível no IDE Netbeans. Esta abordagem pode não ser produtiva, mas é excelente para entender como o Java Swing funciona. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package arquivodecodigos; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Estudos extends JFrame{ JComboBox combo; public Estudos(){ super("A classe JComboBox"); Container c = getContentPane(); c.setLayout(new FlowLayout(FlowLayout.LEFT)); // Cria os itens da lista String nomes[] = {"Carlos", "Marcelo", "Fabiana", "Carolina", "Osmar"}; // Cria o JComboBox combo = new JComboBox(nomes); // Um botão que permite limpar o JComboBox JButton btn = new JButton("Limpar"); btn.addActionListener( new ActionListener(){ @Override public void actionPerformed(ActionEvent e){ // remove todos os itens do JComboBox combo.removeAllItems(); } } ); // Adiciona o JComboBox à janela c.add(combo); // Adiciona o botão à janela c.add(btn); setSize(350, 250); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } Aqui os itens do JComboBox foram inseridos a partir de um vetor de String. |
Java ::: Coleções (Collections) ::: Queue |
Como criar uma fila em Java usando a interface QueueQuantidade de visualizações: 1095 vezes |
Uma fila é uma estrutura de dados do tipo FIFO (First-in, First-out), ou seja, o primeiro elemento a entrar é o primeiro a sair. Podemos pensar em uma estrutura de dados do tipo fila como uma fila real de um banco ou supermercado. A linguagem Java não fornece uma classe pronta chamada Queue. Em vez disse nós temos uma interface Queue e suas implementações concretas, a saber, as classes java.util.LinkedList e java.util.PriorityQueue. É claro que existem outras implementações, mas estas duas são as que usamos com mais frequencia. Como nesta dica a nossa intenção é representar uma fila comum, nós vamos descartar a classe PriorityQueue (fila de prioridade) e nos ater à implementação de Queue fornecida pela classe LinkedList. Vamos começar com um exemplo bem simples. Veja um trecho de código no qual enfileiramos 5 valores inteiros em uma fila e os desenfileiramos em seguida: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; import java.util.LinkedList; import java.util.Queue; public class Estudos{ public static void main(String[] args){ // vamos criar uma fila de inteiros e adicionar 5 inteiros Queue<Integer> fila = new LinkedList<>(); fila.add(76); fila.add(80); fila.add(11); fila.add(32); fila.add(45); // agora vamos desenfileirar todos os elementos System.out.println("Ordem de remoção dos elementos da fila:"); while(!fila.isEmpty()){ System.out.print(fila.poll() + " "); } } } Ao executar este código Java nós teremos o seguinte resultado: Ordem de remoção dos elementos da fila: 76 80 11 32 45 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Dados - Listas Ligadas |
Exercícios Resolvidos de Java - Como inserir no início de uma lista ligada em Java - Escreva um programa Java que pede para o usuário informar váriosQuantidade de visualizações: 670 vezes |
Pergunta/Tarefa: Este exercício Java demonstra como inserir um nó no início de uma lista ligada. Escreva um programa Java que cria uma lista ligada, ou seja, uma lista dinamicamente encadeada, e pede para o usuário informar vários valores inteiros, colocando os valores sempre no início da lista. Seu código deverá interromper a leitura dos valores quando o usuário informar o valor -1. Quando isso acontecer, mostre todos os valores contidos na lista ligada, na mesma ordem que foram inseridos (o último valor lido será o primeiro da lista). Sua saída deve ser parecida com: Inserindo valores no início da lista Informe o valor (-1 para sair): 8 Informe o valor (-1 para sair): 2 Informe o valor (-1 para sair): 5 Informe o valor (-1 para sair): 7 Informe o valor (-1 para sair): -1 Valores na lista: 7 -> 5 -> 2 -> 8 -> null Veja a resolução comentada deste exercício usando Java: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; import java.util.Scanner; // classe interna usada para representar um // nó na lista ligada class No { int valor; // valor do nó No proximo; // aponta para o novo nó // construtor da classe No No(int valor, No proximo) { this.valor = valor; this.proximo = proximo; } } public class Estudos { public static void main(String args[]){ // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos criar uma referência para o início da lista No inicio = null; // agora vamos pedir para o usuário informar // valores inteiros. O valor -1 sai do laço int valor; System.out.println("Inserindo valores no início da lista\n"); do { System.out.print("Informe o valor (-1 para sair): "); valor = Integer.parseInt(entrada.nextLine()); if (valor != -1) { inicio = inserirInicio(inicio, valor); } } while(valor != -1); // vamos exibir os valores na lista ligada System.out.print("\nValores na lista: "); exibirLista(inicio); } // função que permite adicionar um nó no início da // lista ligada public static No inserirInicio(No inicio, int valor) { // vamos apontar para o nó inicial No atual = inicio; // criamos um novo nó No novo = criarNo(valor); // a lista ligada ainda está vazia? if (atual == null){ // inicio recebe o novo nó inicio = novo; } else { // temos um ou mais nós na lista ligada // vamos inserir este nó antes do nó que // representa o início da lista novo.proximo = inicio; inicio = novo; } // e retornamos o início da lista return inicio; } // função usada para construir e retornar um novo nó public static No criarNo(int valor) { // cria o novo nó No no = new No(valor, null); // retorna o nó criado return no; } // função usada para percorrer a lista ligada e // exibir os valores contidos em seus nós public static void exibirLista(No inicio) { // vamos apontar para o início da lista No temp = inicio; // a lista está vazia? if (temp == null) { System.out.println("A lista está vazia."); } else { // esse laço se repete enquanto tempo for // diferente de null while (temp != null) { // vamos mostrar o valor desse nó System.out.print(temp.valor + " -> "); // avança para o próximo nó temp = temp.proximo; } // mostra o final da lista System.out.println("null"); } } } |
Java ::: Java + MySQL ::: Metadados da Base de Dados (Database Metadata) |
Java MySQL - Como obter os tipos de dados suportados pelo MySQL e seus correspondentes JDBC usando o método getTypeInfo() da interface DatabaseMetaDataQuantidade de visualizações: 6122 vezes |
Em algumas situações precisamos obter os tipos de dados suportados pelo MySQL e mapeá-los para seus correspondentes JDBC. Esta não é uma tarefa fácil, mas que, com uma pequena ajuda dos recursos de reflexão do Java, pode ser realizada depois de algumas xícaras de café. O primeiro passo é obter os tipos de dados suportados pelo MySQL com uma chamada ao método getTypeInfo() da interface DatabaseMetaData. Os campos do ResultSet que nos interessam são TYPE_NAME e DATA_TYPE. TYPE_NAME traz o nome do tipo de dados no MySQL enquanto DATA_TYPE traz o tipo JDBC correspondente como um inteiro. Assim, o que temos que fazer é usar reflexão para obter todos os campos da classe java.sql.Types e efetuar um mapeamento entre os tipos. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudosbancodados; import java.lang.reflect.Field; import java.sql.*; import java.util.HashMap; import java.util.Map; public class EstudosBancoDados{ static Map mapa; // usado para mapear os tipos JDBC public static void main(String[] args) { // strings de conexão String databaseURL = "jdbc:mysql://localhost/estudos"; String usuario = "root"; String senha = "osmar1234"; String driverName = "com.mysql.jdbc.Driver"; try { Class.forName(driverName).newInstance(); Connection conn = DriverManager.getConnection(databaseURL, usuario, senha); // vamos obter um objeto da classe com.mysql.jdbc.DatabaseMetaData DatabaseMetaData dbmd = conn.getMetaData(); // vamos obter os tipos de dados suportados por esta versão do MySQL // e seus correspondentes JDBC ResultSet tiposDados = dbmd.getTypeInfo(); while(tiposDados.next()){ System.out.println("MySQL: " + tiposDados.getString("TYPE_NAME") + " - JDBC: " + getJdbcTypeName(Integer.parseInt(tiposDados.getString("DATA_TYPE")))); } // vamos fechar o ResultSet tiposDados.close(); } catch (SQLException ex) { System.out.println("SQLException: " + ex.getMessage()); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("VendorError: " + ex.getErrorCode()); } catch (Exception e) { System.out.println("Problemas ao tentar conectar com o banco de dados: " + e); } } // Este método retorna o nome de um tipo JDBC // O retorno é null se o tipo JDBC não puder ser reconhecido public static String getJdbcTypeName(int jdbcType){ // vamos usar reflection para mapear valores inteiros a seus nomes if(mapa == null) { mapa = new HashMap(); // vamos obter todos os campos da classe java.sql.Types Field[] campos = java.sql.Types.class.getFields(); // vamos percorrer os campos for(int i = 0; i < campos.length; i++){ try{ // vamos obter o nome do campo String nome = campos[i].getName(); // vamos obter o valor do campo Integer valor = (Integer)campos[i].get(null); // vamos adicionar ao mapa mapa.put(valor, nome); } catch(IllegalAccessException e){ System.out.println("Ops: " + e.getMessage()); } } } // vamos retornar o nome do tipo JDBC return (String)mapa.get(new Integer(jdbcType)); } } O resultado da execução deste código foi: MySQL: BIT - JDBC: BIT MySQL: BOOL - JDBC: BIT MySQL: TINYINT - JDBC: TINYINT MySQL: TINYINT UNSIGNED - JDBC: TINYINT MySQL: BIGINT - JDBC: BIGINT MySQL: BIGINT UNSIGNED - JDBC: BIGINT MySQL: LONG VARBINARY - JDBC: LONGVARBINARY MySQL: MEDIUMBLOB - JDBC: LONGVARBINARY MySQL: LONGBLOB - JDBC: LONGVARBINARY MySQL: BLOB - JDBC: LONGVARBINARY MySQL: TINYBLOB - JDBC: LONGVARBINARY MySQL: VARBINARY - JDBC: VARBINARY MySQL: BINARY - JDBC: BINARY MySQL: LONG VARCHAR - JDBC: LONGVARCHAR MySQL: MEDIUMTEXT - JDBC: LONGVARCHAR MySQL: LONGTEXT - JDBC: LONGVARCHAR MySQL: TEXT - JDBC: LONGVARCHAR MySQL: TINYTEXT - JDBC: LONGVARCHAR MySQL: CHAR - JDBC: CHAR MySQL: NUMERIC - JDBC: NUMERIC MySQL: DECIMAL - JDBC: DECIMAL MySQL: INTEGER - JDBC: INTEGER MySQL: INTEGER UNSIGNED - JDBC: INTEGER MySQL: INT - JDBC: INTEGER MySQL: INT UNSIGNED - JDBC: INTEGER MySQL: MEDIUMINT - JDBC: INTEGER MySQL: MEDIUMINT UNSIGNED - JDBC: INTEGER MySQL: SMALLINT - JDBC: SMALLINT MySQL: SMALLINT UNSIGNED - JDBC: SMALLINT MySQL: FLOAT - JDBC: REAL MySQL: DOUBLE - JDBC: DOUBLE MySQL: DOUBLE PRECISION - JDBC: DOUBLE MySQL: REAL - JDBC: DOUBLE MySQL: VARCHAR - JDBC: VARCHAR MySQL: ENUM - JDBC: VARCHAR MySQL: SET - JDBC: VARCHAR MySQL: DATE - JDBC: DATE MySQL: TIME - JDBC: TIME MySQL: DATETIME - JDBC: TIMESTAMP MySQL: TIMESTAMP - JDBC: TIMESTAMP |
Java ::: Dicas & Truques ::: Data e Hora |
Como retornar a hora atual em Java usando um objeto da classe Calendar - Datas e Horas em JavaQuantidade de visualizações: 187 vezes |
Nesta dica mostrarei como podemos usar um objeto da classe Calendar da linguagem Java e seu método get() para obtermos as partes individuais de uma hora e exibí-las. Veja o código completo a seguir:---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package arquivodecodigos; import java.util.Calendar; public class Estudos{ public static void main(String args[]){ Calendar agora = Calendar.getInstance(); // horas, minutos e segundos int horas = agora.get(Calendar.HOUR); int minutos = agora.get(Calendar.MINUTE); int segundos = agora.get(Calendar.SECOND); System.out.println("Hora Atual: " + horas + ":" + minutos + ":" + segundos); } } Ao executar este código Java nós teremos o seguinte resultado: Hora Atual: 11:10:40 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Java - Usando laços for aninhados para desenhar uma pirâmide de números em Java (com o usuário informando a quantidade de linhas)Quantidade de visualizações: 8760 vezes |
Pergunta/Tarefa: Escreva um programa Java que solicita ao usuário um número inteiro. Este número inteiro deverá estar entre 1 e 12 e será usado como a quantidade de linhas em uma pirâmide de números. Você deverá usar laços for aninhados para controlar as linhas e montar a estrutura desejada. Sua saída deverá ser parecida com: Informe a quantidade de linhas: 5 1 2 1 2 3 2 1 2 3 4 3 2 1 2 3 4 5 4 3 2 1 2 3 4 5 Veja a resolução comentada deste exercício usando Java console: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // vamos fazer a leitura usando a classe Scanner Scanner entrada = new Scanner(System.in); // vamos solicitar a quantidade de linhas System.out.print("Informe a quantidade de linhas: "); int numLinhas = Integer.parseInt(entrada.nextLine()); // não queremos aceitar quantidades de linhas menores que 1 // ou maiores que 12 if((numLinhas < 1) || (numLinhas > 12)){ System.out.println("O número de linhas deve estar entre 1 e 12"); System.exit(0); } // este laço externo controla as linhas System.out.println(); for(int linha = 1; linha <= numLinhas; linha++){ // este laço gera os espaços antes de cada número nas // linhas da pirâmide for (int coluna = 1; coluna <= (numLinhas - linha); coluna++){ System.out.print(" "); // três espaços aqui } // aqui nós exibimos os números de cada linha do lado // esquerdo da pirâmide, até o centro for(int i = linha; i >= 1; i--){ // o número da linha é maior ou igual a 10? se for // colocamos um espaço antes do número if(i >= 10){ System.out.print(" " + i); } else{ // o número da linha é menor que 10? vamos //colocar dois espaços antes do número System.out.print(" " + i); } } // e finalmente exibimos os números de cada linha no // lado direito da pirâmide for (int i = 2; i <= linha; i++){ // o número da linha é maior ou igual a 10? se for // colocamos um espaço antes do número if(i >= 10){ System.out.print(" " + i); } else{ // o número da linha é menor que 10? vamos // colocar dois espaços antes do número System.out.print(" " + i); } } // gera uma nova linha System.out.println(); } System.out.println(); } } |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Equação da continuidade Um avião está se movendo pelo ar com velocidade de 220 m/s. As linhas de fluxo acima da asa estão comprimidas em 88% de sua área original. As linhas de fluxo abaixo da asa não estão comprimidas. Qual é a velocidade do ar acima da asa do avião em relação a esta? A) 220 m/s B) 26,4 m/s C) 414 m/s D) 194 m/s E) 250 m/s Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Vidros Qual dos processos abaixo não é utilizado para modificar o vidro: A) Esmerilhagem. B) Gravação. C) Queima. D) Furação. E) Têmpera. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Cálculo de vigas-parede O dimensionamento de vigas-parede pode ser realizado por meio de métodos numéricos simplificados, a exemplo do método das bielas e tirantes. Considere uma viga-parede biapoiada com 4,0m de vão e 2,5m de altura. O braço de alavanca, formado entre a resultante das tensões de compressão e tração para a viga-parede indicada, para o dimensionamento por meio do método das bielas e tirantes, é de: A) 1,325m. B) 1,525m. C) 1,650m. D) 1,725m. E) 1,855m. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Vidros Qual dos tipos abaixo não é um vidro: A) Soda-cálcico. B) Boro-silicato. C) Ao chumbo. D) Quartzitos. E) Alumínio borosilicato. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Vidros O vidro: A) É um material homogêneo. B) Orgânico. C) Formada pela fusão de uma massa resfriada. D) Quanto mais rápido for resfriado maior será sua densidade. E) É um material cristalino. Verificar Resposta Estudar Cards Todas as Questões |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
Portugol - Exercício Resolvido de Portugol - Um programa que lê três números inteiros e mostra o maior |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |