Java ::: Java para Engenharia ::: Unidades de Medida

Como converter Metros Quadrados em Quilômetros Quadrados em Java - Java para Física e Engenharia

Quantidade de visualizações: 384 vezes
Em muitas situações nós temos uma medida de área em m2 e queremos transformá-la em km2, ou seja, converter Metros Quadrados para Quilômetros Quadrados. Para isso só precisamos dividir os metros quadrados por 1.000.000. Veja a fórmula:

\[\text{Quilômetros Quadrados} = \frac{\text{Metros Quadrados}}{1.000.000} \]

Agora veja o código Java que pede para o usuário informar a medida de área em metros quadrados e a converte para quilômetros quadrados. Note que mostrei como exibir o resultado em notação científica e sem notação científica:

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos ler a medida em metros quadrados
    System.out.print("Informe os metros quadrados: ");
    double m_quadrados = Double.parseDouble(entrada.nextLine());
    
    // agora calculamos os quilometros quadrados
    double km_quadrados = m_quadrados / 1000000.00;
    
    // e mostramos o resultado
    System.out.println("Você informou " + m_quadrados +
      " metros quadrados.");
    System.out.println("Isso equivale a " + km_quadrados +
      " quilometros quadrados.");
    System.out.printf("Sem notação científica: %f\n",
      km_quadrados);
  }
}

Ao executar este código Java nós teremos o seguinte resultado:

Informe os metros quadrados: 80
Você informou 80.0 metros quadrados.
Isso equivale a 8.0E-5 quilômetros quadrados.
Sem notação científica: 0,000080


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de Java - Escreva um programa Java que leia e apresente um conjunto de números inteiros para uma matriz bidimensional 2 x 4 e apresente o valor e a posição

Quantidade de visualizações: 502 vezes
Pergunta/Tarefa:

Escreva um programa Java que leia e apresente um conjunto de números inteiros para uma matriz bidimensional 2 x 4 e apresente o valor e a posição do maior número inteiro. Você deverá informar tanto a linha quanto a coluna que o maior valor é encontrado.

Uma matriz bidimensional 2 x 4 quer dizer que a matriz possui 2 linhas e 4 colunas.

Seu programa Java deverá exibir uma saída parecida com:

Valor da linha 1 e coluna 1: 6
Valor da linha 1 e coluna 2: 9
Valor da linha 1 e coluna 3: 11
Valor da linha 1 e coluna 4: 5

Valor da linha 2 e coluna 1: 20
Valor da linha 2 e coluna 2: 63
Valor da linha 2 e coluna 3: 31
Valor da linha 2 e coluna 4: 7


Valores na matriz

    6    9   11    5
   20   63   31    7

O maior valor é 63
Ele foi encontrado na linha 2 e coluna 2
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java:

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    // variaveis usdas na resolução do problema
    int matriz[][] = new int[2][4];
    int maior_valor, linha, coluna;
    
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos ler os valores e colocar na matriz
    for(int i = 0; i < matriz.length; i++){ // linhas
      for(int j = 0; j < matriz[0].length; j++){ // colunas
        System.out.print("Valor da linha " + (i + 1) + " e coluna " 
          + (j + 1) + ": ");
        matriz[i][j] = Integer.parseInt(entrada.nextLine());       
      }        
      System.out.println();
    }
    
    // vamos mostrar a matriz da forma que ela foi informada
    System.out.println("\nValores na matriz\n");
      
    for(int i = 0; i < matriz.length; i++){ // linhas
      for(int j = 0; j < matriz[0].length; j++){ // colunas
        System.out.printf("%5d", matriz[i][j]);   
      }
      
      // passa para a próxima linha da matriz
      System.out.println();       
    }
    
    // agora vamos localizar o maior valor na matriz
    linha = 0;
    coluna = 0;
    maior_valor = matriz[linha][coluna];
    for(int i = 0; i < matriz.length; i++){ // linhas
      for(int j = 0; j < matriz[0].length; j++){ // colunas
        if(matriz[i][j] > maior_valor){
          maior_valor = matriz[i][j];
          linha = i + 1;
          coluna = j + 1;
        }
      }
    }
    
    // vamos mostrar o resultado
    System.out.println("\nO maior valor é " + maior_valor);
    System.out.println("Ele foi encontrado na linha " + linha +
      " e coluna " + coluna);
  }
}



C# ::: Windows Forms ::: DataGridView

Como retornar a quantidade de colunas em um DataGridView do C# Windows Forms

Quantidade de visualizações: 9983 vezes
A quantidade de colunas em um DataGridView pode ser obtida por meio da propriedade ColumnCount. Veja:

private void button2_Click(object sender, EventArgs e){
  // vamos adicionar três colunas no DataGridView
  dataGridView1.Columns.Add("cidade", "Cidade");
  dataGridView1.Columns.Add("estado", "Estado");
  dataGridView1.Columns.Add("populacao", "População");

  // vamos adicionar três linhas
  dataGridView1.Rows.Add("Goiânia", "GO", "3.453,39");
  dataGridView1.Rows.Add("Cuiabá", "MT", "1.876,12");
  dataGridView1.Rows.Add("Curitiba", "PR", "5.346,98");

  // vamos obter a quantidade de colunas no DataGridView
  int quant_colunas = dataGridView1.ColumnCount;

  // exibe o resultado
  MessageBox.Show("O DataGridView contém " + 
    quant_colunas + " colunas");
}

É possível também usar a propriedade ColumnCount para definir a quantidade de colunas em um DataGridView:

dataGridView1.ColumnCount = 6;

Há algumas considerações importantes sobre a propriedade ColumnCount:

1) Se seu valor for definido como 0, todas as colunas do DataGridView serão removidas;
2) Se o novo valor for menor que o valor atual, as colunas excedentes serão removidas no final da coleção Columns;
3) Se o novo valor for maior que o valor atual, as novas colunas serão adicionadas no final da coleção Columns;
4) Se tentarmos alterar o valor desta propriedade após a definição da propriedade DataSource, uma exceção InvalidOperationException será lançada.


PHP ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar a instrução switch para desviar o fluxo de execução de seus códigos PHP

Quantidade de visualizações: 14778 vezes
A instrução switch é usada quando queremos testar várias possibilidades de fluxo de código mas não queremos usar vários elseif. Desta forma, cada possibilidade é testada em um bloco case. Veja um exemplo:

<?php
  $valor = 4;
  
  switch($valor){
    case 0:
      echo "Valor é igual a 0";
      break;
    case 1:
      echo "Valor é igual a 1";
      break;
    case 2:
      echo "Valor é igual a 2";
      break;
    default:
      echo "Nenhuma das anteriores";
  }
?>

Ao executarmos este código PHP nós teremos o seguinte resultado:

Nenhuma das anteriores

Veja que, se nenhuma das condições testadas em um bloco case for satisfatória, a parte default da instrução switch será executada.


PHP ::: Dicas & Truques ::: Arquivos e Diretórios

Como renomear um diretório em PHP usando a função rename()

Quantidade de visualizações: 11722 vezes
Diretórios podem ser renomeados usando a função rename() da linguagem PHP. Esta função recebe o nome atual do diretório e o novo nome e retorna um valor boolean (true ou false) informando o sucesso ou não da operação. Antes de usar esta função verifique se você possui as permissões adequadas para renomear o diretório.

Veja um trecho de código no qual renomeamos um diretório no diretório public_html:

<?php
  // renomeia o diretório "recentes" para "atuais"
  $diretorio_antigo = "/site/public_html/recentes";
  $diretorio_novo = "/site/public_html/atuais";
  
  if(rename($diretorio_antigo, $diretorio_novo)){
    echo "Diretório renomeado com sucesso.";
  }
  else{
    echo "Não foi possível renomear o diretório.";
  }
?>

Ao executar este código nós teremos o seguinte resultado:

Diretório renomeado com sucesso.

Seja cuidadoso. Se você não tiver as permissões adequadas para renomear um diretório, a seguinte mensagem de erro será exibida:

Warning: rename(imagens,imagens_novas)
[function.rename]: Permission denied in
/site/public_html/testes.php on line 9
Não foi possível renomear o diretório.


C++ ::: Win32 API (Windows API) ::: Edit Control

Como definir a cor de fundo para um Edit Control em tempo de execução usando C++ e a API do Windows

Quantidade de visualizações: 10266 vezes
O processo de definir a cor de fundo para um Edit Control em tempo de execução usando apenas C++ e a API do Windows é um pouco complicado. A técnica apresentada aqui pode não ser a mais eficiente, mas funciona mesmo (testado como VC++ 2005 e Windows XP). Note que estarei usando as funções CreateSolidBrush(), GetDlgCtrlID(), SetBkMode() e SetBkColor() da WinAPI.

1 - Comece adicionando as linhas na parte de variáveis globais de sua aplicação:

HBRUSH hbrushEditBox = CreateSolidBrush(RGB(255, 255, 255));
HDC hdcEdit;
int id_edit_control;
HWND edit_window;


2 - Modifique ou adicione um case para a mensagem WM_CTLCOLOREDIT da seguinte forma:

case WM_CTLCOLOREDIT:
  hdcEdit = (HDC)wParam;
  edit_window = HWND(lParam);   
  id_edit_control = GetDlgCtrlID(edit_window);
		
  if(id_edit_control == IDC_EDIT1){
    SetBkMode(hdcEdit, TRANSPARENT);
    SetBkColor(hdcEdit,(LONG)hbrushEditBox);
    return (LONG)hbrushEditBox;
  }
	  
  return (LRESULT)CreateSolidBrush(RGB(255, 255, 255));

3 - A cor de fundo do Edit Control com ID IDC_EDIT1 será modificada para vermelho quando clicarmos no botão com o ID IDC_BUTTON1. Veja o case para este botão (dentro do case WM_COMMAND):

case IDC_BUTTON1: // ID do botão
 
  // Define uma nova cor de fundo para o Edit Control
  // com o ID IDC_EDIT1
  
  // Vermelho como cor de fundo
  hbrushEditBox = CreateSolidBrush(RGB(255, 0, 0));

  // Atualiza o Edit Control
  InvalidateRect(GetDlgItem(hwnd, IDC_EDIT1), 0, TRUE);
  
  break;



C ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar a instrução break da linguagem C para interromper a execução de um laço

Quantidade de visualizações: 15709 vezes
Laços for, while, do...while e switch podem ter suas iterações (repetições) interrompidas com o uso da instrução break. Quando isso acontece, o fluxo de execução salta para a primeira instrução após o laço. Veja um exemplo:

 
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int i;

  for(i = 0; i <= 10; i++){
    printf("%d  ", i);

    if(i == 6)
      break; // sai do laço
  }

  printf("\n\n");
  system("PAUSE");
  return 0;
}

Este código exibirá os valores de 0 à 6. Veja que execução do laço é interrompida exatamente no ponto em que a instrução break é encontrada. Se houver mais instruções dentro do laço mas logo após o break, estas instruções não serão executadas.


C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Operadores de Manipulação de Bits (Bitwise Operators)

Exercícios Resolvidos de C++ - Como converter de decimal para binário usando os operadores de bits em C++

Quantidade de visualizações: 779 vezes
Aprenda a programar com a nossa lista de exercícios de C++ e desafios de programação.

Pergunta/Tarefa:

Escreva um programa C++ para pede para o usuário informar um número decimal e faça a conversão para binário usando os operadores de bits.

Sua saída deverá ser parecida com:

Informe um número decimal: 9
O número binário é: 00000000000000000000000000001001
Resposta/Solução:

