Você está aqui: Cards de Engenharia Civil - Fundações |
||
|
||
|
|
||
Delphi ::: Dicas & Truques ::: Data e Hora |
Como retornar o dia do mês para uma determinada data em Delphi usando as funções DayOfTheMonth() e DayOf()Quantidade de visualizações: 18002 vezes |
Em algumas situações precisamos extrair apenas o dia do mês de uma determinada data. Para isso podemos usar as funções DayOfTheMonth() e DayOf(), ambas contidas na unit DateUtils. Estas funções retornam um valor inteiro na faixa de 1 a 31. Veja, por exemplo, como obter o dia do mês da data atual:
procedure TForm1.Button1Click(Sender: TObject);
var
hoje: TDateTime;
dia_mes: integer;
begin
// não esqueça de incluir DateUtils no uses
// vamos receber a data de hoje
hoje := Now;
// vamos obter o dia do mês
dia_mes := DayOf(hoje);
// vamos exibir o resultado
ShowMessage('O dia do mês é: ' + IntToStr(dia_mes));
end;
É importante notar que ambas as funções DayOfTheMonth() e DayOf() esperam um valor do tipo TDateTime representando a data cujo mês queremos extrair. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Java ::: Tratamento de Erros ::: Erros de Tempo de Execução |
Como tratar o erro StringIndexOutOfBoundsException em seus programas Java - A exceção StringIndexOutOfBoundsException da linguagem JavaQuantidade de visualizações: 12250 vezes |
|
A exceção StringIndexOutOfBoundsException é uma exceção (erro) que acontece quando fornecemos um índice fora dos limites permitidos para o acesso de caracteres individuais em uma string, geralmente usando o método charAt. Lembre-se de que os índices dos caracteres em uma string Java começam em 0 e vão até o tamanho da string menos 1. Antes de vermos os exemplos, observe a posição da classe pública StringIndexOutOfBoundsException na hierarquia de classes da plataforma Java:
java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
java.lang.IndexOutOfBoundsException
java.lang.StringIndexOutOfBoundsException
Esta classe implementa a interface Serializable. Veja um trecho de código no qual fornecemos um índice de caractere inválido para o método charAt da classe String:
public class Estudos{
public static void main(String args[]){
String nome = "Java";
// vamos fornecer um índice inválido
System.out.println(nome.charAt(4));
System.exit(0);
}
}
Compile este código e execute-o. Você verá a seguinte mensagem de erro: Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 4 at java.lang.String.charAt(Unknown Source) at Estudos.main(Estudos.java:6) Experimente trocar a linha: System.out.println(nome.charAt(4)); por: System.out.println(nome.charAt(3)); Compile novamente e execute. Você verá que a mensagem de erro desapareceu. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Exceções e Tratamentos de Erros |
Exercício Resolvido de Java - Como forçar o usuário a informar dois inteiros válidos antes de efetuar sua soma - Exceções e Tratamentos de Erros em JavaQuantidade de visualizações: 3766 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que usa tratamento de erros try...catch para forçar o usuário a informar dois valores inteiros válidos antes de tentar somá-los. Caso o usuário informe um ou os dois valores inválidos, o programa deverá exibir uma mensagem de erro e solicitar os valores novamente. Sua saída deverá ser parecida com: Informe o primeiro valor: M Dados inválidos: java.lang.NumberFormatException: For input string: "M" Por favor, informe os dois números novamente Informe o primeiro valor: 7 Informe o segundo valor: % Dados inválidos: java.lang.NumberFormatException: For input string: "%" Por favor, informe os dois números novamente Informe o primeiro valor: 5 Informe o segundo valor: 3 A soma dos valores é: 8 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) {
Scanner entrada = new Scanner(System.in);
// para verificar se os valores são inteiros válidos
boolean validos = false;
int n1, n2, soma;
// solicita que o usuário informe os dois valores
while(!validos) {
try {
System.out.print("Informe o primeiro valor: ");
// tenta fazer a conversão
n1 = Integer.parseInt(entrada.nextLine());
System.out.print("Informe o segundo valor: ");
// tenta fazer a conversão
n2 = Integer.parseInt(entrada.nextLine());
// se chegou até aqui é porque não houve erros na conversão,
// ou seja, o usuário informou inteiros válidos
soma = n1 + n2;
System.out.println("A soma dos valores é: " + soma);
validos = true;
}
catch (Exception ex) { // houve erro na conversão?
System.out.println("Dados inválidos: " + ex.toString());
System.out.println("Por favor, informe os dois números novamente");
}
}
}
}
|
Java ::: Java para Engenharia ::: Eletricidade, Circuitos Elétricos e Eletrônicos |
Como calcular corrente, voltagem, resistência e potência em um circuito série de corrente contínua usando JavaQuantidade de visualizações: 2390 vezes |
|
Como calcular corrente, voltagem, resistência e potência em um círcuito série de corrente contínua usando Java Nesta dica mostrarei como é possível usar operações básicas da linguagem Java para calcular a corrente, voltagem, resistência e potência em um circuito série de corrente contínua. É conhecido como um circuito série um circuito composto exclusivamente por componentes elétricos ou eletrônicos conectados em série (de conexão em série, que é o mesmo que associação em série ou ligação em série). A associação em série é uma das formas básicas de se conectarem componentes elétricos ou eletrônicos. A nomeação descreve o método como os componentes são conectados. Vanos começar analisando a seguinte imagem: ![]() Esta imagem foi extraída do Simulador do PHET, no endereço https://phet.colorado.edu. Note que temos uma fonte de alimentação 90V, e três resistores (com resistências de 10Ω, 20Ω e 30Ω). Vamos começar relembrando os aspectos importantes dos circuitos em série: 1) A corrente elétrica I (medida em ampères (A), ou coulombs por segundo) é comum a todos os elementos do circuito. 2) A tensão elétrica V, (medida em volts (V), ou joules por coulomb) é dividida entre as cargas, ou seja, a soma das tensões nas cargas deve ser igual à tensão da fonte de alimentação. 3) A resistência elétrica R (medida em ohms (Ω)) total do circuito é igual à soma de todas as resistências das cargas. 4) A potência total P (medida em watts (W)) é igual à soma das potências das cargas que compõem o circuito. Vamos escrever um pouco de código então? Veja nosso primeiro código Java que calcula a corrente total, a tensão total, a resistência total e a potência total do circuito em série mostrado na imagem:
package estudos_java;
public class Estudos{
public static void main(String[] args){
// Tensão total do circuito em série
double eTotal = 90.0;
// Resitência total
double resist1 = 10.0;
double resist2 = 20.0;
double resist3 = 30.0;
double rTotal = resist1 + resist2 + resist3;
// Corrente elétrica total
double iTotal = eTotal / rTotal;
// Potência elétrica total
double pTotal = eTotal * iTotal;
// mostra os valores
System.out.println("Tensão total: " + eTotal);
System.out.println("Resistência total: " + rTotal);
System.out.println("Corrente total: " + iTotal);
System.out.println("Potência total: " + pTotal);
System.exit(0);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Tensão total: 90.0 Resistência total: 60.0 Corrente total: 1.5 Potência total: 135.0 Pronto! Agora que já sabemos o valor da corrente elétrica, e sabemos que a corrente é comum a todos os elementos do circuito em série, podemos calcular a tensão individual dos componentes. Assim, veja um trecho de código Java que calcula a tensão elétrica nos três resistores (lembre-se: tensão é o produto da corrente pela resistência):
package estudos_java;
public class Estudos{
public static void main(String[] args){
// Tensão total do circuito em série
double eTotal = 90.0;
// Resitência total
double resist1 = 10.0;
double resist2 = 20.0;
double resist3 = 30.0;
double rTotal = resist1 + resist2 + resist3;
// Corrente elétrica total
double iTotal = eTotal / rTotal;
// Potência elétrica total
double pTotal = eTotal * iTotal;
// mostra os valores
System.out.println("Tensão total: " + eTotal);
System.out.println("Resistência total: " + rTotal);
System.out.println("Corrente total: " + iTotal);
System.out.println("Potência total: " + pTotal);
// mostra as tensões nos resistores
System.out.println("\nTensão nos resistores individuais:");
double e1 = resist1 * iTotal;
double e2 = resist2 * iTotal;
double e3 = resist3 * iTotal;
System.out.println("Tensão no Resistor 1: " + e1 + "V");
System.out.println("Tensão no Resistor 2: " + e2 + "V");
System.out.println("Tensão no Resistor 3: " + e3 + "V");
System.exit(0);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Tensão total: 90.0 Resistência total: 60.0 Corrente total: 1.5 Potência total: 135.0 Tensão nos resistores individuais: Tensão no Resistor 1: 15.0V Tensão no Resistor 2: 30.0V Tensão no Resistor 3: 45.0V Para finalizar, vamos calcular a potência dissipada em cada um dos resistores de forma individual. Observe que a potência é o produto da tensão pela corrente (P = E.I). Eis o código:
package estudos_java;
public class Estudos{
public static void main(String[] args){
// Tensão total do circuito em série
double eTotal = 90.0;
// Resitência total
double resist1 = 10.0;
double resist2 = 20.0;
double resist3 = 30.0;
double rTotal = resist1 + resist2 + resist3;
// Corrente elétrica total
double iTotal = eTotal / rTotal;
// Potência elétrica total
double pTotal = eTotal * iTotal;
// mostra os valores
System.out.println("Tensão total: " + eTotal);
System.out.println("Resistência total: " + rTotal);
System.out.println("Corrente total: " + iTotal);
System.out.println("Potência total: " + pTotal);
// mostra as tensões nos resistores
System.out.println("\nTensão nos resistores individuais:");
double e1 = resist1 * iTotal;
double e2 = resist2 * iTotal;
double e3 = resist3 * iTotal;
System.out.println("Tensão no Resistor 1: " + e1 + "V");
System.out.println("Tensão no Resistor 2: " + e2 + "V");
System.out.println("Tensão no Resistor 3: " + e3 + "V");
// mostra as potências dissapadas nos resistores
System.out.println("\nPotência dissipada nos resistores individuais:");
double p1 = e1 * iTotal; // Potência = Tensão x Corrente
double p2 = e2 * iTotal;
double p3 = e3 * iTotal;
System.out.println("Potência no Resistor 1: " + p1 + "W");
System.out.println("Potência no Resistor 2: " + p2 + "W");
System.out.println("Potência no Resistor 3: " + p3 + "W");
System.exit(0);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Tensão total: 90.0 Resistência total: 60.0 Corrente total: 1.5 Potência total: 135.0 Tensão nos resistores individuais: Tensão no Resistor 1: 15.0V Tensão no Resistor 2: 30.0V Tensão no Resistor 3: 45.0V Potência dissipada nos resistores individuais: Potência no Resistor 1: 22.5W Potência no Resistor 2: 45.0W Potência no Resistor 3: 67.5W |
VB.NET ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de VB.NET - Como verificar quantas vezes um valor é encontrado em um vetor - Como usar vetores e matrizes em VB.NETQuantidade de visualizações: 609 vezes |
|
Pergunta/Tarefa: Escreva um programa VB.NET que declara, constrói e inicializa um vetor de 10 inteiros. Em seguida peça para que o usuário informe um valor a ser pesquisado. Faça uma varredura no vetor e informe quantas vezes o valor pesquisado é encontrado:
' declara, constrói e inicializa um vetor de 10 inteiros
Dim valores As Integer() = {4, 21, 9, 8, 12, 21, 4, 4, 1, 10}
Informe um valor: 4 O valor foi encontrado: 3 vezes Informe um valor: 8 O valor foi encontrado: 1 vezes Informe um valor: 3 O valor foi encontrado: 0 vezes Veja a resolução comentada deste exercício usando VB.NET:
Imports System
Module Program
' função principal do programa VB.NET
Sub Main(args As String())
' declara, constrói e inicializa um vetor de 10 inteiros
Dim valores As Integer() = {4, 21, 9, 8, 12, 21, 4, 4, 1, 10}
' vamos ler um valor inteiro
Console.Write("Informe um valor: ")
Dim pesquisa As Integer = Int32.Parse(Console.ReadLine())
' vamos verificar quantas vezes o valor informado está
' contido no vetor
Dim repeticoes As Integer = 0
For i As Integer = 0 To valores.Length - 1
If valores(i) = pesquisa Then
' encontrou? vamos contar esta ocorrência
repeticoes = repeticoes + 1
End If
Next
' vamos mostrar o resultado
Console.WriteLine("O valor foi encontrado: " &
repeticoes & " vezes")
Console.WriteLine(vbCrLf & vbCrLf & "Pressione qualquer tecla para sair...")
' pausa o programa
Console.ReadKey()
End Sub
End Module
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de VB.NET |
Veja mais Dicas e truques de VB.NET |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







