![]() |
|
||||
![]() Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica. |
|||||
Java ::: Tratamento de Erros ::: Erros de Tempo de Execução |
Como corrigir um erro ClassCastException em Java - Como tratar a exceção ClassCastException do JavaQuantidade de visualizações: 17277 vezes |
A exceção ClassCastException é um erro de tempo de execução que ocorre quando tentamos fazer um cast (coerção - conversão explícita) de uma classe para outra classe diferente desta ou que não seja uma superclasse desta. Em outras palavras, casts válidos para classes e interfaces devem seguir as regras abaixo: 1) Se NovoTipo é uma classe, a classe da expressão sendo convertida deve ser do tipo NovoTipo ou herdar de NovoTipo. 2) Se NovoTipo é uma interface, a classe da expressão sendo convertida deve implementar NovoTipo. Considere o código a seguir: public class Estudos{ public static void main(String args[]){ Object x = new Integer(0); System.out.println((String)x); } } Este código compila normalmente. Porém, ao ser executado, a seguinte mensagem de erro é exibida: Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String at Estudos.main(Estudos.java:4) Esta mensagem nos informa que a classe Integer não pode sofrer um cast para String, uma vez que Integer não é e nem herda de String. Veja agora a nova versão: public class Estudos{ public static void main(String args[]){ Object x = new Integer(0); System.out.println((Integer)x); } } Veja que agora nós estamos fazendo o cast de uma referência Object para Integer. Embora Object não seja e nem herde de Integer, o sistema de tempo de execução sabe que x guarda atualmente uma referência a um Integer: Object x = new Integer(0); |
PHP ::: Dicas & Truques ::: Arquivos e Diretórios |
Como testar se um diretório existe em PHP usando a função file_exists()Quantidade de visualizações: 19054 vezes |
Em algumas situações nós precisamos verificar se um determinado diretório existe no sistema antes de efetuarmos alguma operação. Para isso nós podemos usar a função file_exists(). Esta função retorna um valor true se o diretório existir e false em caso contrário. Veja um código PHP completo demonstrando o seu uso: <?php $diretorio = "arquivo/imagens"; if(file_exists($diretorio)){ echo "O diretório já existe."; } else{ echo "O diretório não existe ainda."; } ?> |
Ruby ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se uma string termina com uma determinada substring em Ruby usando uma função ends_with() personalizadaQuantidade de visualizações: 7076 vezes |
O Ruby, até a versão 1.8.6 não dispõe de um método para verificar se uma string termina com uma determinada substring. Assim, veja abaixo como escrever uma função ends_with(). Esta função recebe a string e a substring e retorna true se a string terminar com a substring. Eis a listagem completa: # função auxiliar que permite verificar se # uma string termina com uma substring def ends_with(string, substring) pos = string.length - substring.length if string.index(substring, pos) == pos return true else return false end end # declara e inicializa uma variável string frase = "Gosto muito de Java, PHP e Ruby" # vamos verificar a string termina com "Ruby" if ends_with(frase, "Ruby") puts "A string termina com \"Ruby\"" else puts "A string NÃO termina com \"Ruby\"" end Ao executar este código Ruby nós teremos o seguinte resultado: A string termina com "Ruby" |
C ::: Dicas & Truques ::: Strings e Caracteres |
Como percorrer os caracteres de uma string C usando um laço forQuantidade de visualizações: 17619 vezes |
Como em C uma string é um vetor de caracteres, tais caracteres podem ser acessados por meio de seu índice no vetor (um valor inteiro começando em 0). Este trecho de código mostra como você pode usar o laço for para acessar cada caractere individualmente e exibí-lo na tela do programa:#include <stdio.h> #include <stdlib.h> #include <string.h> int main(int argc, char *argv[]){ char palavra[] = "Arquivo"; // vamos percorrer os caracteres usando um laço for int i; for(i = 0; i < strlen(palavra); i++){ printf("Caractere na posicao %d = %c\n", i, palavra[i]); } puts("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Caractere na posicao 0 = A Caractere na posicao 1 = r Caractere na posicao 2 = q Caractere na posicao 3 = u Caractere na posicao 4 = i Caractere na posicao 5 = v Caractere na posicao 6 = o |
VisuAlg ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular porcentagem em VisuAlg - Como efetuar cálculos de porcentagem em VisuAlgQuantidade de visualizações: 2733 vezes |
Cálculos de porcentagens estão presentes em boa parte das aplicações que desenvolvemos. Porém, há momentos em que a mente trava e não conseguimos lembrar com clareza como estes cálculos são feitos, principalmente em VisuAlg. Esta anotação tem o objetivo de ser uma fonte de pesquisa para os momentos em que suas habilidades matemáticas insistirem em continuar ocultas. Ex: 1 - Suponhamos que um produto que custe R$ 178,00 sofra um acréscimo de 15%. Qual o valor final do produto? Veja o código em VisuAlg: algoritmo "Algoritmo que calcula porcentagem" var // variáveis usadas na resolução do problema valor, percentual, valor_final: real inicio valor <- 178.00 // valor original percentual <- 15.0 / 100.0 // 15% valor_final <- valor + (percentual * valor) // mostra o resultado escreva("O valor final do produto é: ", valor_final) // O resultado será 204,70 fimalgoritmo Ex: 2 - Um produto, cujo valor original era de R$ 250,00, teve um desconto de 8%. Qual foi seu valor final? Veja o código em VisuAlg: algoritmo "Algoritmo que calcula porcentagem" var // variáveis usadas na resolução do problema valor, percentual, valor_final: real inicio valor <- 250.00; // valor original percentual <- 8.0 / 100.0 // 8% valor_final <- valor - (percentual * valor) // mostra o resultado escreva("O valor final do produto é: ", valor_final) // O resultado será 230,00 fimalgoritmo Ex: 3 - Em um concurso de perguntas e respostas, um jovem acertou 72 das 90 perguntas apresentadas. Qual foi a porcentagem de acertos? E a porcentagem de erros? Veja o código em VisuAlg: algoritmo "Algoritmo que calcula porcentagem" var // variáveis usadas na resolução do problema perguntas, acertos: real inicio perguntas <- 90.0 acertos <- 72.0 // mostra a porcentagem de acertos escreva("Porcentagem de acertos: ") escreval(((acertos / perguntas) * 100), "%") // mostra a porcentagem de erros escreva("Porcentagem de erros: ") escreval((((perguntas - acertos) / perguntas) * 100), "%") // Os resultados serão 80% e 20% fimalgoritmo Ex: 4 - Um aparelho de CD foi adquirido por R$ 300,00 e revendido por R$ 340,00. Qual foi a porcentagem de lucro na transação? Veja o código em VisuAlg: algoritmo "Algoritmo que calcula porcentagem" var // variáveis usadas na resolução do problema valor_anterior, novo_valor, porcentagem_lucro: real inicio valor_anterior <- 300.0 // valor anterior novo_valor <- 340.0 // valor novo // calcula a porcentagem de lucro // efetua o cálculo porcentagem_lucro <- ((novo_valor * 100) / valor_anterior) - 100 escreva("A porcentagem de lucro foi de: ", porcentagem_lucro, "%") // O resultado será 13,33 fimalgoritmo Ex: 5 - Uma loja repassa 5% do lucro a seus vendedores. Se um produto custa R$ 70,00, qual o valor em reais repassado a um determinado vendedor? Veja o código em VisuAlg: algoritmo "Algoritmo que calcula porcentagem" var // variáveis usadas na resolução do problema valor, percentual, comissao: real inicio valor <- 70.0 // valor do produto percentual <- 5.0 / 100.0 // 5% // calcula a comissão comissao <- percentual * valor // mostra o resultado escreva("O valor repassado ao vendedor é: ", comissao) // O resultado será 3,5 fimalgoritmo |
C++ ::: Dicas & Truques ::: Strings e Caracteres |
Como substituir todas as ocorrências de uma substring em uma string C++ usando uma função substituir_string() personalizadaQuantidade de visualizações: 10544 vezes |
Nesta dica mostrarei como podemos tirar proveito das funções empty(), size(), find(), replace() e length() da classe String do C++ para escrever uma função substituir_string() personalizada que nos permite substituir todas as ocorrências de uma substring em uma string. Veja o código C++ completo para o exemplo: #include <string> #include <iostream> using namespace std; // função personalizada para substituir todas as ocorrências // de uma substring em uma string void substituir_string(string& str, const string de, const string para){ // variáveis auxiliares int i = 0, indice; // a string está vazia? if(str.empty()){ str = de; return; } // fazemos as substituições da substring while(i < str.size()){ indice = str.find(de, 0); if(indice >= 0){ str.replace(indice, de.length(), para); } else{ return; } i++; } } // função principal do programa int main(int argc, char *argv[]){ // vamos criar uma string string frase = "Java? Gosto de Java, Java!"; cout << "A frase original é: " << frase << endl; // Substitui as ocorrências de "Java" por "PHP" substituir_string(frase, "Java", "PHP"); // e mostramos o resultado cout << "Depois da substituição: " << frase << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este código C++ nós teremos o seguinte resultado: A frase original é Java? Gosto de Java, Java! Depois da substituição: PHP? Gosto de PHP, PHP! |
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se uma string C# começa com uma determinada substring usando o método StartsWith() da classe StringQuantidade de visualizações: 11762 vezes |
Em algumas situações nós precisamos verificar se uma palavra, texto ou frase começa com uma determinada substring. Em C# isso pode ser feito por meio da função StartsWith() da classe String. Este método retorna true se a string começar com a substring informada e false em caso contrário. Veja um código C# completo no qual testamos se uma string começa com a substring "Gosto": using System; namespace Estudos { class Program { static void Main(string[] args) { string texto = "Gosto de programar em C#"; if (texto.StartsWith("Gosto")) { Console.WriteLine("O texto começa com \"Gosto\""); } else { Console.WriteLine("O texto NÃO começa com \"Gosto\""); } Console.WriteLine(); } } } Ao executar este código C# nós teremos o seguinte resultado: O texto começa com "Gosto" |
C++ ::: STL (Standard Template Library) ::: Vector C++ |
Como criar um vector de strings em C++, inserir alguns nomes usando a função push_back() e percorrê-los usando um iteradorQuantidade de visualizações: 11182 vezes |
Se você tem pouca experiência com a classe container vector da STL (Standard Template Library), este exemplo o ajudará um pouco. Aqui eu mostro como criar um vector de strings em C++, inserir alguns nomes nele usando a função push_back() e depois percorrê-los individualmente usando um iterador. Veja o código C++ completo para o exemplo: #include <iostream> #include <vector> using namespace std; int main(int argc, char *argv[]){ // um vector vazio que conterá strings vector<string> nomes; // vamos inserir três nomes nomes.push_back("Osmar J. Silva"); nomes.push_back("Carlos de Souza"); nomes.push_back("Maria Dias de Carvalho"); // vamos percorrer o vector e exibir os nomes vector<string>::iterator it; for(it = nomes.begin(); it < nomes.end(); it++){ cout << *it << endl; } cout << "\n" << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este código C++ nós teremos o seguinte resultado: Osmar J. Silva Carlos de Souza Maria Dias de Carvalho |
Python ::: Dicas & Truques ::: Data e Hora |
Como construir uma data em Python usando o construtor da classe datetimeQuantidade de visualizações: 7012 vezes |
Nesta dica mostrarei como podemos usar o construtor da classe datetime do Python para construir e retornar uma nova data. Note que estou fornecendo a data para construtor da classe datetime usando o ano, o mês e o dia. Veja o código Python completo para o exemplo: from datetime import datetime # função principal do programa def main(): # vamos definir o dia, mês e ano dia = 20 mes = 4 ano = 1980 # Constrói um datetime (ano, mês, dia) data = datetime(ano, mes, dia) # Exibe o conteúdo do datetime print("A data construída foi {0}".format(data)) # Obtém o ano da data recém-criada print("O ano da data construída foi: {0}".format(data.year)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: A data construída foi 1980-04-20 00:00:00 O ano da data construída foi: 1980 |
PHP ::: Fundamentos da Linguagem ::: Comentários |
Aprenda a programar em PHP - Como inserir comentários em seus códigos PHPQuantidade de visualizações: 16100 vezes |
Comentários em nossos códigos são sempre uma boa idéia. Primeiro porque, no momento que estávamos escrevendo, a lógica está fresca em nossa cabeça. Porém, alguns dias depois podemos não entender muito bem a estratégia usada na resolução de um determinado problema. A outra razão para o uso de comentários é facilitar o trabalho da pessoa que dará manutenção em nossos códigos, ou talvez permitir um melhor entendimento por parte do cliente que nos contratou para desenvolver uma determinada rotina. Comentários em PHP podem ser usados de três formas diferentes. Para comentários de múltiplas linhas, devemos usar a sintáxe da linguagem C/C++: <? /* Este é um exemplo de comentário de múltiplas linhas. Você pode usar quantas linhas quiser neste tipo de comentário. Este tipo de comentário é o mesmo usado na linguagem C/C++. */ $valor = 15; echo "O valor informado é: " . $valor; ?> Podemos usar comentários de uma linha apenas, usando a sintáxe da linguagem C++: <? $valor = 30; // Define o valor da variável echo "O valor informado é: " . $valor; // exibe resultado ?> A terceira forma de comentário usa o modelo de Shell: <? $valor = 120; # Define o valor da variável echo "O valor informado é: " . $valor; # exibe resultado ?> |
Nossas 20 dicas & truques de programação mais populares |
JavaScript - Como retornar o código ASCII ou Unicode associado a um caractere em JavaScript usando a função charCodeAt() AutoCAD Civil 3D .NET C# - Como pedir para o usuário selecionar um alinhamento no Civil 3D usando a função GetEntity() do AutoCAD Civil 3D .NET C# API |
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 |