Veja a resolução completa para o exercício em C++, comentada linha a linha:

#include <string>
#include <iostream>

using namespace std;

// vamos definir o tamanho do vetor para guardar
// os dígitos do número binário
#define TAM_INT sizeof(int) * 8

int main(int argc, char *argv[]){
  // variáveis para ajudar a resolver o problema
  int decimal, indice, i;
  
  // vetor para guardar o número binário
  int binario[TAM_INT];

  // vamos pedir para o usuário informar um decimal inteiro
  cout << "Informe um número decimal: ";
  cin >> decimal;

  // ajustamos índice para o último elemento do vetor
  indice = TAM_INT - 1;

  // enquanto índice for maior ou igual a 0
  while(indice >= 0){
    // vamos guardar o bit menos significativo LSB
    binario[indice] = decimal & 1;
    
    // diminuímos o índice
    indice--;

    // desloca bits para a direita uma posição
    decimal = decimal >> 1;
  }

  // agora vamos exibir o número binário
  cout << "O número binário é: ";
  for(i = 0; i < TAM_INT; i++){
    cout << binario[i];
  }
 
  cout << "\n\n"; 
 
  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS; 
}



Java ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas

Como calcular a área de um Triângulo Equilátero em Java - Java para Geometria, Trigonometria e Álgebra Linear

Quantidade de visualizações: 1859 vezes
Um Triângulo Equilátero é o triângulo que possui os três lados iguais, e cujos ângulos internos são todos 60 graus (somando 180).

Veja na figura abaixo as características de um Triângulo Equilátero:



Nesta dica de Java eu mostrarei como calcular a área do triângulo equilátero. Para isso, vamos revisar a fórmula para o cálculo da área do triângulo equilátero:

\[\text{Área K} = \dfrac{1}{4} \times \sqrt{3} \times L^2 \]

E veja o código Java para o cálculo:

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    // para efetuar a leitura do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos pedir para o usuário informar o valor do lado do triângulo
    System.out.print("Informe o lado do triângulo: ");
    double lado = Double.parseDouble(entrada.nextLine());
    
    // agora vamos calcular a área do triângulo equilátero
    double area = (1.0 / 4.0) * Math.sqrt(3) * Math.pow(lado, 2);
    
    // e finalmente mostramos o resultado
    System.out.println("A área do triângulo equilátero é: " + area);
  }
}

Ao executarmos este código nós teremos o seguinte resultado:

Informe o lado do triângulo: 5
A área do triângulo equilátero é: 10.825317547305483


Java ::: Dicas & Truques ::: Arquivos e Diretórios

Como criar um arquivo em Java usando o método createNewFile() da classe File

Quantidade de visualizações: 179 vezes
Nesta dica mostrarei como é possível usar o método createNewFile() da clase File, do pacote java.io, para criar um novo arquivo. Note que estou usando um bloco try...catch para tratar os possíveis erros decorrentes desta operação.

Veja o código completo para o exemplo:

package arquivodecodigos;

import java.io.*;
 
public class Estudos{
  public static void main(String[] args){
    try{
      File arquivo = new File("c:\\estudos_java\\osmar.txt");
         
      // Cria o arquivo se este não existe ainda
      boolean ok = arquivo.createNewFile();
         
      // o arquivo foi criado com sucesso?
      if(ok){
        System.out.println("Arquivo criado com sucesso.");
      } 
      else{
        System.out.println("Nao foi possivel criar o arquivo.");
      }
    }
    catch(IOException e){
      System.out.println("Erro: " + e.toString());
    }
  }
}

Ao executar este código nós teremos o seguinte resultado:

Arquivo criado com sucesso.

Carregar Publicações Anteriores


Nossas 20 dicas & truques de programação mais populares

Você também poderá gostar das dicas e truques de programação abaixo

Nossas 20 dicas & truques de programação mais recentes

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 33 usuários muito felizes estudando em nosso site.