Java ::: Dicas & Truques ::: Strings e Caracteres

Como usar o método startsWith() da classe String do Java para verificar se uma string começa com uma substring - Como testar o conteúdo no início de uma string

Quantidade de visualizações: 265 vezes
Em algumas situações gostaríamos de verificar se uma palavra, frase ou texto começa com uma determinada substring. Para isso podemos usar o método startsWith() da classe String da linguagem Java.

Veja um código completo no qual verificamos se um endereço de um site na internet começa com "https":

package arquivodecodigos;

public class Estudos{
  public static void main(String[] args){
    String site = "https://www.arquivodecodigos.com.br";
     
    if(site.startsWith("https")){
      System.out.println("Este site parece ser seguro.");
    }
    else{
      System.out.println("Este site não parece ser seguro.");  
    }
     
    System.exit(0);
  }
}  

Ao executarmos este código nós teremos o seguinte resultado:

Este site parece ser seguro.


Python ::: Fundamentos da Linguagem ::: Passos Iniciais

Como usar os argumentos padrões das funções em Python

Quantidade de visualizações: 7370 vezes
Geralmente quando efetuamos chamadas às funções, nosso código fica responsável por fornecer os valores para os argumentos da função. Em Python é possível termos argumentos padrões, e tais argumentos já podem ter um valor pré-definido. Desta forma, a passagem dos parâmetros se torna opcional. Veja um exemplo:

# função com argumento padrão
def erro(msg = "Houve um erro."):
  print msg

# chamada à função fornecendo o argumento
erro("Erro desconhecido.")

# chamada à função sem fornecer o argumento
erro()

Veja mais um exemplo:

# função com argumentos padrões
def volume(comprimento = 1, largura = 1, altura = 1):
  return (comprimento * largura * altura)

# chamada à função fornecendo um argumento
print volume(3)

# chamada à função fornecendo dois argumentos
print volume(4, 5)

# chamada à função fornecendo três argumentos
print volume(4, 5, 7)

# chamada à função fornecendo nenhum argumento
print volume()

É importante observar que os argumentos padrões devem estar sempre à direita dos demais argumentos. Falhar em cumprir esta exigência pode causar um erro do tipo:

SyntaxError: non-default argument follows default argument


Java ::: Dicas & Truques ::: Programação Orientada a Objetos

Como usar construtores em suas classes Java - Programação orientada a objetos em Java - Métodos construtores - Revisado

Quantidade de visualizações: 19949 vezes
Muitas vezes precisamos inicializar propriedades de um objeto de uma classe Java no momento em que este é criado. Para isso podemos usar um método construtor. Um método construtor, que em Java é definido por um método com o mesmo nome da classe, é chamado no exato momento em que efetuamos uma chamada a new.

Veja um exemplo no qual exibimos uma mensagem alertando que um objeto de uma classe acaba de ser criado:

class Pessoa{ 
  public Pessoa(){
    System.out.println("Fui criado.");
  }
}
 
public class Estudos{ 
  public static void main(String args[]){ 
    // cria um objeto da classe Pessoa
    Pessoa p = new Pessoa();
  } 
}

Execute este código e veja o resultado. Note que um construtor deve, exceto em raríssimas ocasiões, ser marcado com o modificador public. Além disso, um construtor não possui retorno e só se torna realmente útil quando o usamos para inicializar as propriedades do objeto recém-criado. Veja:

class Pessoa{ 
  public String nome;
 
  public Pessoa(String nome){
    this.nome = nome;
  }
}
 
public class Estudos{ 
  public static void main(String args[]){ 
    // cria um objeto da classe Pessoa
    Pessoa p = new Pessoa("Osmar J. Silva");
    System.out.println(p.nome);
  } 
}

Aqui nós fornecemos o valor para a propriedade nome na mesma instrução que cria a instância da classe.

Quando não definimos um método construtor, o compilador Java o faz nos bastidores. Mas isso só ocorre quando não definimos o nosso próprio método construtor, seja ele com ou sem parâmetros.


Python ::: Python para Engenharia ::: Engenharia Civil - Concreto, Concreto Armado e Concretos Especiais

Como calcular a Resistência à Tração do Concreto usando Python - Python para Engenharia Civil e Cálculo Estrutural

Quantidade de visualizações: 146 vezes
A resistência à tração do concreto é a capacidade máxima de tensão de tração que o material pode suportar antes de se romper. Ela é menor que a resistência à compressão do concreto, podendo representar cerca de 10% dela.

O concreto pode falhar rapidamente quando submetido a força de tração, como dobramento ou alongamento. Isso acontece porque o concreto é composto por agregados e pasta de cimento, e sua estrutura nunca é completamente homogênea.

A resistência à tração direta do concreto é muito útil na determinação da armadura de tração mínima em uma viga de concreto armado, e usada também nos cálculos estruturais em geral (ABNT NBR 6118).

Assim, a resistência à tração média do concreto pode ser calculada pela seguinte fórmula:

\[f_\text{ctk,m} = 0,3 \cdot \sqrt[3]{{f_\text{ck}}^2}\]
Onde:

fctk,m é a resistência à tração média do concreto em Mpa;

fck é a resistência à compressão do concreto em Mpa.

Note que, uma vez obtida a resistência à tração média do concreto (que é um método estatístico), podemos obter seus limites inferior e superior usando as seguintes fórmulas:

\[f_\text{ctk,inf} = 0,7 \cdot f_\text{ctk,m}\]\[f_\text{ctk,sup} = 1,3 \cdot f_\text{ctk,m}\]
Veja agora o código Python que pede para o usuário informar o FCK do concreto e calcula o fctk,m, fctk,inf e fctk,sup:

