![]() |
|
||||
![]() Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica. |
|||||
Ruby ::: Dicas & Truques ::: Strings e Caracteres |
Como inserir uma substring em uma determinada posição de uma string em Ruby usando a função insert()Quantidade de visualizações: 9022 vezes |
Muita vezes precisamos inserir uma substring em uma determinada posição de uma string em Ruby. Esta tarefa pode ser realizada com a função insert() da classe String. Esta função opera na string original e requer dois argumentos: a posição na string onde a substring será inserida e a substring propriamente dita. A posição é um índice iniciando em 0. Índices negativos são contados a partir do final da string. Veja o exemplo: # declara e inicializa uma variável string frase = "Gosto muito de Ruby" puts "A frase original é: " + frase # vamos inserir " Python e" antes de "Ruby". frase.insert(14, " Python e") # exibe o resultado puts "A nova frase é: " + frase Ao executar este código Ruby nós teremos o seguinte resultado: A frase original é: Gosto muito de Ruby A nova frase é: Gosto muito de Python e Ruby |
Java ::: Dicas & Truques ::: Strings e Caracteres |
Como retornar a quantidade de palavras em uma string Java usando um objeto da classe StringTokenizerQuantidade de visualizações: 364 vezes |
Nesta dica mostrarei como podemos usar um objeto da classe StringTokenizer, do pacote java.util para contar as palavras em um texto ou frase, ou seja, em uma string. O método que usaremos da classe StringTokenizer é countTokens() que retorna a quantidade de pedaçõs na string, separados por espaço. Veja o código completo para o exemplo: // Este exemplo mostra como contar as palavras // de uma string import java.util.*; public class Estudos{ public static void main(String[] args){ String frase = "Programar em Java é bom demais"; StringTokenizer parser = new StringTokenizer(frase); int cont = parser.countTokens(); System.out.println("A frase contém " + cont + " palavras"); System.exit(0); } } Ao executar este código Java nós teremos o seguinte resultado: A frase contem 6 palavras. |
JavaScript ::: Dicas & Truques ::: Miscelâneas |
JavaScript para iniciantes - Como obter o valor do maior número possível em JavaScript usando Number.MAX_VALUEQuantidade de visualizações: 8873 vezes |
Quando estamos desenvolvendo aplicações em JavaScript que lidam intensivamente com valores numéricos, é sempre uma boa idéia sabermos, de antemão, qual o maior valor numérico possível nessa linguagem de programação. Para isso podemos usar a propriedade MAX_VALUE do objeto Number. Veja como isso pode ser feito no trecho de código abaixo: <html> <head> <title>Estudando JavaScript</title> </head> <body> <script type="text/javascript"> var maximo = Number.MAX_VALUE; document.write("O maior número em JavaScript é " + maximo); </script> </body> </html> Ao executar este código nós teremos o seguinte resultado: O maior número em JavaScript é 1.7976931348623157e+308 Qualquer valor numérico acima disso, será tratado pela linguagem JavaScript como Infinity. |
Java ::: Estruturas de Dados ::: Lista Ligada Simples |
Estruturas de dados em Java - Como criar uma lista singularmente ligada, inserindo e exibindo os valores contidos em cada nóQuantidade de visualizações: 12171 vezes |
Em dicas posteriores você aprendeu sobre listas singularmente e duplamente ligadas. Nesta dica você aprenderá a criar uma lista singularmente ligada (com referências apenas para o próximo nó), inserir alguns nós (sempre no final da lista) e usará um laço while para visitar todos os nós e exibir seus valores. A classe usada para representar cada nó é a seguinte (No.java): // classe No public class No{ public int valor; public No proximo; } // fim da classe No Note que cada nó contém apenas um valor inteiro e uma referência para o próximo nó. Ao analisar o código você perceberá que tanto a inserção quanto a exibição dos nós são feitas usando métodos. Isso permitirá o reaproveitamento deste código em suas próprias implementações. Veja o código para a lista ligada (Lista.java): public class Lista{ No inicio; // início da lista // função que permite exibir os valores de // todos os nós da lista public void exibir(){ if(inicio != null){ do{ System.out.println(inicio.valor); inicio = inicio.proximo; }while(inicio != null); } else System.out.println("A lista esta vazia\n\n"); } // função que permite inserir nós na lista. // veja que a função recebe o valor a ser // armazenado em cada nó public void inserir(int v){ No temp; // verifica se a lista está vazia if(inicio == null){ // reserva memória para o novo nó inicio = new No(); inicio.valor = v; // é o primeiro nó...não deve apontar para // lugar nenhum inicio.proximo = null; } else{ // não está vazia....vamos inserir o nó no final temp = inicio; // vamos varrer a lista até encontrar o último nó while(temp.proximo != null) temp = temp.proximo; // estamos no último nó...vamos criar um novo nó agora temp.proximo = new No(); // atribui o valor do nó temp.proximo.valor = v; // define o campo proximo do nó como null temp.proximo.proximo = null; } } } Compile as classes No.java e Lista.java e vamos fazer o teste (TesteJava.java): public class TesteLista{ public static void main(String args[]){ // vamos criar uma nova lista Lista lista = new Lista(); // vamos inserir quatro valores na lista lista.inserir(45); lista.inserir(3); lista.inserir(98); lista.inserir(17); // exibe os valores na lista lista.exibir(); System.exit(0); } } |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Java - Um laço for que solicita ao usuário 10 números inteiros e mostra o menor e o maior valor informadoQuantidade de visualizações: 1404 vezes |
Pergunta/Tarefa: Escreva um programa Java console que usa o laço for para solicitar ao usuário que informe 10 números inteiros. Em seguida mostre o maior e o menor valor lido. Não é permitido usar matrizes: Dica: Use um objeto da classe Scanner para obter a entrada do usuário. Resposta/Solução: Como a solução deste exercício depende de valores informados pelo usuário, a classe Scanner deverá ser usada. Desta forma, você deverá importá-la, usando a linha: import java.util.Scanner; public static void main(String[] args){ // para este exercício você deverá importar a classe // Scanner. Ela está no pacote java.util.*; // vamos construir um objeto da classe Scanner para ler a // entrada do usuário Scanner entrada = new Scanner(System.in); int valor; // guarda o valor lido int maior = 0, menor = 0; // variáveis que guardarão o maior e o menor valor lido // vamos pedir ao usuário que informe 10 valores inteiros for(int i = 0; i < 10; i++){ System.out.print("Informe o " + (i + 1) + "º valor: "); valor = Integer.parseInt(entrada.nextLine()); // esta é a primeira iteração do laço? se for vamos assumir que o // maior e menor valor lido são o primeiro valor informado if(i == 0){ maior = valor; menor = valor; // poderia ser escrito assim: //maior = menor = valor; } else{ // não é a primeira iteração // vamos verificar se é maior que o valor atual da variável maior if(valor > maior){ maior = valor; } // vamos verificar se é menor que o valor atual da variável menor if(valor < menor){ menor = valor; } } } // vamos exibir o maior e o menor valor lido System.out.println("\nO maior valor lido foi: " + maior); System.out.println("O menor valor lido foi: " + menor); } |
MySQL ::: Dicas & Truques ::: Data e Hora |
Como calcular a diferença em dias entre duas datas do MySQL usando a função DATEDIFF()Quantidade de visualizações: 19228 vezes |
A função DATEDIFF() é usada quando precisamos obter a diferença entre duas datas. Ela aceita dois argumentos: expr1 e expr2 e retorna expr1 ? expr2 como um valor em dias de uma data para a outra. Tanto expr1 quanto expr2 são campos do tipo DATE, DATETIME ou TIMESTAMP. Somente a parte date é usada nos cálculos. Veja um exemplo de seu uso:SELECT DATEDIFF('2008-03-10','2008-02-10') O resultado será 29. Veja mais um exemplo: SELECT DATEDIFF(NOW(), vencimento) FROM tabela_estudos Aqui nós obtemos a quantidade de dias que já se passaram entre a data de hoje e o valor armazenado no campo vencimento. |
Delphi ::: Dicas & Truques ::: Strings e Caracteres |
Como retornar o caractere a partir de um determinado código ASCII em Delphi usando a função Chr()Quantidade de visualizações: 21999 vezes |
Em algumas situações precisamos obter um caractere a partir de sua representação ASCII. Em Delphi isso pode ser feito por meio da função Chr(). Esta função recebe um número inteiro e devolve o caractere correspondente. Veja o exemplo:procedure TForm1.Button1Click(Sender: TObject); var codigo: integer; letra: char; begin codigo := 65; // código ASCII // vamos obter o caractere letra := Chr(codigo); // vamos exibir o resultado ShowMessage('O caractere para o código informado é: ' + letra); end; É importante notar que esta função pode ser usada para imprimir caracteres de controle, tais como tab, enter, entre outros. Assim, Chr(9) retorna o caractere de tab. Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009. |
C# ::: Windows Forms ::: ListBox |
Como inserir um item em uma determinada posição da ListBox do C# Windows Forms usando o método Insert()Quantidade de visualizações: 934 vezes |
Em algumas situações nós gostaríamos de adicionar um novo item a uma ListBox do C# Windows Forms e indicar a posição (índice) na qual ela deverá ficar. Para isso podemos usar a função Insert() do objeto Items da ListBox. O método Insert() recebe o índice no qual o elemento será inserido e o item a ser inserido. Veja um exemplo de seu uso no trecho de código a seguir: private void button2_Click(object sender, EventArgs e) { // insere um item na terceira posição listBox1.Items.Insert(2, "Fortaleza"); } Se o índice fornecido para o método Insert() não estiver dentro da faixa de índices válidos para os elementos da ListBox, uma exceção do tipo ArgumentOutOfRangeException será atirada: System.ArgumentOutOfRangeException HResult=0x80131502 Message=InvalidArgument=Value '20' não é um valor válido para 'index'. Parameter name: index Source=System.Windows.Forms StackTrace: em System.Windows.Forms.ListBox.ObjectCollection.Insert(Int32 index, Object item) |
Python ::: Python para Engenharia ::: Engenharia Civil - Concreto, Concreto Armado e Concretos Especiais |
Como calcular o Momento Mínimo de uma viga de concreto armado usando Python - Python para Engenharia Civil e Cálculo EstruturalQuantidade de visualizações: 232 vezes |
A ABNT NBR 6118 (Projeto de estruturas de concreto armado) define que todas as vigas, independente de suas dimensões e momentos solicitantes, precisam apresentar uma taxa mínima de armadura de tração. O concreto possui excelente resistência à compressão, porém, sua resistência à tração é muito baixa, ficando em torno de 10% do valor de sua resistência à compressão. A NBR 6118 lista, como primeira exigência, uma taxa mínima absoluta de 0,15% de armadura longitudinal para as vigas de concreto armado. A segunda exigência é calcular a área de armadura mínima a partir do Mdmin, que é o momento mínimo (de projeto) a ser considerado no dimensionamento. Dessa forma, após calcularmos o momento mínimo Mdmin, só precisamos calcular a área de aço correspondente a este momento. A fórmula do momento mínimo para as vigas de concreto armado é: \[M_\text{dmin} = 0,8 \cdot W_\text{0} \cdot f_\text{ctk,sup}\] Onde: Mdmin é o momento mínimo de projeto a ser considerado, em kN.m (ou kN.cm dependendo da necessidade); fctk,sup é o limite superior da resistência à tração média do concreto, em kN.cm2. Em outra dica desta seção eu mostrei como o fctk,sup é calculado; W0 é o módulo de resistência da seção transversal da viga, em m3. Já o Módulo de Resistência da Seção (para seções retangulares), é calculado pela seguinte fórmula: \[W_\text{0} = \frac{b \cdot h^2}{6}\] Onde: W0 é o módulo de resistência da seção transversal da viga, em cm3; b é a largura da viga em centímetros; h é a altura da viga em centímetros. Veja agora o código Python que pede para o usuário informar o FCK do concreto e as dimensões da viga e calcula o fctk,sup, o W0 e finalmente o Mdmin solicitante para o cálculo da armadura longitudinal mínima da viga: # vamos importar o módulo Math import math # função principal do programa def main(): # vamos pedir para o usuário informar o FCK do concreto fck = float(input("Informe o FCK do concreto em Mpa: ")) # vamos ler a largura da viga bw = float(input("Informe a largura bw da viga em cm: ")) # vamos ler a altura da viga h = float(input("Informe a altura h da viga em cm: ")) # agora vamos calcular a resistência à tração média # do concreto fctk_m = 0.3 * math.pow(fck, 2.0 / 3.0) # vamos calcular o limite superior fctk_sup = 1.3 * fctk_m # vamos calcular o módulo de resistência da seção w0 = (bw * math.pow(h, 2) / 6.0) # agora já podemos calcular o momento mínimo mdmin = 0.8 * w0 * (fctk_sup / 10.0) # e mostramos os resultados print("\nO fctk,sup é: {0} Mpa ({1} kN/cm2)".format(round(fctk_sup, 5), round(fctk_sup / 10.0, 5))) print("O módulo de resistência da seção W0 é: {0} cm3 ({1} m3)".format( round(w0, 5), round(w0 / 1000000.0, 5))) print("O momento mínimo Mdmin é: {0} kN.cm ({1} kN.m)".format( round(mdmin, 5), round(mdmin / 100.0, 5))) if __name__ == "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Informe o FCK do concreto em Mpa: 30 Informe a largura bw da viga em cm: 20 Informe a altura h da viga em cm: 50 O fctk,sup é: 3.76541 Mpa (0.37654 kN/cm2) O módulo de resistência da seção W0 é: 8333.33333 cm3 (0.00833 m3) O momento mínimo Mdmin é: 2510.2724 kN.cm (25.10272 kN.m) |
Java ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como ordenar um vetor de inteiros em ordem decrescente em JavaQuantidade de visualizações: 21106 vezes |
Nesta dica mostrarei como é possível ordenar um array (vetor) de ints em ordem decrescente usando o método sort() da classe Arrays e um método inverter() personalizado. É claro que há várias outras formas de se conseguir realizar esta tarefa. Espero que esta seja mais uma técnica adicionada ao seu arsenal. Veja o código Java completo: package arquivodecodigos; import java.util.*; public class Estudos{ public static void main(String[] args){ // vamos declarar e construir um vetor de 5 inteiros int[] valores = new int[5]; // inicializa os elementos do array valores[0] = 23; valores[1] = 65; valores[2] = 2; valores[3] = 87; valores[4] = 34; // ordena os valores Arrays.sort(valores); System.out.println("Ordenado em ordem crescente:"); for(int valor : valores){ System.out.print(valor + " "); } // vamos inverter o vetor agora inverter(valores); // exibe os valores dos elementos do array // usando o laço for melhorado System.out.println("\nOrdenado em ordem decrescente:"); for(int valor : valores){ System.out.print(valor + " "); } System.out.println("\n"); System.exit(0); } // método que recebe um array e inverte a ordem // de seus elementos public static void inverter(int[] b){ int esquerdo = 0; int direito = b.length-1; while (esquerdo < direito) { int temp = b[esquerdo]; b[esquerdo] = b[direito]; b[direito] = temp; esquerdo++; direito--; } } } Ao executar este código Java nós teremos o seguinte resultado: Ordenado em ordem crescente: 2 23 34 65 87 Ordenado em ordem decrescente: 87 65 34 23 2 |
Nossas 20 dicas & truques de programação mais populares |
C# - C# Windows Forms para iniciantes - Como limpar todo o conteúdo de um controle TextBox via código |
Você também poderá gostar das dicas e truques de programação abaixo |
Java - Como converter Metros Quadrados em Quilômetros Quadrados em Java - Java para Física e Engenharia C# - Como converter um tipo string para um tipo decimal em C# usando o método Parse() da classe Decimal |
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 |