C++ ::: Dicas & Truques ::: Strings e Caracteres |
Como acessar os caracteres de uma string C++ individualmente usando um iteradorQuantidade de visualizações: 11174 vezes |
Nesta dica mostrarei como podemos usar um iterador para percorrer todos os caracteres de uma palavra, frase ou texto em C++. Para isso nós vamos combinar um iterator e as funções begin() e end(). Veja o código C++ completo para o exemplo: #include <string> #include <iostream> using namespace std; // função principal do programa C++ int main(int argc, char *argv[]){ // vamos declarar um objeto da classe string string palavra("FACULDADE"); // agora criamos um iterador para a string string::iterator it; // e usamos um laço for para percorrer o iterador // do início ao fim for(it = palavra.begin(); it < palavra.end(); it++){ // e mostramos os caracteres individuais cout << *it << "\n"; } cout << "\n" << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este código C++ nós teremos o seguinte resultado: F A C U L D A D E |
Ruby ::: Dicas & Truques ::: Strings e Caracteres |
Como remover todos os espaços de uma string em Ruby usando a função deleteQuantidade de visualizações: 9155 vezes |
Em alguns casos, pode ser necessário removermos todos os espaços de uma frase ou texto em Ruby. Isso pode ser feito com o auxílio do método delete() da classe String. Veja o exemplo a seguir: # declara e inicializa uma variável string frase = "Gosto muito de Ruby" puts "A frase original é: " + frase # vamos remover todos os espaços # veja que estamos alterando a string original frase.delete!(" ") puts "Com os espaços removidos: " + frase Ao executarmos este código Ruby nós teremos o seguinte resultado: A frase original é: Gosto muito de Ruby Com os espaços removidos: GostomuitodeRuby |
Python ::: Python Turtle ::: Formulários e Janelas |
Como definir o título da janela do Python Turtle usando a função title()Quantidade de visualizações: 1349 vezes |
A função title() do Turtle é muito útil quando queremos definir o título da nossa aplicação Python Turtle. Tudo que temos a fazer é efetuar uma chamada a essa função fornecendo o título que queremos que seja exibido na barra de títulos. Veja o código Python Turtle para o exemplo: # vamos importar o módulo Turtle import turtle # método principal def main(): # vamos criar a tela gráfica tela = turtle.Screen() # vamos definir o título da janela tela.title("Meu programa Python Turtle") # vamos definir o tamanho da janela tela.setup(600, 450) # entramos no loop de eventos tela.mainloop() if __name__== "__main__": main() Note que não é possível usar a função title() para retornar o título da janela. Caso você queira fazer isso, é melhor usar uma variável para guardar o título da janela e manipulá-la durante a execução do programa. |
JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como testar se todos os elementos de um array satisfazem uma condição em JavaScript usando a função every()Quantidade de visualizações: 1538 vezes |
Em algumas situações nós gostaríamos de testar todos os elementos de um vetor e verificar se todos eles passam em um determinado teste. Para isso podemos usar a função every(), adicionada à linguagem JavaScript por meio do ECMAScript 5 (JavaScript 5, ECMAScript 2009, ES5). Este método nos permite fornecer uma função de callback que será chamada para cada um dos elementos do vetor. E o retorno do método every() é um valor true se todos os elementos passarem no teste e false em caso contrário. Veja um exemplo no qual testamos se TODOS os elementos de um vetor são maiores que 10: <script type="text/javascript"> function testarTodos(valor, indice, vetor){ if(valor > 10){ return true; } } var valores = new Array(21, 50, 30, 70, 12, 3); // vamos verificar se TODOS os valores são // maiores que 10 var res = valores.every(testarTodos); window.alert("Todos passaram no teste: " + res); </script> Aqui o resultado será false, pois o valor 3 não passou no teste. É importante observar que, assim que a função de callback retorna false pela primeira vez, o método every() já abandona sua execução. Uma função passada para o método every() pode conter os seguintes argumentos (nessa mesma ordem): a) O valor do item; b) O índice do item (opcional); c) O vetor a partir do qual o método every() está sendo chamado (opcional). Como última observação, o método every() não modifica o array original. |
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como remover todos os espaços de uma string em C# usando o método Replace() da classe String - Apostila C# para iniciantesQuantidade de visualizações: 13972 vezes |
Nesta dica mostrarei como tirar proveito do método Replace() da classe String do C# para remover todos os espaços de uma frase ou texto. Note que, usando esta técnica, todos os espaços serão removidos, tanto no início, quanto no meio ou fim da string. Veja o código completo para o exemplo: using System; namespace Estudos{ class Program{ static void Main(string[] args) { string frase = "Gosto muito de C#"; Console.WriteLine("Com espaços: " + frase); // remove todos os espaços frase = frase.Replace(" ", ""); Console.WriteLine("Sem espaços: " + frase); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código nós teremos o seguinte resultado: Com espaços: Gosto muito de C# Sem espaços: GostomuitodeC# |
Python ::: Dicas & Truques ::: Data e Hora |
Datas e horas em Python - Como obter o nome do dia da semana no formato longo (segunda-feira, terça-feira, etc) usando a função strftime() do PythonQuantidade de visualizações: 8919 vezes |
Nesta dica eu mostro como podemos usar a função strftime() da linguagem Python para obter e exibir o nome do dia da semana no formato longo e em português, ou seja, segunda-feira, terça-feira, quarta-feira, etc. Veja o código completo para o exemplo: from datetime import datetime import locale # função principal do programa def main(): # Configurações do usuário locale.setlocale(locale.LC_ALL, '') # Obtém um datatime da data e hora atual hoje = datetime.today() # Exibe o nome do dia da semana no formato # longo print("O dia da semana é:", hoje.strftime("%A")) if __name__== "__main__": main() Ao executarmos este código nós teremos o seguinte resultado: O dia da semana é: quinta-feira |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercício Resolvido de Java - Faça um programa que sorteie um número aleatório entre 0 e 500 e pergunte ao usuário qual é o "número mágico". O programa deveráQuantidade de visualizações: 356 vezes |
Pergunta/Tarefa: Faça um programa que sorteie um número aleatório entre 0 e 500 e pergunte ao usuário qual é o "número mágico". O programa deverá indicar se a tentativa efetuada pelo usuário é maior ou menor que o número mágico e contar o número de tentativas. Quando o usuário conseguir acertar o número o programa deverá classificar o usuário como: De 1 a 3 tentativas: muito sortudo De 4 a 6 tentativas: sortudo De 7 a 10 tentativas: normal > 10 tentativas: tente novamente Sua saída deverá ser parecida com: Adivinhe o número mágico: 100 Tente um número menor. Adivinhe o número mágico: 50 Tente um número maior. Adivinhe o número mágico: 60 Tente um número maior. Adivinhe o número mágico: 80 Tente um número maior. Adivinhe o número mágico: 90 Tente um número maior. Adivinhe o número mágico: 95 Tente um número menor. Adivinhe o número mágico: 94 Tente um número menor. Adivinhe o número mágico: 93 Tente um número menor. Adivinhe o número mágico: 92 Você acertou o número em 9 tentativas. Classificação: Normal Veja a resolução comentada deste exercício usando Java: package estudos; import java.util.Random; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // variáveis usadas na resolução do problema int numero_magico, palpite, tentativas = 0; boolean acertou = false; // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos sortear o número entre 0 e 500 Random rand = new Random(); numero_magico = rand.nextInt(501); // um laço que repete enquanto o usuário não // acertar o número mágico while (!acertou) { System.out.print("Adivinhe o número mágico: "); palpite = Integer.parseInt(entrada.nextLine()); // registra essa tentativa tentativas = tentativas + 1; // o usuário acertou o número mágico? if (palpite == numero_magico) { System.out.println("Você acertou o número em " + tentativas + " tentativas."); // mostra a classificação do usuário if (tentativas <= 3) { System.out.println("Classificação: Muito Sortudo"); } else if ((tentativas >= 4) && (tentativas <= 6)) { System.out.println("Classificação: Sortudo"); } else if ((tentativas >= 7) && (tentativas <= 10)) { System.out.println("Classificação: Normal"); } else { System.out.println("Classificação: Tente Novamente"); } // sai do laço acertou = true; } else { // indica se o palpite é maior ou menor if (palpite < numero_magico) { System.out.println("Tente um número maior.\n"); } else { System.out.println("Tente um número menor.\n"); } } } } } |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Ler um número inteiro na faixa 0-999 e mostrar a soma de seus dígitosQuantidade de visualizações: 13094 vezes |
Pergunta/Tarefa: Escreva um programa Java que leia um inteiro na faixa 0-999 e mostre a soma de seus dígitos. Por exemplo, se o valor for 523, a soma de seus dígitos será 5 + 2 + 3 = 10. Seu programa deverá exibir a seguinte saída: Informe um valor inteiro (0-999): 523 A soma dos dígitos é: 10 Veja a resolução comentada deste exercício usando Java console: public static void main(String[] args){ // não se esqueça de adicionar um import para a classe Scanner // import java.util.Scanner; // vamos criar um objeto da classe Scanner Scanner entrada = new Scanner(System.in); // vamos solicitar ao usuário que informe um valor inteiro // na faixa 0 a 999 (incluindo) System.out.print("Informe um valor inteiro (0-999): "); // vamos ler o valor informado int valor = Integer.parseInt(entrada.next()); // vamos verificar se o valor está na faixa permitida if(valor < 0 || valor > 999){ System.out.println("Valor fora da faixa permitida"); System.exit(0); } // vamos obter o terceiro dígito int terceiro = valor % 10; // obtém os digitos restantes valor = valor / 10; // vamos obter o segundo dígito int segundo = valor % 10; // obtém os digitos restantes valor = valor / 10; // vamos obter o primeiro dígito int primeiro = valor % 10; // obtém os digitos restantes valor = valor / 10; // vamos obter a soma dos dígitos int soma = terceiro + segundo + primeiro; // vamos mostrar o resultado System.out.println("A soma dos dígitos é: " + soma); } |
Python ::: Python para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular a distância entre dois pontos no plano em Python - Python para Geometria Analítica e Álgebra LinearQuantidade de visualizações: 10532 vezes |
Como calcular a Distância Euclidiana entre dois pontos usando Python. Em várias aplicações envolvendo geometria, principalmente no desenvolvimento de jogos em Python, é comum nos depararmos com a necessidade de calcular a distância entre dois pontos A e B. Nessa dica mostrarei como efetuar esse cálculo no R2, ou seja, no plano. Em outra dica eu abordo o cálculo no R3 (espaço). Comece analisando a imagem abaixo: ![]() Veja que temos um ponto A (x = 3; y = 6) e um ponto B (x = 9; y = 4). Para determinarmos a distância entre esses dois pontos no plano cartesiano, temos que realizar a análise tanto no sentido do eixo das abscissas (x) quanto no do eixo das ordenadas (y). Veja a fórmula: \[d_{AB} = \sqrt{\left(x_b - x_a\right)^2 + \left(y_b - y_a\right)^2}\] Agora, jogando os valores dos dois pontos da fórmula nós teremos: \[d_{AB} = \sqrt{\left(9 - 3\right)^2 + \left(6 - 4\right)^2}\] Que resulta em 6,32 (aproximadamente). E agora veja o código Python completo que lê as coordenadas dos dois pontos e mostra a distância entre eles: import math # função que permite calcular a distância # entre dois pontos no plano (R2) def distancia2d(x1, y1, x2, y2): a = x2 - x1 b = y2 - y1 c = math.sqrt(math.pow(a, 2) + math.pow(b, 2)) return c # função principal do programa def main(): # vamos ler os dados do primeiro ponto x1 = float(input("Informe o x do primeiro ponto: ")) y1 = float(input("Informe o y do primeiro ponto: ")) # vamos ler os dados do segundo ponto x2 = float(input("Informe o x do segundo ponto: ")) y2 = float(input("Informe o y do segundo ponto: ")) # vamos obter a distância entre eles distancia = distancia2d(x1, y1, x2, y2) print("Distância entre os dois pontos: %0.2f" % distancia); if __name__== "__main__": main() Ao executarmos este código Python nós teremos o seguinte resultado: Informe o x do primeiro ponto: 3 Informe o y do primeiro ponto: 6 Informe o x do segundo ponto: 9 Informe o y do segundo ponto: 4 Distância entre os dois pontos: 6.32 |
Java ::: Fundamentos da Linguagem ::: Tipos de Dados |
Como usar o tipo de dados float do Java - Usando o tipo de dados float da linguagem JavaQuantidade de visualizações: 22710 vezes |
O tipo de dados float é usado quando precisamos armazenar números de ponto-flutuante (com parte fracionária) na faixa 1.401298464324817e-45f até 3.402823476638528860e+38f. Este tipo ocupa 32 bits na memória (o mesmo que um int) e possui precisão de 6 ou 7 dígitos significativos. Veja um exemplo de seu uso:public class Estudos{ public static void main(String args[]){ float valor = 54.5f; System.out.println("O valor da variável é: " + valor); System.exit(0); } } Antes de prosseguir, veja que inserí a letra "f" (ou "F") após o valor literal atribuído à variável. Se retirássemos esta letra, o compilador emitiria a seguinte mensagem de erro: Estudos.java:3: possible loss of precision found : double required: float float valor = 54.5; ^ 1 error Isso acontece porque, por padrão, um literal de ponto-flutuante é no mínimo do tipo double. E um double não cabe em um float. A definição da letra "f" ou "F" informa ao compilador que estamos realmente definindo um literal float. O tipo de dados float pode ser convertido (sem a necessidade de cast) para os seguintes tipos: float -> double Se precisarmos converter o tipo float para os tipos char, byte, short, int ou long, teremos que lançar mão de uma coerção (cast), também conhecida como conversão forçada. Veja: float valor = 54.5f; int valor2 = (int)(valor); É preciso ficar atento ao fato de que uma coerção de um tipo de ponto-flutuante para um tipo integral (inteiro) resulta na perda da parte fracionária do valor que está sofrendo o cast. |
Nossas 20 dicas & truques de programação mais populares |
C++ - Como criar uma classe C++ completa, incluindo os arquivos de definição .h e implementação .cpp Python - Como usar a biblioteca Pandas do Python em seus projetos de Data Science e Machine Learning Java - Como remover itens repetidos de uma ArrayList usando um objeto da classe LinkedHashSet do Java |
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 |
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 |