![]() |
|
||||
|
|||||
Você está aqui: Cards de |
||
|
||
|
|
||
LISP ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular a área de um círculo em LISP dado o raio do círculoQuantidade de visualizações: 1312 vezes |
A área de um círculo pode ser calculada por meio do produto entre a constante PI e a medida do raio ao quadrado (r2). Comece analisando a figura abaixo:![]() Sendo assim, temos a seguinte fórmula: ![]() Onde A é a área, PI equivale a 3,14 (aproximadamente) e r é o raio do círculo. O raio é a medida que vai do centro até um ponto da extremidade do círculo. O diâmetro é a medida equivalente ao dobro da medida do raio, passando pelo centro do círculo e dividindo-o em duas partes. A medida do diâmetro é 2 * Raio. Veja agora um código Common Lisp completo que calcula a área de um círculo mediante a informação do raio:
; Vamos definir as variáveis que vamos
; usar no programa
(defvar raio)
(defvar area)
; Este o programa principal
(defun AreaCirculo()
; Vamos ler o raio do círculo
(princ "Informe o raio do círculo: ")
; talvez o seu compilador não precise disso
(force-output)
; atribui o valor lido à variável raio
(setq raio (read))
; calcula a área do círculo
(setq area (* pi (expt raio 2)))
; E mostramos o resultado
(format t "A área do círculo de raio ~F é ~F" raio
area)
)
; Auto-executa a função AreaCirculo()
(AreaCirculo)
Ao executarmos este código nós teremos o seguinte resultado: Informe o raio do círculo: 5 A area do círculo de raio 5 é igual a 78.539816 A circunferência é um conjunto de pontos que estão a uma mesma distância do centro. Essa distância é conhecida como raio. A circunferência é estudada pela Geometria Analítica e, em geral, em um plano cartesiano. O círculo, que é formado pela circunferência e pelos infinitos pontos que preenchem seu interior, é estudado pela Geometria Plana, pois ele ocupa um espaço e pode ter sua área calculada, diferentemente da circunferência. |
C# ::: C# + MySQL ::: MySqlCommand |
Como inserir dados em uma tabela MySQL usando INSERT INTO e consultas parametrizadas no C#Quantidade de visualizações: 1379 vezes |
|
As consultas parametrizadas podem ser definidas para o método ExecuteNonQuery() da classe MySqlCommand por meio dos métodos Add() e AddWithValue() do objeto Parameters. Neste exemplo eu mostrarei como usar AddWithValue(), já que ele nos permite informar tanto o parâmetro quanto o seu valor. Observe que a tabela usada nesta dica possui os campos id, titulo, autor, paginas e data_cadastro. O campo id é auto-incremento (recebendo o valor NULL) e o campo data_cadastro é do tipo DATETIME (e recebe o valor NOW()). Veja o código completo para o exemplo (incluindo a conexão C# + MySQL usando a classe MySqlConnection):
using System;
using System.Data;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace EstudosMySQL {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e) {
// objeto de conexão
MySqlConnection conn = null;
// string de conexão
string connStr = "server=localhost;user id=root; " +
"password=osmar1234; database=estudos; pooling=false";
try {
conn = new MySqlConnection(connStr);
conn.Open();
if (conn.State == ConnectionState.Open) {
// primeiro criamos um novo objeto MySqlCommand
MySqlCommand comando = new MySqlCommand();
// definimos a conexão para este comando
comando.Connection = conn;
// definimos o comando SQL a ser executado usando parâmetros
comando.CommandText = "INSERT INTO livros (id, titulo, autor, paginas, data_cadastro) " +
"VALUES(NULL, @titulo, @autor, @paginas, NOW())";
// agora definimos os valores para os parâmetros
comando.Parameters.AddWithValue("@titulo", "APLICAÇÕES PHP REST");
comando.Parameters.AddWithValue("@autor", "CARLOS JUNIOR SOUZA");
comando.Parameters.AddWithValue("@paginas", 280);
comando.Prepare();
// e executamos o comando SQL
int res = comando.ExecuteNonQuery();
if (res > 0) {
MessageBox.Show("Operação realizada com sucesso. " + res + " linhas afetadas.");
}
else {
MessageBox.Show("Deve ter acontecido alguma coisa. " + res + " linhas afetadas.");
}
}
}
catch (MySqlException ex) {
MessageBox.Show("Erro: " +
ex.Message);
}
}
}
}
|
Delphi ::: Dicas & Truques ::: Rotinas de Conversão |
Como converter uma string em um valor numérico de ponto-flutuante (com parte fracionária) em Delphi usando as funções StrToFloat(), TryStrToFloat() e StrToFloatDef()Quantidade de visualizações: 25495 vezes |
|
Em algumas situações precisamos converter strings em valores numéricos do tipo ponto-flutuante, ou seja, números que contenham uma parte fracionária. Isso acontece quando recebemos valores de caixas de texto e precisamos usuá-los em cálculos. Vamos começar com a função StrToFloat() da unit SysUtils. Esta função recebe uma string representando um valor de ponto-flutuante válido e retorna um valor de ponto-flutuante. Veja o exemplo:
procedure TForm1.Button1Click(Sender: TObject);
var
valor1, valor2, soma: Double;
begin
// vamos receber as strings dos TEdits e converter
// seus valores para números de ponto-flutuante
// note que em Delphi, um valor de ponto-flutuante
// é informado em caixas de texto usando vírgula. Ex: 7,3
valor1 := StrToFloat(Edit1.Text);
valor2 := StrToFloat(Edit2.Text);
// vamos obter a soma dos dois valores
soma := valor1 + valor2;
// vamos exibir o resultado. Note o uso de FloatToStr() para
// converter o valor fracionário em string
ShowMessage('A soma é: ' + FloatToStr(soma));
end;
Note que, se a string sendo convertida possuir um valor de ponto-flutuante inválido, uma exceção do tipo EConvertError será lançada. Podemos evitar isso usando a função TryStrToFloat(). Esta função recebe dois argumentos: a string a ser convertida e a variável do tipo Extended, Double ou Single que receberá o valor. O resultado será true se a conversão for feita com sucesso e false em caso contrário. Veja:
procedure TForm1.Button1Click(Sender: TObject);
var
valor: Double;
begin
// vamos tentar converter o valor da caixa de texto
// em um valor de ponto-flutuante
if TryStrToFloat(Edit1.Text, valor) then
ShowMessage('Conversão efetuada com sucesso.')
else
ShowMessage('Erro na conversão');
end;
Há ainda uma terceira possibilidade: usar a função StrToFloatDef(). Esta função funciona exatamente da mesma forma que StrToFloat(), exceto que agora, se houver um erro de conversão, um valor de ponto-flutuante padrão será retornado. Veja: procedure TForm1.Button1Click(Sender: TObject); var valor: Double; begin // vamos converter o valor da caixa de texto // em um valor de ponto-flutuante. Se a conversão não puder // ser feita o valor 10,50 será atribuído à varial valor valor := StrToFloatDef(Edit1.Text, 10.50); // vamos exibir o resultado ShowMessage(FloatToStr(valor)); end; Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Java ::: Classes e Componentes ::: JTable |
Java Swing - Como excluir linhas de uma JTable em tempo de execução usando o método removeRow() da classe DefaultTableModelQuantidade de visualizações: 16253 vezes |
|
Nesta dica mostrarei como é possível excluir uma determinada linha de uma JTable usando o método removeRow() da classe DefaultTableModel. Veja que mostro também como inserir novas linhas na JTable usando o método insertRow(). Veja o resultado obtido na imagem abaixo: ![]() E agora o código Java Swing completo:
package arquivodecodigos;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
public class Estudos extends JFrame{
public Estudos(){
super("Exemplo de uma tabela simples");
final DefaultTableModel modelo = new DefaultTableModel();
// constrói a tabela
JTable tabela = new JTable(modelo);
// Cria duas colunas
modelo.addColumn("Nome");
modelo.addColumn("Idade");
JButton btn = new JButton("Inserir Linhas");
btn.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
String nome = JOptionPane.showInputDialog(null, "Informe o nome:");
String idade = JOptionPane.showInputDialog(null, "Informe a idade:");
int pos = Integer.parseInt(JOptionPane.showInputDialog(null,
"Informe a posição da nova linha:"));
// testa se a posição é válida
if(pos > (modelo.getRowCount() - 1))
pos = 0;
// Insere uma linha na posição especificada
modelo.insertRow(pos, new Object[]{nome, idade});
}
}
);
JButton btn2 = new JButton("Excluir Linhas");
btn2.addActionListener(
new ActionListener(){
@Override
public void actionPerformed(ActionEvent e){
int pos = Integer.parseInt(JOptionPane.showInputDialog(null,
"Informe a posição da linha a ser excluída:"));
// testa se a posição é válida
if(pos < modelo.getRowCount())
// Exclui a linha na posição especificada
modelo.removeRow(pos);
}
}
);
tabela.setPreferredScrollableViewportSize(new Dimension(350, 50));
Container c = getContentPane();
c.setLayout(new FlowLayout());
JScrollPane scrollPane = new JScrollPane(tabela);
c.add(scrollPane);
c.add(btn);
c.add(btn2);
setSize(400, 300);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
|
JavaScript ::: Dicas & Truques ::: Strings e Caracteres |
Como retornar o código ASCII ou Unicode associado a um caractere em JavaScript usando a função charCodeAt()Quantidade de visualizações: 1 vezes |
|
O método charCodeAt() é usado para obter o código ASCII ou Unicode de um caractere em uma determinada posição em uma string. Esta função está disponível no objeto String do JavaScript. Veja um página HTML completa demonstrando o seu uso:
<!doctype html>
<html>
<head>
<title>Strings em JavaScript</title>
</head>
<body>
<script type="text/javascript">
var palavra = "Arquivo";
document.write("O código Unicode da letra \"A\" é " +
palavra.charCodeAt(0));
</script>
</body>
</html>
Ao executar este código JavaScript nós teremos o seguinte resultado: O código ASCII ou Unicode da letra "A" é 65 |
Desafios, Exercícios e Algoritmos Resolvidos de JavaScript |
Veja mais Dicas e truques de JavaScript |
Dicas e truques de outras linguagens |
|
JavaScript - Como converter uma string em um valor de ponto-flutuante em JavaScript usando a função parseFloat() |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |








