Você está aqui: Cards de Engenharia Civil - Fundações |
||
|
||
|
|
||
Python ::: Dicas & Truques ::: Strings e Caracteres |
Como pesquisar uma substring em uma string usando a função find() da linguagem PythonQuantidade de visualizações: 12735 vezes |
|
Nesta dica mostrarei como podemos usar o método find() do objeto string da linguagem Python para pesquisar uma substring em uma string. A assinatura dessa função é: find(substring[, start[, end]]) onde substring é a substring a ser pesquisada e start e end são argumentos opcionais que definem os índices de início e fim da pesquisa. Se a substring não for encontrada, o valor -1 é retornado. Se for encontrada, o índice do primeiro caractere é retornado. Veja um exemplo completo do seu uso:
def main():
frase = "Gosto de Python e JavaScript"
indice = frase.find("Python")
if indice != -1:
print("A palavra foi encontrada no índice", indice)
else:
print("A palavra não foi encontrada")
if __name__== "__main__":
main()
Ao executarmos este código Python nós teremos o seguinte resultado: A palavra foi encontrada no índice 9. |
LISP ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como converter radianos em graus em LISP - Trigonometria em LISPQuantidade de visualizações: 1102 vezes |
|
Todas as funções trigonométricas em Common Lisp (ou AutoLISP, para programadores AutoCAD) recebem seus argumentos em radianos, em vez de graus. Um exemplo disso é a função sin(). Esta função recebe o ângulo em radianos e retorna o seu seno. No entanto, há momentos nos quais precisamos retornar alguns valores como graus. Para isso é importante sabermos fazer a conversão de radianos para graus. Veja a fórmula abaixo: \[Graus = Radianos \times \frac{180}{\pi}\] Agora veja como esta fórmula pode ser escrita em código LISP:
; programa LISP que converte radianos em graus
(let((radianos)(graus))
; valor em radianos
(setq radianos 1.5)
; obtém o valor em graus
(setq graus (* radianos (/ 180 pi)))
; mostra o resultado
(format t "~F radianos em graus é ~F" radianos
graus)
)
Ao executarmos este código LISP nós teremos o seguinte resultado: 1.5 radianos convertidos para graus é 85.94366926962348 Para fins de memorização, 1 radiano equivale a 57,2957795 graus. |
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: 2466 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 |
Python ::: Estruturas de Dados ::: Lista Ligada Simples |
Como excluir um nó no final de uma lista encadeada simples em PythonQuantidade de visualizações: 1536 vezes |
|
Nesta dica mostrarei como podemos escrever um método remover_final() que remove e retorna o nó no final de uma lista encadeada simples em Python, ou seja, excluí o último nó da lista. É importante observar que o método exclui o último nó e o retorna completo, inclui o valor que está incluído nele. Se a lista estiver vazia o método retorna o valor None para indicar lista vazia. Vamos começar então com o código para a classe No da lista singularmente ligada (que salvei em um arquivo no_lista_singularmente_ligada.py):
# classe No para uma lista singularmente encadeada ou
# ligada - Singly Linked List
class No:
# construtor da classe No
def __init__(self, info, proximo):
self.info = info
self.proximo = proximo
# método que permite definir o conteúdo do nó
def set_info(self, info):
self.info = info
# método que permite obter a informação de um nó
def get_info(self):
return self.info
# método que permite definir o campo próximo deste nó
def set_proximo(self, proximo):
self.proximo = proximo
# método que permite obter o campo próximo deste nó
def get_proximo(self):
return self.proximo
# retorna True se este nó apontar para outro nó
def possui_proximo(self):
return self.proximo != None
Veja que o código para a classe Nó não possui muitas firulas. Temos apenas um campo info, que guardará o valor do nó, e um campo próximo, que aponta para o próximo nó da lista, ou null, se este for o único nó ou o último nó da lista ligada. Veja agora o código para a classe ListaLigadaSimples (lista_ligada_simples.py), com os métodos inserir_inicio(), remover_final() e exibir():
# importa a classe No
from no_lista_singularmente_ligada import No
# classe ListaLigadaSimples
class ListaLigadaSimples:
# construtor da classe
def __init__(self):
self.inicio = None # nó inicial da lista
# método que deleta um nó no final de uma lista ligada
# este método retorna o nó excluído
def remover_final(self):
# a lista está vazia?
if self.inicio == None:
return None
else:
# vamos excluir e retornar o primeiro nó da lista
removido = self.inicio
# a lista possui apenas um nó?
if self.inicio.get_proximo() == None:
# a lista agora ficará vazia
self.inicio = None
else:
# começamos apontando para o início da lista
no_atual = self.inicio
no_anterior = self.inicio
# enquanto o próximo do nó atual for diferente de nulo
while no_atual.get_proximo() != None:
# avançamos o nó anterior
no_anterior = no_atual
# saltamos para o próximo nó
no_atual = no_atual.get_proximo()
# na estamos na posição de exclusão
removido = no_atual
no_anterior.set_proximo(None)
# retorna o nó removido
return removido
# método que permite inserir um novo nó no início da lista
def inserir_inicio(self, info):
# cria um novo nó contendo a informação e que
# não aponta para nenhum outro nó
novo_no = No(info, None)
# a lista ainda está vazia?
if self.inicio == None:
# o novo nó será o início da lista
self.inicio = novo_no
else:
# o novo nó aponta para o início da lista
novo_no.set_proximo(self.inicio)
# o novo nó passa a ser o início da lista
self.inicio = novo_no
# método que permite exibir todos os nós da lista
# ligada simples (lista singularmente encadeada)
def exibir(self):
# aponta para o início da lista
no_atual = self.inicio
# enquanto o nó não for nulo
while no_atual != None:
# exibe o conteúdo do nó atual
print(no_atual.get_info())
# pula para o próximo nó
no_atual = no_atual.get_proximo()
E agora o código main() que insere alguns valores no início da nossa lista singularmente encadeada e testa o método remover_final():
# importa a classe ListaLigadaSimples
from lista_singularmente_ligada import ListaLigadaSimples
# método principal
def main():
# cria uma nova lista encadeada simples
lista = ListaLigadaSimples()
print("Insere o valor 12 no início da lista")
lista.inserir_inicio(12)
print("Conteúdo da lista: ")
lista.exibir()
print("Insere o valor 30 no início da lista")
lista.inserir_inicio(30)
print("Conteúdo da lista: ")
lista.exibir()
print("Insere o valor 27 no início da lista")
lista.inserir_inicio(27)
print("Conteúdo da lista: ")
lista.exibir()
print("Remove um nó no final da lista")
removido = lista.remover_final()
if removido == None:
print("Não foi possível remover. Lista vazia")
else:
print("Nó removido:", removido.get_info())
print("Conteúdo da lista: ")
lista.exibir()
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: c:\estudos_python>python estudos.py Insere o valor 12 no início da lista Conteúdo da lista: 12 Insere o valor 30 no início da lista Conteúdo da lista: 30 12 Insere o valor 27 no início da lista Conteúdo da lista: 27 30 12 Remove um nó no final da lista Nó removido: 12 Conteúdo da lista: 27 30 |
Java ::: Dicas & Truques ::: Formatação de datas, strings e números |
Como usar o método System.out.printf() do Java para converter um valor na base decimal para hexadecimalQuantidade de visualizações: 11104 vezes |
|
Nesta dica mostrarei como podemos tirar proveito do método System.out.printf() do Java 5.0 em diante para converter um valor na base decimal para hexadecimal e exibí-lo na tela. Veja o código completo para o exemplo:
package arquivodecodigos;
public class Estudos{
public static void main(String[] args){
int num = 35;
// exibe o valor na base hexadecimal
System.out.printf("O decimal %d convertido para hexadecimal é %x",
num, num);
}
}
Ao executar este código nós teremos o seguinte resultado: O decimal 35 convertido para hexadecimal é 23 |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
|
Delphi - Como usar o Delphi para verificar se um determinado processo do Windows está sendo executado Python - Como converter Centímetros Cúbicos em Metros Cúbicos em Python - Python para Física e Engenharia |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |



