Java ::: Desafios e Lista de Exercícios Resolvidos ::: Geometria, Trigonometria e Figuras Geométricas |
Exercícios Resolvidos de Java - Como calcular o volume e a área de um cilindro em Java - Geometria Espacial em JavaQuantidade de visualizações: 1313 vezes |
|
Pergunta/Tarefa: O Cilindro ou Cilindro Circular é um sólido geométrico alongado e arredondado que possui o mesmo diâmetro ao longo de todo o comprimento. Essa figura geométrica, que faz parte dos estudos de geometria espacial, apresenta dois círculos com raios de medidas equivalentes os quais estão situados em planos paralelos. Veja a imagem a seguir: ![]() Escreva um programa Java que pede para o usuário informar o raio e a altura de um cilindro e calcule e mostre o seu volume e sua área de superfície. Os valores informados pelo usuário deverão ser do tipo double e os resultados deverão também ser do tipo double. Para auxiliar nos cálculos, a fórmula do volume do cilindo é: \[ \text{V} = \pi \cdot r^2 \cdot \text{h} \] Já a fórmula da área do cilindro é: \[ \text{A} = \text{2} \cdot \pi \cdot r \cdot (r + h) \] Sua saída deve ser parecida com: Informe o raio do cilindro: 5 Informe a altura do cilindro: 8 O volume do cilindro é: 628.3185307179587 A área do cilindro é: 408.4070449666731 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) {
// variáveis usadas na resolução do problema
double raio, altura, volume, area;
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos ler o raio e a altura do cilindro
System.out.print("Informe o raio do cilindro: ");
raio = Double.parseDouble(entrada.nextLine());
System.out.print("Informe a altura do cilindro: ");
altura = Double.parseDouble(entrada.nextLine());
// vamos calcular o volume do cilindro
volume = Math.PI * Math.pow(raio, 2) * altura;
// agora vamos calcular a área do cilindro
area = 2 * Math.PI * raio * (raio + altura);
// e mostramos o resultado
System.out.println("O volume do cilindro é: " + volume);
System.out.println("A área do cilindro é: " + area);
}
}
|
MySQL ::: Dicas & Truques ::: Joins (Junções) |
Como usar joins no MySQLQuantidade de visualizações: 11483 vezes |
|
As junções (joins) são ferramentas presentes na maioria dos bancos de dados que suportam SQL e são usadas quando precisamos recuperar dados de uma ou mais tabelas com base em suas relações lógicas. Desta forma, é possível combinar os registros de tais tabelas de forma a construir um "super-registro", que nos permitirá exibir relatórios mais elaborados. Para o bom entendimento de junções, vamos considerar duas tabelas: filmes e generos. Aqui nós temos uma cardinalidade de 1 x N. Um filme possui um gênero, enquanto um gênero pode abranger vários filmes. Vamos começar criando estas duas tabelas (comece com a tabela generos, já que esta não depende da tabela de filmes): Comando DLL CREATE TABLE para a tabela generos: CREATE TABLE generos( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, nome VARCHAR(45) NOT NULL, PRIMARY KEY(id) ) ENGINE = InnoDB; Veja agora o comando SQL para a criação da tabela de filmes: Comando DLL CREATE TABLE para a tabela filmes:
CREATE TABLE filmes(
id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
titulo VARCHAR(45) NOT NULL,
genero INTEGER UNSIGNED NOT NULL,
PRIMARY KEY(id),
CONSTRAINT fk_filmes_generos FOREIGN KEY fk_filmes_generos(id)
REFERENCES generos(id) ON DELETE RESTRICT ON UPDATE RESTRICT
)
ENGINE = InnoDB;
Veja que a tabela filmes contém uma chave estrangeira referenciando a chave primária da tabela generos. Isso nos permite "atrelar" um filme ao seu gênero. Vá em frente e insira alguns dados em ambas as tabelas. Primeiro cadastre alguns gêneros e em seguida alguns filmes. Vejamos agora a importância dos joins. Observe o resultado de um comando DML SELECT na tabela filmes: SELECT * FROM filmes; id titulo genero 1 EFEITO BORBOLETA 6 2 O PENTELHO 1 3 VIAGEM MALDITA 3 Nesta query o gênero é retornado como um valor inteiro, ou seja, o valor do campo id da tabela generos. Em muitos casos este não é o comportamento que queremos. Em vez do id do gênero nós gostaríamos de exibir seu nome. Isso pode ser conseguido da seguinte forma: SELECT filmes.id, filmes.titulo, generos.nome FROM filmes, generos WHERE filmes.genero = generos.id; id titulo genero 1 EFEITO BORBOLETA FICÇÃO 2 O PENTELHO COMÉDIA 3 VIAGEM MALDITA TERROR Nesta query eu usei o nome completo da tabela antes do nome dos campos a serem retornados. Na prática, é comum darmos apelidos às tabelas. Veja: SELECT f.id, f.titulo, g.nome FROM filmes f, generos g WHERE f.genero = g.id; Neste exemplo, não usamos as palavras-chaves INNER JOIN, LEFT JOIN, RIGHT JOIN, etc. A junção está "escondida" na cláusula SELECT. Esta técnica é conhecida como "junção implícita" ou "implicit join". Veja como o mesmo resultado pode ser obtido usando a junção INNER JOIN: SELECT f.id, f.titulo, g.nome FROM filmes f INNER JOIN generos g ON f.genero = g.id; Veja minhas outras dicas sobre junções para aprender mais sobre INNER JOIN, LEFT JOIN, RIGHT JOIN, OUTER JOIN, FULL JOIN, etc. |
Delphi ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular desvio padrão em Delphi - Delphi para Matemática e EstatísticaQuantidade de visualizações: 2385 vezes |
|
Em Matemática e Estatística, o Desvio padrão (em inglês: Standard Deviation) é uma medida de dispersão, ou seja, é uma medida que indica o quanto um conjunto de dados é uniforme. Quando o desvio padrão é baixo, isso quer dizer que os dados do conjunto estão mais próximos da média. Como calcular o desvio padrão de um conjunto de dados? Vamos começar analisando a fórmula mais difundida na matemática e na estatística: \[\sigma = \sqrt{ \frac{\sum_{i=1}^N (x_i -\mu)^2}{N}}\] Onde: a) __$\sigma__$ é o desvio; b) __$x_i__$ é um valor qualquer no conjunto de dados na posição i; c) __$\mu__$ é a média aritmética dos valores do conjunto de dados; d) N é a quantidade de valores no conjunto. O somatório dentro da raiz quadrada nos diz que devemos somar todos os elementos do conjunto, desde a posição 1 até a posição n, subtrair cada valor pela média do conjunto e elevar ao quadrado. Obtida a soma, nós a dividimos pelo tamanho do conjunto. Veja o código Delphi completo que obtém o desvio padrão a partir de um conjunto de dados contendo quatro valores:
// Algoritmo Delphi para calcular desvio padrão
program estudos_delphi;
{$APPTYPE CONSOLE}
uses
SysUtils, Math;
var
// conjunto de dados
conjunto: array[1..4] of double = (10, 30, 90, 30);
soma: double; // Soma dos elementos
desvio_padrao: double; // Desvio padrão
tam: integer; // Tamanho dos dados
media: double; // média
i: integer;
begin
soma := 0.0;
desvio_padrao := 0.0;
tam := 4;
// vamos somar todos os elementos
for i := 1 to tam do
begin
soma := soma + conjunto[i];
end;
// agora obtemos a média do conjunto de dados
media := soma / tam;
// e finalmente obtemos o desvio padrão
for i := 1 to tam do
begin
// não esqueça de adicionar a unit Math
desvio_padrao := desvio_padrao + Power(conjunto[i] - media, 2);
end;
// mostramos o resultado
WriteLn('Desvio Padrão Populacional: ' + FloatToStr(Sqrt(desvio_padrao / tam)));
WriteLn('Desvio Padrão Amostral: ' + FloatToStr(Sqrt(desvio_padrao / (tam - 1))));
WriteLn;
Write('Pressione Enter para sair...');
ReadLn;
end.
Ao executar este código Delphi nós teremos o seguinte resultado: Desvio Padrão Populacional: 30.0 Desvio Padrão Amostral: 34.64101615137755 Veja que, para calcular o Desvio Padrão Populacional, nós dividimos o somatório pela quantidade de elementos no conjunto, enquanto, para calcular o Desvio Padrão Amostral, nós dividimos o somatório pela quantidade de elementos - 1 (cuidado com a divisão por zero no caso de um conjunto com apenas um elemento). |
C# ::: Dicas & Truques ::: Matemática e Estatística |
Apostila C# para iniciantes - Como calcular juros compostos e montante usando C#Quantidade de visualizações: 14421 vezes |
|
O regime de juros compostos é o mais comum no sistema financeiro e portanto, o mais útil para cálculos de problemas do dia-a-dia. Os juros gerados a cada período são incorporados ao principal para o cálculo dos juros do período seguinte. Chamamos de capitalização o momento em que os juros são incorporados ao principal. Após três meses de capitalização, temos: 1º mês: M = P .(1 + i) 2º mês: o principal é igual ao montante do mês anterior: M = P x (1 + i) x (1 + i) 3º mês: o principal é igual ao montante do mês anterior: M = P x (1 + i) x (1 + i) x (1 + i) Simplificando, obtemos a fórmula: M = P . (1 + i)^n Importante: a taxa i tem que ser expressa na mesma medida de tempo de n, ou seja, taxa de juros ao mês para n meses. Para calcularmos apenas os juros basta diminuir o principal do montante ao final do período: J = M - P Vejamos um exemplo: Considerando que uma pessoa empresta a outra a quantia de R$ 2.000,00, a juros compostos, pelo prazo de 3 meses, à taxa de 3% ao mês. Quanto deverá ser pago de juros? Veja o código C# para a resolução:
static void Main(string[] args){
double principal = 2000.00;
double taxa = 0.03;
int meses = 3;
double montante = principal * Math.Pow((1 + taxa), meses);
double juros = montante - principal;
Console.WriteLine("O total de juros a ser pago é: "
+ juros);
Console.WriteLine("O montante a ser pago é: "
+ montante);
Console.WriteLine("Pressione qualquer tecla para sair...");
// pausa o programa
Console.ReadKey();
}
Um outra aplicação interessante é mostrar mês a mês a evolução dos juros. Veja o código a seguir:
static void Main(string[] args){
double principal = 2000.00;
double taxa = 0.03;
int meses = 3;
double anterior = 0.0;
for(int i = 1; i <= meses; i++){
double montante = principal * Math.Pow((1 + taxa), i);
double juros = montante - principal - anterior;
anterior += juros;
Console.WriteLine("Mês: " + i + " - Montante: "
+ montante + " - Juros: " + juros);
}
Console.WriteLine("Pressione qualquer tecla para sair...");
// pausa o programa
Console.ReadKey();
}
|
Você também poderá gostar das dicas e truques de programação abaixo |
|
JavaScript - Como arredondar um valor numérico de ponto-flutuante para cima usando a função ceil() do objeto Math do JavaScript |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






