Você está aqui: C# ::: Dicas & Truques ::: Strings e Caracteres |
|
Como separar uma frase em palavras em C# usando o método Split() da classe StringQuantidade de visualizações: 1383 vezes |
|
Em algumas situações nós precisamos quebrar uma string, ou seja, separar uma frase ou texto em suas partes (geralmente palavras). Para isso nós podemos usar a função Split() da classe String da linguagem C#. Veja um trecho de código no qual declaramos uma frase e usamos o espaço como delimitador para separar a frase em palavras, retornando um vetor: using System; namespace Estudos { class Program { static void Main(string[] args) { string frase = "Comprei quatro livros muito interessantes"; Console.WriteLine("Frase inteira: " + frase); // vamos quebrar a string usando o espaço como delimitador string[] vetorPalavras = frase.Split(' '); // agora varremos o vetor de palavras foreach (string palavra in vetorPalavras) { Console.WriteLine(palavra); } Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: Frase inteira: Comprei quatro livros muito interessantes Comprei quatro livros muito interessantes |
|
Link para compartilhar na Internet ou com seus amigos: | |
C++ ::: Dicas & Truques ::: Recursão (Recursividade) |
Como calcular potência em C++ usando uma função recursivaQuantidade de visualizações: 18846 vezes |
Nesta dica mostrarei como podemos efetuar cálculo de potência em C++ usando recursividade, ou seja, uma função que chama a si mesma repetidamente, até que o caso base (condição de parada) seja alcançado. Veja que informaremos a base e o expoente e a função nos retornará a potência da base informada. Veja o código C++ completo para o exemplo: #include <iostream> using namespace std; // função recursiva que calcula a potência de // um inteiro int potencia(int base, int expoente){ // caso base if(expoente == 0){ return 1; } // efetua mais uma chamada recursiva else{ return base * potencia(base, expoente - 1); } } // função principal do programa int main(int argc, char *argv[]){ int base = 3; int expoente = 4; cout << base << " elevado a " << expoente << " = " << potencia(base, expoente) << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este código C++ nós teremos o seguinte resultado: 3 elevado a 4 = 81 |
Delphi ::: Classes, Controles e Componentes ::: TRegistry (Registro do Windows) |
Como criar chaves no registro do Windows usando o método CreateKey() da classe TRegistry do DelphiQuantidade de visualizações: 14672 vezes |
Em algumas situações gostariámos de criar novas chaves e/ou sub-chaves no registro do Windows. Isso pode ser feito por meio do método CreateKey() da classe TRegistry. Este método recebe uma string especificando o nome da chave a ser criada e retorna um valor Boolean indicando se a chave foi criada com sucesso. Veja um trecho de código no qual criamos uma chave chamada "Arquivo de Códigos" dentro da chave raiz HKEY_CURRENT_USER: procedure TForm3.Button4Click(Sender: TObject); var chave: String; reg: TRegistry; begin // uses Registry // vamos definir o nome da chave a ser criada chave := 'Arquivo de Códigos'; // vamos criar uma instância da classe TRegistry reg := TRegistry.Create; // a chave raiz padrão é HKEY_CURRENT_USER mas, por via das dúvidas // vamos reafirmar isso reg.RootKey := HKEY_CURRENT_USER; // vamos criar a chave informada if reg.CreateKey(chave) then begin ShowMessage('A chave foi criada com sucesso.'); end else begin ShowMessage('Não foi possível criar a chave informada.'); end; // vamos liberar o registro reg.Free; end; Alguns aplicativos, por exemplo os da Adobe, Macromedia, Microsoft, etc, guardar informações relacionadas aos seus aplicativos na sub-chave SOFTWARE dentro da chave HKEY_LOCAL_MACHINE. Assim, vamos criar uma chave para um aplicativo fictício. Vamos chamar nossa chave de "Simulador Nota Fiscal Eletrônica 1.0". Note que, se esta chave já existir no registro nada acontecerá: procedure TForm3.Button4Click(Sender: TObject); var chave: String; reg: TRegistry; begin // uses Registry // vamos definir o nome da chave a ser criada chave := 'Simulador Nota Fiscal Eletrônica 1.0'; // vamos criar uma instância da classe TRegistry reg := TRegistry.Create; // vamos criar uma chave dentro de HKEY_LOCAL_MACHINE\SOFTWARE reg.RootKey := HKEY_LOCAL_MACHINE; // vamos criar a chave informada if reg.CreateKey('\SOFTWARE\' + chave) then begin ShowMessage('A chave foi criada com sucesso.'); end else begin ShowMessage('Não foi possível criar a chave informada.'); end; // vamos liberar o registro reg.Free; end; Execute este código e logo em seguida abra uma janela de terminal e digite regedit.exe. vá na seção HKEY_LOCAL_MACHINE\SOFTWARE e veja se a chave "Simulador Nota Fiscal Eletrônica 1.0" foi realmente criada. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Java ::: Dicas & Truques ::: Data e Hora |
Como usar a classe GregorianCalendar do Java em suas aplicaçõesQuantidade de visualizações: 13319 vezes |
[Baseado na documentação Java] - A classe GregorianCalendar (do pacote java.util) é uma classe concreta derivada de Calendar que fornece o sistema de calendário padrão usado em praticamente todos os países. Veja sua posição na hierarquia de classes Java:java.lang.Object java.util.Calendar java.util.GregorianCalendar As interfaces implementadas por esta classe são Serializable, Cloneable e Comparable<Calendar>.[br][br] A classe GregorianCalendar é um calendário híbrido que suporta tanto o sistema de calendário juliano (Julian) quanto o gregoriano (Gregorian), com suporte para uma única descontinuidade, a qual corresponde por padrão à data gregoriana quando o calendário gregoriano foi instituido (15 de outubro de 1582 em alguns países, mais tarde em outros). Esta data pode ser alterada por meio de uma chamada ao método setGregorianChange(). Veja um trecho de código no qual criamos uma instância da classe GregorianCalendar usando a data e hora atual, o fuso horário (time zone) e localização (locale) padrão: import java.util.*; public class Estudos{ public static void main(String args[]){ Calendar agora = new GregorianCalendar(); System.out.println(agora.toString()); } } Observe como instanciamos um objeto da classe GregorianCalendar e o tratamos como um objeto da classe Calendar. Esta forma de referenciar um objeto da classe derivada a partir de uma interface ou superclasse é muito comum em Java. |
Java ::: Coleções (Collections) ::: Set (Conjunto) |
Como usar objetos da interface Set do Java para representar a interseção (ou intersecção) de dois ou mais conjuntosQuantidade de visualizações: 4268 vezes |
Na teoria dos conjuntos, a interseção (português brasileiro) ou intersecção (português europeu) de dois ou mais conjuntos é o conjunto dos elementos que, simultaneamente, pertencem a dois ou mais destes conjuntos. Assim, seja A = {2, 5, 8, 19, 30} e B = {2, 3, 1, 30}. A interseção desses dois conjuntos é C = {2, 30}. Na programação Java podemos representar a interseção de dois conjuntos usando objetos da interface Set e qualquer uma de suas implementações. Para este exemplo vou usar a classe TreeSet, que permite a ordenação dos elementos. Veja o código: package estudos; import java.util.Iterator; import java.util.Set; import java.util.TreeSet; public class Estudos{ public static void main(String[] args) { // primeiro conjunto Set<Integer> conjuntoA = new TreeSet<>(); conjuntoA.add(2); conjuntoA.add(5); conjuntoA.add(8); conjuntoA.add(19); conjuntoA.add(30); // segundo conjunto Set<Integer> conjuntoB = new TreeSet<>(); conjuntoB.add(2); conjuntoB.add(3); conjuntoB.add(1); conjuntoB.add(30); // vamos obter a interseção dos dois conjuntos Set<Integer> conjuntoC = intersecao(conjuntoA, conjuntoB); // vamos exibir os elementos no conjunto C Iterator iterator = conjuntoC.iterator(); while(iterator.hasNext()){ System.out.println(iterator.next()); } } // método genérico que permite obter a interseção de dois conjuntos public static <T> Set<T> intersecao(Set<T> conjA, Set<T> conjB){ Set<T> conjC = new TreeSet<>(); // percorremos todos os elementos do conjunto A for(T elemento: conjA){ // e verificamos se o elemento está contido no conjunto B if(conjB.contains(elemento)){ conjC.add(elemento); // se estiver contido nós o adicionamos no conjunto C } } return conjC; // e retornamos o conjunto C } } Ao executarmos este código teremos o seguinte resultado: 2 30 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços |
Exercícios Resolvidos de Java - Um laço for que pede que o usuário informe 10 valores inteiros e mostra a quantidade de valores pares informadosQuantidade de visualizações: 10387 vezes |
Pergunta/Tarefa: Escreva um programa Java console que usa o laço for para solicitar que o usuário digite 10 valores inteiros. Em seguida seu programa deverá contar quantos valores pares foram informados. Dica: Use um objeto da classe Scanner para obter a entrada do usuário. Resposta/Solução: A resolução deste exercício envolve a criação de uma variável contador, do tipo int, e que deverá ser inicializada com o valor 0. Veja: int contador = 0; // guardará a quantidade de valores pares lidos 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 contador = 0; // guardará a quantidade de valores pares lidos // 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()); // vamos verificar se o valor lido é par if(valor % 2 == 0){ contador++; } } // vamos exibir a quantidade de números pares lidos System.out.println("\nVocê informou " + contador + " valores pares.\n"); } |
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 |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |