Você está aqui: C++ ::: Dicas & Truques ::: Strings e Caracteres |
Como contar as ocorrências de uma substring em um string C++ usando a função find()Quantidade de visualizações: 327 vezes |
Em algumas situações nós precisamos retornar a quantidade de vezes que uma palavra (ou parte de uma palavra) é encontrada em uma frase ou texto, ou seja, as ocorrências de uma substring em uma string. Nesta dica eu mostro como isso pode ser feito usando a função find() do C++. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <string> #include <iostream> using namespace std; // função principal do programa int main(int argc, char *argv[]){ // vamos declarar duas strings string frase, palavra; // vamos pedir para o usuário informar uma frase cout << "Informe uma frase: "; getline(cin, frase); // vamos pedir para o usuário informar uma palavra cout << "Informe uma palavra: "; getline(cin, palavra); int quantidade = 0; // tentamos encontrar a primeira ocorrência int indice = frase.find(palavra, 0); while (indice != string::npos){ // aumentamos a quantidade de ocorrências quantidade++; // e pesquisamos novamente de onde paramos indice = frase.find(palavra, indice + palavra.size()); } // e mostramos o resultado cout << "Foram encontradas " << quantidade << " ocorrencias da palavra " << palavra << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este código C++ nós teremos o seguinte resultado: Informe uma frase: Gosto de Java, Java e mais Java Informe uma palavra: Java Foram encontradas 3 ocorrencias da palavra Java |
Link para compartilhar na Internet ou com seus amigos: |
Python ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular a equação reduzida da reta em Python dados dois pontos pertencentes à retaQuantidade de visualizações: 2524 vezes |
Nesta dica de Python veremos como calcular a equação reduzida da reta quando temos dois pontos pertencentes à esta reta. Não, nessa dica não vamos calcular a equação geral da reta, apenas a equação reduzida. Em outras dicas do site você encontra como como isso pode ser feito. Para relembrar: a equação reduzida da reta é y = mx + n, em que x e y são, respectivamente, a variável independente e a variável dependente; m é o coeficiente angular, e n é o coeficiente linear. Além disso, m e n são números reais. Com a equação reduzida da reta, é possível calcular quais são os pontos que pertencem a essa reta e quais não pertencem. Vamos começar então analisando a seguinte figura, na qual temos dois pontos que pertencem à uma reta: Note que a reta da figura passa pelos pontos A(5, 5) e B(9, 2). Então, uma vez que já temos os dois pontos, já podemos calcular a equação reduzida da reta. Veja o código Python completo para esta tarefa: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # método principal def main(): # vamos ler as coordenadas do primeiro ponto x1 = float(input("Coordenada x do primeiro ponto: ")) y1 = float(input("Coordenada y do primeiro ponto: ")) # vamos ler as coordenadas do segundo ponto x2 = float(input("Coordenada x do segundo ponto: ")) y2 = float(input("Coordenada y do segundo ponto: ")) sinal = "+" # vamos calcular o coeficiente angular da reta m = (y2 - y1) / (x2 - x1) # vamos calcular o coeficiente linear n = y1 - (m * x1) # coeficiente linear menor que zero? O sinal será negativo if (n < 0): sinal = "-" n = n * -1 # mostra a equação reduzida da reta print("Equação reduzida: y = %.2fx %s %.2f" % (m, sinal, n)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Coordenada x do primeiro ponto: 5 Coordenada y do primeiro ponto: 5 Coordenada x do segundo ponto: 9 Coordenada y do segundo ponto: 2 Equação reduzida: y = -0,75x + 8,75 Para testarmos se nossa equação reduzida da reta está realmente correta, considere o valor 3 para o eixo x da imagem acima. Ao efetuarmos o cálculo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- >> y = (-0.75 * 3) + 8.75 y = 6.5000 temos o valor 6.5 para o eixo y, o que faz com que o novo ponto caia exatamente em cima da reta considerada na imagem. |
JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como remover elementos duplicados de um array em JavaScript usando as funções filter() e indexOf() do objeto ArrayQuantidade de visualizações: 4617 vezes |
Em várias ocasições temos códigos JavaScript envolvendo arrays (vetores, matrizes) e gostaríamos de eliminar os valores duplicados, ou seja, retornar um novo vetor sem elementos repetidos. Para isso podemos usar os métodos filter() e indexOf(). Como pode ser visto em dicas nesta mesma seção, o método filter() é usado para retornar apenas os elementos do vetor que se encaixem em uma determinada condição. O método indexOf(), por sua vez, retorna o índice da primeira ocorrência do elemento no vetor. Assim, a combinação desses dois métodos é perfeita para esta situação, ainda que você consiga fazer de outras formas. Veja o trecho de código a seguir: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <script type="text/javascript"> function removerDuplicados(valor, indice, vetor){ // o índice desse elemento é o primeiro encontrado // no vetor? if(indice == vetor.indexOf(valor)){ return true; } return false; } var valores = new Array(6, 6, 1, 7, 3, 7, 1, 7, 4, 3, 5); // vamos obter um vetor sem repetições var novoVetor = valores.filter(removerDuplicados); // vamos mostrar o resultado window.alert(novoVetor); </script> Execute este código e veja que apenas os valores únicos serão retornados. Note agora como o mesmo código pode ser escrito de forma mais reduzida: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <script type="text/javascript"> var valores = new Array(8, 8, 1, 7, 3, 7, 1, 7, 8, 3, 5); // vamos obter um vetor sem repetições var novoVetor = valores.filter(function(val, ind, vet){ return vet.indexOf(val) == ind; }); // vamos mostrar o resultado window.alert(novoVetor); </script> |
Java ::: Estruturas de Dados ::: Pilhas |
Como criar uma pilha em Java usando um vetor (array) - Estruturas de Dados em JavaQuantidade de visualizações: 1936 vezes |
A Pilha é uma estrutura de dados do tipo LIFO - Last-In, First-Out (Último a entrar, primeiro a sair). Neste tipo de estrutura, o último elemento a ser inserido é o primeiro a ser removido. Veja a imagem a seguir: Embora seja mais comum a criação de uma estrutura de dados do tipo Pilha de forma dinâmica (usando ponteiros e referências), nesta dica eu mostrarei como podemos criá-la em Java usando um array, ou seja, um vetor. No exemplo eu usei inteiros, mas você pode modificar para o tipo de dados que você achar mais adequado. Veja o código completo para uma classe Pilha usando um vetor de ints. Veja que o tamanho do vetor é informado no construtor da classe. Note também a lógica empregada na construção dos métodos empilhar(), desempilhar() e imprimirPilha(): Código para Pilha.java: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; public class Pilha { private int elementos[]; // elementos na pilha private int topo; // o elemento no topo da pilha private int maximo; // a quantidade máxima de elementos na pilha // construtor da classe Pilha public Pilha(int tamanho) { // constrói o vetor this.elementos = new int[tamanho]; // define o topo como -1 this.topo = -1; // ajusta o tamanho da pilha para o valor recebido this.maximo = tamanho; } // método usado para empilhar um novo elemento na pilha public void empilhar(int item) { // a pilha já está cheia? if (this.topo == (this.maximo - 1)) { System.out.println("\nA pilha está cheia\n"); } else { // vamos inserir este elemento no topo da pilha this.elementos[++this.topo] = item; } } // méodo usado para desempilhar um elemento da pilha public int desempilhar() { // a pilha está vazia if (this.topo == -1) { System.out.println("\nA pilha está vazia\n"); return -1; } else { System.out.println("Elemento desempilhado: " + elementos[topo]); return this.elementos[this.topo--]; } } // método que permite imprimir o conteúdo da pilha public void imprimirPilha() { // pilha vazia if (this.topo == -1) { System.out.println("\nA pilha está vazia\n"); } else { // vamos percorrer todos os elementos da pilha for (int i = 0; i <= this.topo; i++) { System.out.println("Item[" + (i + 1) + "]: " + this.elementos[i]); } } } } Veja agora o código para a classe principal, ou seja, a classe Main usada para testar a funcionalidade da nossa pilha: Código para Principal.java: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; public class Estudos{ public static void main(String[] args){ // vamos criar uma nova pilha com capacidade para 5 elementos Pilha p = new Pilha(5); // vamos empilhar 3 elementos p.empilhar(34); p.empilhar(52); p.empilhar(18); // vamos mostrar os elementos na pilha System.out.println("Itens presentes na Pilha\n"); p.imprimirPilha(); // agora vamos remover e retornar dois elementos da pilha System.out.println(); p.desempilhar(); p.desempilhar(); // vamos mostrar os elementos na pilha novamente System.out.println("\nItens presentes na Pilha\n"); p.imprimirPilha(); } } Ao executar este código Java nós teremos o seguinte resultado: Itens presentes na Pilha Item[1]: 34 Item[2]: 52 Item[3]: 18 Elemento desempilhado: 18 Elemento desempilhado: 52 Itens presentes na Pilha Item[1]: 34 |
Java ::: Fundamentos da Linguagem ::: Modificadores |
Regras importantes sobre o uso de modificadores na linguagem JavaQuantidade de visualizações: 7427 vezes |
1) Uma declaração de método ou variável pode conter somente um destes modificadores de acesso: public, protected ou private. Na ausência de um destes, o acesso será de pacote. 2) Classes não podem ser declaradas abstract e final simultâneamente. 3) Métodos abstratos não podem ser declarados private, static, final, native, strictfp ou synchronized. 4) Métodos não podem ser declarados native e strictfp ao mesmo tempo. 5) Métodos abstract e native não possuem corpo. Ex: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- abstract void inserir(); native void obterDados(); 6) Uma classe que contenha métodos abstratos deve ser declarada como abstrata. 7) Membros final não podem ser volatile. |
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como comparar strings em C# usando o método Equals() da classe StringQuantidade de visualizações: 21415 vezes |
Em várias situações nós precisamos efetuar a comparação de strings (palavras, frase e textos) na linguagem C#. Para isso podemos usar o método Equals() da classe String. Este método retorna true se as duas strings forem idênticas e false em caso contrário. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- using System; namespace Estudos{ class Program{ static void Main(string[] args) { string frase1 = "gosto de java e c#"; string frase2 = "Gosto de Java e C#"; if (frase1.Equals(frase2)) Console.WriteLine("As duas strings são iguais"); else Console.WriteLine("As duas strings são diferentes"); Console.ReadKey(); } } } Ao executar este código nós teremos o seguinte resultado: As duas strings são diferentes. |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
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 |