Postagens

Mostrando postagens com o rótulo Algoritmo

Código Java que lida com arrays

Explicando o Código em Java Este artigo analisa detalhadamente um código Java que lida com arrays unidimensionais, matrizes bidimensionais e tridimensionais, além de utilizar classes auxiliares como Scanner , Random e Arrays . Vamos entender cada parte do código. Importação de Bibliotecas import java.util.Arrays; import java.util.Random; import java.util.Scanner; O código importa três bibliotecas fundamentais: java.util.Arrays : Para manipulação de arrays, incluindo ordenação. java.util.Random : Para geração de números aleatórios. java.util.Scanner : Para entrada de dados via teclado. Estrutura Principal public class Main { public static void main(String[] args) { A classe Main contém o método main , que é o ponto de entrada do programa. Leitura e Ordenação de Idades Scanner scanner = new Scanner(System.in); Random random = new Random(); int[] idades = new int[5]; System.out.println("Digite 5 idades:"); for (int i = 0; i < idades.length; i++) { Syst...

Código Java para Desenhar uma Ampulheta

Este artigo tem como objetivo explicar o funcionamento do código Java fornecido, que desenha uma ampulheta de asteriscos (*) a partir de um número ímpar fornecido pelo usuário. 1. Importação da Classe Scanner import java.util.Scanner; O programa utiliza a classe Scanner para receber a entrada do usuário. Essa classe permite a leitura de dados digitados no console. 2. Estrutura Principal do Programa public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); O programa inicia definindo a classe Main e o método principal main , onde a execução do programa começa. Um objeto da classe Scanner é criado para capturar a entrada do usuário. 3. Entrada do Usuário System.out.print("Digite um número ímpar: "); int n = scanner.nextInt(); O programa solicita ao usuário que insira um número ímpar, armazenando esse valor na variável n . 4. Validação do Número if (n % 2 == 0) { System.out.println("Por favor, insir...

A Criptografia de Cifra de César em Java

Imagem
  A criptografia é um tema crucial no mundo moderno, especialmente no que diz respeito à segurança da informação. Ela tem como principal objetivo garantir que as mensagens trocadas entre partes sejam compreendidas apenas pelas pessoas autorizadas, mantendo o conteúdo protegido contra acessos não desejados. Uma das técnicas mais antigas e simples de criptografia é a Cifra de César, amplamente conhecida por sua facilidade de implementação. Neste artigo, exploraremos como implementá-la em Java utilizando uma abordagem prática e eficiente. O Que é a Cifra de César? A Cifra de César é uma técnica de criptografia por substituição em que cada letra do texto original é deslocada um número fixo de posições no alfabeto. Por exemplo, com um deslocamento de 3, a letra 'A' seria substituída por 'D', 'B' por 'E', e assim por diante. Essa técnica é bastante simples e pode ser facilmente quebrada por métodos de análise de frequência, mas ainda é uma boa maneira de enten...

Algoritmo Interativo com Métodos

Criando um Algoritmo Interativo com Métodos em Java Neste artigo, vamos desenvolver um programa em Java que oferece um menu interativo para o usuário escolher entre diferentes funcionalidades. O programa incluirá os seguintes métodos: Imprimir uma matriz de zeros com dimensões definidas pelo usuário. Verificar se um número é PAR ou ÍMPAR . Determinar o maior entre três números . Um menu interativo dentro do método main , permitindo que o usuário escolha uma das opções até decidir sair. Este código é uma ótima forma de praticar conceitos fundamentais de programação em Java, como métodos, laços de repetição e interação com o usuário. Implementação do Código 1. Criando um Método para Imprimir uma Matriz de Zeros public static void imprimirMatriz(int x, int y) { for (int i = 0; i < x; i++) { for (int j = 0; j < y; j++) { System.out.print("0 "); } System.out.println(); } } Esse método recebe dois parâmetros, x e y ...

Imprima um Retângulo de Asteriscos com Java

Imagem
Este artigo apresenta um código em Java que permite ao usuário digitar dois valores correspondentes ao lado 1 (altura) e lado 2 (largura) de um retângulo. O programa utiliza laços de repetição para imprimir um retângulo formado por asteriscos no console. Vamos explorar como isso é feito! Código Explicado: O código a seguir faz uso da classe `Scanner` para capturar os valores de entrada e utiliza dois laços `for` aninhados para gerar as linhas e colunas do retângulo. ```java import java.util.Scanner; public class Main {     public static void main(String[] args) {                  Scanner scanner = new Scanner(System.in);         System.out.print("lado 1 altura: ");         int lado1 = scanner.nextInt();         System.out.print("lado 2 largura: ");         int lado2 = scanner.nextInt();         for (int i = 0; i < lado1; i++) {...

Conversor de Hexadecimal para Binário em Java

Imagem
  Explicação do Código Este programa em Java converte um número hexadecimal (base 16) inserido pelo usuário em um número binário (base 2). Importação da classe Scanner : Permite a entrada de dados pelo usuário. Entrada do número hexadecimal: O programa solicita ao usuário que digite um número em hexadecimal. Conversão de hexadecimal para decimal: O método Integer.parseInt(numeroHexadecimal, 16) transforma o número hexadecimal em decimal. Conversão de decimal para binário: O método Integer.toBinaryString(numeroDecimal) converte o número decimal obtido em binário. Saída do número binário: O programa exibe o número binário correspondente ao número hexadecimal digitado. Veja o codigo para testar import java.util.Scanner; public class Main {     public static void main(String[] args) {         Scanner ler = new Scanner(System.in);         System.out.println("Digite um número hexadecimal:");         String numer...

A Fascinante História dos Algoritmos

Imagem
A história do algoritmo: uma jornada da matemática à ciência da computação Os algoritmos são fundamentais na sociedade moderna, permeando desde a matemática até a ciência da computação e diversas outras áreas do conhecimento. Sua história, no entanto, remonta à Antiguidade, atravessando milênios de desenvolvimento e inovação. Este texto explora as origens, os avanços e o impacto dos algoritmos ao longo da história, destacando momentos e figuras cruciais que moldaram o conceito como o conhecemos hoje. Origem do termo "algoritmo" A palavra "algoritmo" tem origem no nome do matemático e astrônomo persa Al-Khwarizmi (780-850 d.C.), que viveu durante o século IX no Império Islâmico. Al-Khwarizmi escreveu tratados importantes sobre álgebra e cálculo, sendo o mais notável Al-Kitab al-Mukhtasar fi Hisab al-Jabr wal-Muqabala , que introduziu o conceito de resolução sistemática de equações. A latinização do nome de Al-Khwarizmi deu origem ao termo "algorismus", que,...

Cálculo de Fatorial em Java

Imagem
  Explicação do Código O código é um programa em Java que calcula o fatorial de um número inteiro fornecido pelo usuário. O fatorial de um número n n n (representado como n ! n! n ! ) é o produto de todos os números inteiros positivos de 1 até n n n . Por exemplo, 5 ! = 5 × 4 × 3 × 2 × 1 = 120 5! = 5 \times 4 \times 3 \times 2 \times 1 = 120 5 ! = 5 × 4 × 3 × 2 × 1 = 120 . Passo a Passo: Importação do Scanner : A biblioteca java.util.Scanner é importada para permitir a entrada de dados pelo teclado. Declaração das variáveis : int num : armazenará o número inteiro digitado pelo usuário. int fatorial : é inicializada com o valor 1 para acumular o produto dos números. Entrada de dados : O programa solicita ao usuário que insira um número inteiro utilizando o método entrada.nextInt() . Cálculo do fatorial : O laço for é usado para iterar de 1 até o número inserido pelo usuário ( num ). A cada iteração, o valor de fatorial é multiplicado pelo valor atual de i . Exibição do resulta...

Algoritmo de Busca Binária em Java: Rápida Localização em Arrays Ordenados

Imagem
  Explicação do Código Entrada de Dados : O usuário insere o tamanho e os elementos do array. O programa ordena o array automaticamente usando Arrays.sort() . Busca Binária : Usa ponteiros para dividir o array ao meio repetidamente. A complexidade é O ( log ⁡ n ) O(\log n) O ( log n ) , muito eficiente para grandes conjuntos de dados. Saída : Retorna a posição do elemento no array ordenado ou indica que ele não foi encontrado. Exemplo de Execução Entrada: Digite o tamanho do array : 6 Digite os elementos do array (em qualquer ordem): 40 10 30 50 20 60 Array ordenado: [ 10 , 20 , 30 , 40 , 50 , 60 ] Digite o elemento que deseja buscar: 30 Saída: Elemento encontrado na posição: 2 Entrada (buscando algo inexistente): Digite o tamanho do array : 6 Digite os elementos do array (em qualquer ordem): 40 10 30 50 20 60 Array ordenado: [ 10 , 20 , 30 , 40 , 50 , 60 ] Digite o elemento que deseja buscar: 70 Saída: Elemento não encontrado. Veja o codigo para testa: impor...

Algoritmo de Busca Sequencial em Java

Imagem
  Como funciona O usuário informa o tamanho e os elementos do array. Ele digita o número que deseja buscar. O programa percorre o array verificando cada elemento: Se encontrar o número, retorna a posição (índice) correspondente. Se não encontrar, exibe uma mensagem de que o número não está no array. Exemplo de Execução Entrada: Digite o tamanho do array : 5 Digite os elementos do array : 10 20 30 40 50 Digite o elemento que deseja buscar: 30 Saída: Elemento encontrado na posição: 2 Entrada (buscando algo inexistente): Digite o tamanho do array : 5 Digite os elementos do array : 10 20 30 40 50 Digite o elemento que deseja buscar: 60 Saída: Elemento não encontrado. veja o codigo para testa: import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // Entrada de dados: tamanho do array System.out.print("Digite o tamanho do array: "); int n = scanner.nex...

Cálculo de Juros Compostos em java

Imagem
  O código apresentado calcula o montante final (M) e os juros acumulados sobre um valor investido com base na fórmula dos juros compostos. Vamos analisar seu funcionamento passo a passo: 1. Importação e inicialização import java.util.Scanner; O programa utiliza a classe Scanner para receber entradas do usuário via teclado. 2. Declaração da classe e método principal public class Main { public static void main (String[] args) { Define a classe Main e o método principal main , onde o programa é executado. 3. Entrada de dados O programa solicita três entradas do usuário: Capital investido ( C ) : System.out.print( "Digite o valor investido (C): " ); double capitalInvestido = ler.nextDouble(); Taxa de rentabilidade ( i ) (como porcentagem, mas dividida por 100): System.out.print( "Digite a taxa de rentabilidade (i) em decimal (exemplo: 0.05 para 5%): " ); double taxaRentabilidade = ler.nextDouble(); Tempo em meses ( t ) : System.out.print( ...

Análise de Dados Pessoais: Idade, Peso e Altura em Java

Imagem
  Explicação do Funcionamento: Declaração de variáveis : maisDe50Anos : Contador para pessoas com mais de 50 anos. menosDe40Kg : Contador para pessoas com menos de 40kg. entre1e2Metros : Contador para pessoas com altura entre 1m e 2m. 2. Laço de repetição : Um laço for é usado para coletar as informações de 5 pessoas. Durante cada iteração: O programa solicita e armazena os valores de idade, altura e peso. Verifica cada uma das condições: Se a idade é maior que 50, incrementa maisDe50Anos . Se o peso é menor que 40, incrementa menosDe40Kg . Se a altura está entre 1m e 2m, incrementa entre1e2Metros . 3. Condicionais : Cada condição é avaliada usando estruturas if e, se verdadeira, o contador correspondente é incrementado. 4. Saída de resultados : Após o término do laço, os resultados acumulados são exibidos. Exemplo de execução: Entrada : Informe os dados da pessoa 1 : Idade (anos): 55 Altura (metros): 1.65 Peso (kg): 68 Informe os dados da pessoa 2 : Idade (anos): 30 Altura ...

Programa Java para Análise de Compras e Cálculo de Lucro

Imagem
  Explicação: 1. Declaração de variáveis: double[] compras = new double[10]; cria um array para armazenar os valores de 10 compras. soma é usada para somar os valores das compras. menor e maior são inicializadas com valores extremos para garantir que sejam substituídas corretamente durante a análise. 2. Leitura dos valores: Um laço for percorre as 10 compras. A cada iteração: O programa solicita e armazena o valor de uma compra no array. Atualiza a soma total para cálculo posterior da média. Verifica e atualiza os valores de menor e maior. 3. Cálculos: Média: Soma total dividida pelo número de compras. Diferença: Subtração entre o maior e o menor valor. Lucro: Soma total multiplicada por 30% (0.30), representando o aumento de preço. 4.Saída formatada: O programa utiliza System.out.printf para exibir os resultados formatados com duas casas decimais. Exemplo de execução: Entrada: Digite o valor da compra 1: 150.00 Digite o valor da compra 2: 230.50 Digite o valor da compra 3: 180.7...

Gerador de Tabuadas de 1 a 10 em Java

Imagem
  Explicação: Estrutura do programa: O programa utiliza dois laços aninhados (for) para calcular e exibir as tabuadas de 1 a 10. O laço externo (variável i) controla o número principal cuja tabuada está sendo exibida. O laço interno (variável j) controla o multiplicador, indo de 1 a 10. Detalhes do código: for (int i = 1; i <= 10; i++): Este laço percorre os números de 1 a 10, representando o número principal da tabuada. for (int j = 1; j <= 10; j++): Este laço percorre os números de 1 a 10, representando os multiplicadores de cada número principal. System.out.println(i + "x" + j + " = " + (i * j)): Este comando imprime a multiplicação atual, no formato i x j = resultado. Codigo para testa java: public class Main { public static void main(String[] args) { for (int i = 1; i <= 10; i++) { System.out.println("Tabuada do " + i + ":"); for (int j = 1; j <= 10; j++) { System.out.println(i + "x" + j + " = " + (i * j)); } ...