Você está aqui: Cards de AutoCAD Civil 3D |
||
|
||
|
|
||
GoLang ::: Dicas & Truques ::: Strings e Caracteres |
Como retornar o tamanho de uma string em Golang usando os métodos len() e RuneCountInString()Quantidade de visualizações: 1252 vezes |
|
Em algumas situações nós precisamos obter e retornar o tamanho de uma string, ou seja, a quantidade de caracteres em uma palavra, frase ou texto. Para isso nós podemos duas funções na linguagem Go: len() e RuneCountInString(). O método len() retorna a quantidade de bytes contidos em uma string. Note, porém, que esta função não é recomendada quando estamos lidando com caracteres do conjunto utf8, que requerem dois bytes. Dessa forma, se estivermos certos de que a string não possui acentos ou caracteres especiais, então o método len() é o mais adequado. Veja um trecho de código Golang no qual pedimos para o usuário informar uma palavra ou frase e em seguida nós informamos a quantidade de caracteres contidos nela:
// pacote principal
package main
// vamos importar os módulos necessários
import (
"bufio"
"fmt"
"os"
"strings"
)
// esta é a função principal do programa
func main() {
// variáveis que vamos usar na resolução do problema
var frase string
var tamanho int
// vamos pedir para o usuário informar uma
// palavra ou frase
fmt.Print("Informe uma palavra ou frase: ")
var entrada = bufio.NewReader(os.Stdin)
frase, _ = entrada.ReadString('\n')
frase = strings.TrimSpace(frase)
// vamos obter o tamanho da string
tamanho = len(frase)
// e mostramos o resultado
fmt.Printf("A palavra ou frase contém %d caracteres",
tamanho)
}
Ao executarmos este código Go nós teremos o seguinte resultado: Informe uma palavra ou frase: Gosto de Python A palavra ou frase contém 15 caracteres Se contarmos a quantidade de caracteres na string informada, realmente veremos que o código retornou o resultado esperado. O problema acontece quando informamos uma palavra ou frase com acentos ou caracteres especiais. Experimente e veja que a função len() começa a retornar uma contagem estranha. Quando nossas strings possuem caracteres especiais ou com acentos, a função a ser usada é RuneCountInString(). Veja:
// pacote principal
package main
// vamos importar os módulos necessários
import (
"bufio"
"fmt"
"os"
"unicode/utf8"
"strings"
)
// esta é a função principal do programa
func main() {
// variáveis que vamos usar na resolução do problema
var frase string
var tamanho int
// vamos pedir para o usuário informar uma
// palavra ou frase
fmt.Print("Informe uma palavra ou frase: ")
var entrada = bufio.NewReader(os.Stdin)
frase, _ = entrada.ReadString('\n')
frase = strings.TrimSpace(frase)
// vamos obter o tamanho da string
tamanho = utf8.RuneCountInString(frase)
// e mostramos o resultado
fmt.Printf("A palavra ou frase contém %d caracteres",
tamanho)
}
Ao executarmos este novo código nós teremos o resultado: Informe uma palavra ou frase: Código A palavra ou frase contém 6 caracteres |
Python ::: Python para Engenharia ::: Unidades de Medida |
Como converter Centímetros Cúbicos em Metros Cúbicos em Python - Python para Física e EngenhariaQuantidade de visualizações: 614 vezes |
|
Em muitas situações nós temos uma medida de volume em cm3 e queremos transformá-la em m3, que é a medida de volume do Sistema Internacional (SI). Para isso só precisamos dividir os centímetros cúbicos por 1.000.000. Veja a fórmula: \[\text{Metros Cúbicos} = \frac{\text{Centímetros Cúbidos}}{1.000.000} \] Agora veja o código Python que pede para o usuário informar a medida de volume em centímetros cúbicos e a converte para metros cúbicos. Note que mostrei como exibir o resultado em notação científica e sem notação científica:
# função principal do programa
def main():
# vamos ler a medida em centímetros cúbicos
cent_cubicos = float(input("Informe os centímetros cúbicos: "))
# agora calculamos os metros cúbicos
met_cubicos = cent_cubicos / 1000000.00
# e mostramos o resultado
print("Você informou {0} centímetros cúbicos.".format(cent_cubicos))
print("Isso equivale a {0} metros cúbicos.".format(met_cubicos))
print(f"Sem notação científica: {met_cubicos:.6f}")
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: Informe os centímetros cúbicos: 35 Você informou 35.0 centímetros cúbicos. Isso equivale a 3.5E-5 metros cúbicos. Sem notação científica: 0,000035 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos |
Exercícios Resolvidos de Java - Programação Orientada a Objetos - Uma classe Temperatura que converte graus Celsius em Fahrenheit e vice-versaQuantidade de visualizações: 8640 vezes |
|
Exercício Resolvido de Java - POO - Programação Orientada a Objetos - Uma classe Temperatura que converte graus Celsius em Fahrenheit e vice-versa Pergunta/Tarefa: Escreva uma classe Java chamada Temperatura que converterá graus Celsius em Fahrenheit e vice-versa. Esta classe não possuirá nenhuma variável, nem de instância nem de classe, somente dois métodos, que deverão ter as seguintes assinaturas: double celsiusParaFahrenheit(double) double fahrenheitParaCelsius(double) Para facilitar a resolução, seguem abaixo as regras de conversão: Celsius para Fahrenheit: F = (1,8 x C) + 32 Fahrenheit para Celsius: C = (F - 32) / 1,8 Depois de escrever a classe Temperatura, use o método main() da classe principal da aplicação Java para testar suas funcionalides. Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console: Código para a classe Temperatura.java:
package arquivodecodigos;
public class Temperatura {
// converte de Celsius para Fahrenheit
public double celsiusParaFahrenheit(double c){
double f = (1.8 * c) + 32;
return f;
}
// converte de Fahrenheit para Celsius
public double fahrenheitParaCelsius(double f){
double c = (f - 32) / 1.8;
return c;
}
}
Código para a classe Principal.java:
package arquivodecodigos;
import java.util.Scanner;
public class Principal{
public static void main(String args[]){
// vamos criar um objeto da classe Temperatura
Temperatura t = new Temperatura();
// vamos fazer a leitura do usuário
Scanner entrada = new Scanner(System.in);
// primeiro de Celsius para Fahrenheit
System.out.print("Informe o grau em Celsius: ");
double celsius = Double.parseDouble(entrada.nextLine());
System.out.println(celsius + " graus Celsius equivale a " +
t.celsiusParaFahrenheit(celsius) + " graus Fahrenheit.");
// agora de Fahrenheit para Celsius
System.out.print("Informe o grau em Fahrenheit: ");
double fahrenheit = Double.parseDouble(entrada.nextLine());
System.out.println(celsius + " graus Fahrenheit equivale a " +
t.fahrenheitParaCelsius(fahrenheit) + " graus Celsius.");
}
}
|
Java ::: Dicas & Truques ::: Expressões Regulares |
Java Expressões Regulares - Como substituir todas as ocorrências de uma substring em uma string usando expressões regularesQuantidade de visualizações: 9603 vezes |
|
Este exemplo mostra como substituir todas as ocorrências de uma substring em uma string usando expressões regulares na linguagem Java. Nesta dica nós substituimos todas as ocorrências de "Java" por "C++". Veja o código completo:
package arquivodecodigos;
import java.util.regex.*;
public class Estudos{
public static void main(String args[]){
String padrao = "Java";
Pattern regPat = Pattern.compile(padrao);
String frase = "Java? Gosto muito de Java.";
System.out.println("Frase original: " + frase);
Matcher matcher = regPat.matcher(frase);
String res = matcher.replaceAll("C++");
System.out.println("Depois da substituição: " + res);
}
}
Ao executarmos este código Java nós teremos o seguinte resultado: Frase original: Java? Gosto muito de Java. Depois da substituição: C++? Gosto muito de C++. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções |
Exercício Resolvido de Java - Um método Java chamado calcular(int a, int b) que recebe duas variáveis do tipo int e multiplica um valor pelo outro. Em seguidaQuantidade de visualizações: 1041 vezes |
|
Pergunta/Tarefa: Escreva um método Java chamado calcular(int a, int b) que recebe duas variáveis do tipo int e multiplica um valor pelo outro. Em seguida o método deverá dividir o resultado, ou seja, o produto, por 2, e, finalmente, retornar o resto de uma divisão inteira desse resultado pelo número 7. Sua saída deverá ser parecida com: Informe o primeiro valor inteiro: 18 Informe o segundo valor inteiro: 19 O resultado é: 3 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[]){
// vamos usar a classe Scanner para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos pedir para o usuário informar dois números inteiros
System.out.print("Informe o primeiro valor inteiro: ");
int a = Integer.parseInt(entrada.nextLine());
System.out.print("Informe o segundo valor inteiro: ");
int b = Integer.parseInt(entrada.nextLine());
// vamos obter o resultado de uma chamada à função calcular()
int resultado = calcular(a, b);
System.out.println("O resultado é: " + resultado);
}
public static int calcular(int a, int b){
// primeiro multiplicamos as duas variáveis
int produto = a * b;
// agora dividimos o produto por 2
int temp = produto / 2;
// agora obtemos o módulo do resultado por 7
int resultado = temp % 7;
// e retornamos o valor calculado
return resultado;
}
}
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