# 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: "))

  # 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 inferior
  fctk_inf = 0.7 * fctk_m

  # vamos calcular o limite superior
  fctk_sup = 1.3 * fctk_m

  # e mostramos os resultados
  print("\nO fctk,m é: {0} Mpa ({1} kN/cm2)".format(round(fctk_m, 5),
    round(fctk_m / 10.0, 5)))
  print("O fctk,inf é: {0} Mpa ({1} kN/cm2)".format(round(fctk_inf, 5),
    round(fctk_inf / 10.0, 5)))
  print("O fctk,sup é: {0} Mpa ({1} kN/cm2)".format(round(fctk_sup, 5),
    round(fctk_sup / 10.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

O fctk,m é: 2.89647 Mpa (0.28965 kN/cm2)
O fctk,inf é: 2.02753 Mpa (0.20275 kN/cm2)
O fctk,sup é: 3.76541 Mpa (0.37654 kN/cm2)


C ::: Dicas & Truques ::: Strings e Caracteres

Como escrever uma função is_numeric() em C que verifica se uma string contém apenas dígitos de 0 a 9

Quantidade de visualizações: 10081 vezes
Em algumas situações precisamos verificar se uma string contém apenas dígitos de 0 a 9, ou seja, é um valor numérico inteiro válido. Para isso podemos usar a função personalizada em C que mostro nesta dica. Veja que o segredo é passar todos os caracteres individualmente para a função isdigit(). Veja o código:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>

// função personalizada que permite verificar se uma
// string contém apenas dígitos de 0 a 9
int is_numeric(const char *str){
  int res = 1; // passou no teste

  // vamos percorrer todos os caracteres da string
  // e testar se cada um é um dígito. Se não
  // for nós marcamos res como 0 e retornamos
  while(*str){
    if(!isdigit(*str)){
      res = 0;
      break;
    }

    // vamos passar para o próximo caractere
    str++;
  }

  return res;
}

int main(int argc, char *argv[]){
  char valor[20]; // vamos guardar o valor digitado aqui

  // vamos ler o valor informado pelo usuário
  printf("Digite qualquer coisa e tecle ENTER: ");
  gets(valor);

  // vamos verificar se o usuário informou uma string
  // que contém apenas dígitos de 0 a 9
  if(is_numeric(valor))
    printf("Voce informou uma string numerica");
  else
    printf("Voce NAO informou uma string numerica");

  puts("\n\n");
  system("PAUSE");
  return 0;
}

E, antes que perguntem como é possível verificar se a string contém um valor fracionário válido, a seguinte alteração pode ser feita:

int is_numeric(const char *str){
  int res = 1; // passou no teste

  // vamos percorrer todos os caracteres da string
  // e testar se cada um é um dígito ou uma vírgula. Se não
  // for nós marcamos res como 0 e retornamos
  while(*str){
    if((!isdigit(*str)) and (*str != ',')){
      res = 0;
      break;
    }

    // vamos passar para o próximo caractere
    str++;
  }

  return res;
}



JavaScript ::: Dicas & Truques ::: Strings e Caracteres

Como retornar o tamanho de uma string em JavaScript usando a propriedade length do objeto String

Quantidade de visualizações: 210 vezes
Em várias situações nós precisamos obter a quantidade de caracteres, ou seja, o tamanho de uma palavra, frase ou texto em JavaScript. Para isso nós podemos usar a propriedade length do objeto String.

A propriedade length do objeto String da linguagem JavaScript nos retorna um valor inteiro representando a quantidade de caracteres na string, incluindo espaços em branco e pontuações.

Veja o código JavaScript completo para o exemplo:

<!doctype html>
<html>
<head>
  <title>Estudos JavaScript</title>
</head>
<body>

<script type="text/javascript">
  // vamos declarar uma nova string
  var frase = "JavaScript é bom demais";
  
  // agora vamos obter o tamanho da string
  var tam = frase.length;
  
  // e mostramos o resultado
  window.alert("Esta string possui " + tam 
    + " caracteres.");
</script>
  
</body>
</html>

Ao abrir esta página HTML no navegador nós teremos uma mensagem window.alert() com o seguinte conteúdo:

Esta string possui 23 caracteres.


Delphi ::: Dicas & Truques ::: Data e Hora

Como obter a quantidade de dias para um determinado ano usando a função DaysInAYear() do Delphi

Quantidade de visualizações: 11510 vezes
Quando estamos trabalhando com datas, geralmente precisamos saber a quantidade de dias que um determinado ano possui, ou seja, alguns anos possuem 365 dias, outros possuem 366. A unit DateUtils possui uma função chamada DaysInAYear() que serve para este propósito. Ela aceita um inteiro representando o ano desejado e retorna um inteiro representando a quantidade de dias que tal ano possui. Veja o exemplo:

procedure TForm1.Button1Click(Sender: TObject);
var
  ano, dias_ano: Integer;
begin
  ano := 2010;

  // vamos obter a quantidade de dias para o
  // ano de 2010
  dias_ano := DaysInAYear(ano);

  // exibe o resultado
  ShowMessage('O ano informado contém ' + IntToStr(dias_ano) +
    ' dias');
end;

Este trecho de código nos informará que o ano de 2010 possui 365 dias. Note que o argumento para a função DaysInAYear() deve estar entre 1 e 9999 (inclusive).

Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009.


Python ::: wxPython ::: Controles Visuais Básicos do wxPython

Como usar a classe wx.Button para criar botões em suas aplicações wxPython

Quantidade de visualizações: 7087 vezes
Botões são os controles mais frequentes em interfaces do usuário (GUI) e o wxPython nos fornece a classe wx.Button, usada para criar botões padrões. Veja a posição desta classe na hierarquia wxPython:

wxObject
  wxEvtHandler
    wxWindow
      wxControl
        wxButton

Botões são geralmente colocados em caixas de diálogo e painéis. Vamos começar entendendo o construtor da classe wx.Button:

wx.Button(parent, id, label, pos, size=wxDefaultSize, 
  style=0, validator, name="button")

Este construtor segue a mesma ordem e estilo do construtor C++. Veja:

wxButton(wxWindow* parent, wxWindowID id, 
  const wxString& label = wxEmptyString, 
  const wxPoint& pos = wxDefaultPosition, const 
  wxSize& size = wxDefaultSize, long style = 0, 
  const wxValidator& validator = wxDefaultValidator,
  const wxString& name = "button")

Como podemos observar, vários parâmetros possuem valores padrões e, portanto, podem ser omitidos no momento da criação do componente. Veja um exemplo de como criar um wx.Button:

# Cria um botão e o adiciona no painel
btn = wx.Button(panel, label="Clique Aqui", 
  pos=(10, 10), size=(100, 25))

panel é uma referência a um wx.Panel, ou seja, o painel de conteúdo no qual o botão será anexado. Fornecer um componente pai do tipo painel (ou qualquer outro componente visível) é necessário para que o componente também seja visível na janela.


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 hexadecimal

Quantidade de visualizações: 10647 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


C ::: Dicas & Truques ::: Struct (Estruturas, Registros)

Como alocar memória para instâncias de uma estrutura (struct) e acessá-las usando ponteiros em C

Quantidade de visualizações: 11458 vezes
Esta dica mostra como declarar uma estrutura (struct), alocar duas instâncias desta e acessá-las usando ponteiros.

Considere a seguinte struct:

// define a estrutura Livro
struct Livro{
  char titulo[80];
  int codigo;
  int paginas;
};

Note que agora a variável titulo foi declarada como uma matriz de caracteres de 80 posições. Mais adiante você entenderá o propósito de tal abordagem. Veja agora como alocamos memória para duas instâncias desta estrutura:

// cria dois ponteiros para duas instâncias (recém-alocadas)
// de Livro
Livro *a = (struct Livro*)malloc(sizeof(struct Livro));
Livro *b = (struct Livro*)malloc(sizeof(struct Livro));

A partir deste ponto as variáveis a e b são ponteiros para as duas instâncias recém alocadas. Observe que, quando usamos ponteiros para estruturas, seus membros são acessados usando-se a notação -> em vez do ponto. Veja:

a->codigo = 342;
a->paginas = 230;

Para definir o valor para o membro titulo é preciso lançar mão da função strcpy(). Isso é feito porque estamos lidando com ponteiros, e cada instância de Livro possui sua área de memória a partir da qual a posição inicial da cadeia de caracteres que receberá o título do livro já foi inicializada. Veja:

strcpy(a->titulo, "Programando em Java");

Observe agora o código completo para o exemplo:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

// define a estrutura Livro
struct Livro{
  char titulo[80];
  int codigo;
  int paginas;
};

int main(int argc, char *argv[]){
  // cria dois ponteiros para duas instâncias (recém-alocadas)
  // de Livro
  Livro *a = (struct Livro*)malloc(sizeof(struct Livro));
  Livro *b = (struct Livro*)malloc(sizeof(struct Livro));

  // preenche os dados do primeiro Livro
  // Estamos usando ponteiros agora. Para definir o título
  // do livro é preciso usar a função strcpy, já que estamos
  // usando uma cadeia de caracteres
  strcpy(a->titulo, "Programando em Java");
  a->codigo = 342;
  a->paginas = 230;

  // preenche os dados do segundo Livro
  strcpy(b->titulo, "JavaScript - O Guia Prático");
  b->codigo = 675;
  b->paginas = 930;

  // exibe os dados do primeiro livro
  printf("Primeiro Livro\nTitulo: %s\nCodigo: %d\nPaginas: %d\n",
    a->titulo, a->codigo, a->paginas);

  // exibe os dados do segundo livro
  printf("\nSegundo Livro\nTitulo: %s\nCodigo: %d\nPaginas: %d\n",
    b->titulo, b->codigo, b->paginas);

  puts("\n\n");
  system("PAUSE");
  return 0;
}


Carregar Publicações Anteriores


Nossas 20 dicas & truques de programação mais populares

Você também poderá gostar das dicas e truques de programação abaixo

Nossas 20 dicas & truques de programação mais recentes

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 30 usuários muito felizes estudando em nosso site.