Você está aqui: C ::: Dicas & Truques ::: Strings e Caracteres |
Como escrever uma função C que verifica se duas strings são iguais ou diferentes (sem considerar maiúsculas e minúsculas)Quantidade de visualizações: 9532 vezes |
Esta dica mostra como escrever uma função em linguagem C que verifica se duas strings são iguais ou diferentes (sem considerar maiúsculas e minúsculas, ou seja, case insensitive). O nome da função é str_equal(). Esta função aceita duas strings como argumentos e retorna 1 se estas forem iguais e 0 em caso contrário. Experimente, faça as devidas alterações e adicione mais esta função ao seu repertório de códigos C:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> // função personalizada que permite verificar // se duas strings são iguais ou diferentes sem // considerar maiúsculas e minúsculas int str_equal(const char *str1, const char *str2){ while((toupper(*str1) == toupper(*str2)) && (*str1)){ str1++; str2++; } return((*str1 == 0) && (*str2 == 0)); } int main(int argc, char *argv[]){ char palavra1[] = "Java"; char palavra2[] = "Java"; if(str_equal(palavra1, palavra2) == 1) printf("As palavras sao iguais"); else printf("As palavras sao diferentes"); puts("\n\n"); system("PAUSE"); return 0; } |
Link para compartilhar na Internet ou com seus amigos: |
Delphi ::: Dicas & Truques ::: Data e Hora |
Como retornar o dia do mês para uma determinada data em Delphi usando as funções DayOfTheMonth() e DayOf()Quantidade de visualizações: 17325 vezes |
Em algumas situações precisamos extrair apenas o dia do mês de uma determinada data. Para isso podemos usar as funções DayOfTheMonth() e DayOf(), ambas contidas na unit DateUtils. Estas funções retornam um valor inteiro na faixa de 1 a 31. Veja, por exemplo, como obter o dia do mês da data atual:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- procedure TForm1.Button1Click(Sender: TObject); var hoje: TDateTime; dia_mes: integer; begin // não esqueça de incluir DateUtils no uses // vamos receber a data de hoje hoje := Now; // vamos obter o dia do mês dia_mes := DayOf(hoje); // vamos exibir o resultado ShowMessage('O dia do mês é: ' + IntToStr(dia_mes)); end; É importante notar que ambas as funções DayOfTheMonth() e DayOf() esperam um valor do tipo TDateTime representando a data cujo mês queremos extrair. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como adicionar elementos no início de um array JavaScript usando a função unshift() do objeto ArrayQuantidade de visualizações: 7314 vezes |
Nesta dica mostrarei como adicionar um ou mais elementos no início de um array da linguagem JavaScript usando a função unshift() do objeto Array. Esta função é chamada na variável do tipo array e recebe um ou mais elementos, os quais serão inseridos no início do vetor. Veja o código JavaScript completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <!doctype html> <html> <head> <title>Arrays em JavaScript</title> </head> <body> <script type="text/javascript"> // vamos criar um array em JavaScript var valores = new Array(1, 2, 3, 4, 5); // agora vamos mostrar o vetor criado document.write("Valores no array: " + valores + "<br>"); // vamos adicionar três elementos no início do // array valores.unshift(6, 7, 8); // e mostramos o resultado document.write("Adicionei três elementos no início do array<br>"); document.write("Valores no array: " + valores); </script> </body> </html> Ao executar este código JavaScript nós teremos o seguinte resultado: Valores no array: 1,2,3,4,5 Adicionei três elementos no início do array Valores no array: 6,7,8,1,2,3,4,5 |
Delphi ::: VCL - Visual Component Library ::: TEdit |
Como definir o conteúdo de um TEdit do Delphi em tempo de execução usando a função SendMessage() da API do Windows e a mensagem WM_SETTEXTQuantidade de visualizações: 10969 vezes |
Embora o Delphi já nos forneça as ferramentas necessárias para definir o conteúdo de um TEdit em tempo de execução, é importante saber como realizar esta tarefa usando a API do Windows. Para isso, podemos usar a função SendMessage() em combinação com a mensagem WM_SETTEXT. A função SendMessage() da API do Windows possui a seguinte assinatura em C/C++: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- LRESULT SendMessage( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam ); No arquivo Windows.pas podemos encontrar o protótipo e corpo desta função convertidos para Object Pascal: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // Protótipo {$EXTERNALSYM SendMessage} function SendMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall; // Implementação function SendMessage; external user32 name 'SendMessageW'; Note que precisamos de um HWND (Handle) para a caixa de texto. Feito isso só precisamos enviar a mensagem WM_SETTEXT juntamente com o conteúdo a ser exibido no controle. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- procedure TForm1.Button1Click(Sender: TObject); var texto: String; begin // conteúdo a ser definido para a caixa de texto texto := 'Veja isso'; // vamos definir o conteúdo usando a função SendMessage // fornecendo a mensagem WM_SETTEXT SendMessage(Edit1.Handle, WM_SETTEXT, 0, Integer(PChar(texto))); end; Veja que o parâmetro wParam da função SendMessage não é usado quando a mensagem é WM_SETTEXT. Desta forma só precisamos fornecer o valor 0. |
Delphi ::: Data Controls (Controles de Dados) ::: TDBGrid |
Como obter a quantidade de linhas em um controle TDBGrid do Delphi (duas formas)Quantidade de visualizações: 10129 vezes |
A quantidade de linhas em um controle TDBGrid pode ser obtida de duas formas diferentes. A primeira consiste em fazer uma conversão de TDBGrid para TStringGrid e usar a propriedade RowCount. Veja:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- procedure TForm3.Button3Click(Sender: TObject); var quantLinhas: Integer; begin // vamos obter a quantidade de linhas no DBGrid quantLinhas := TStringGrid(DBGrid1).RowCount; // vamos mostrar o resultado ShowMessage('O DBGrid possui ' + IntToStr(quantLinhas) + ' linhas.'); end; Ao executar este código você verá um mensagem parecida com: "O DBGrid possui 5 linhas." Note que a propriedade RowCount inclui a linha reservada aos títulos das colunas do DBGrid, ou seja, uma linha a mais que a quantidade de registros no controle. A segunda forma de se obter a quantidade de linhas no DBGrid consiste em obter a quantidade de registros no TDataSet no qual o DBGrid está conectado por meio de sua propriedade DataSource. Veja como isso pode ser feito: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- procedure TForm3.Button3Click(Sender: TObject); var quantLinhas: Integer; begin // vamos obter a quantidade de linhas no DBGrid quantLinhas := DBGrid1.DataSource.DataSet.RecordCount; // vamos mostrar o resultado ShowMessage('O DBGrid possui ' + IntToStr(quantLinhas) + ' linhas.'); end; Veja que aqui nós usamos a propriedade RecordCount para obter a quantidade de registros no DataSet. Note que agora a contagem de linhas não inclui a linha reservada para os títulos das colunas. Esta dica foi escrita e testada no Delphi 2009. |
Python ::: Python para Engenharia ::: Física - Mecânica - Estática |
Como calcular o centroide ou centro de gravidade de um triângulo em PythonQuantidade de visualizações: 1274 vezes |
O centro de gravidade, ou centroide (centro geométrico), é o ponto no qual a massa de um triângulo se equilibra. Para ajudar a visualizar isso, imagine uma figura triangular suspensa sobre a ponta de um lápis. A figura vai se equilibrar se a ponta do lápis for posicionada em seu centro de gravidade. Encontrar o centroide pode ser necessário em vários projetos e aplicações de engenharia, e pode ser encontrado usando geometria simples. Veja a seguinte figura: Nesta figura nós temos os três vértices do triângulo devidamente registrados, assim como o ponto representando seu centroide. Assim, a fórmula do centroide do triângulo é: \[x_c = \frac{x_1 + x_2 + x_3}{3}\] \[y_c = \frac{y_1 + y_2 + y_3}{3}\] Agora vamos ver como calcular o centro de gravidade do triângulo em Python. Para isso nós vamos pedir para o usuário informar as coordenadas dos três vértices do triângulo e, em seguida, vamos mostrar as coordenadas do ponto que representa o centroide. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # função principal do programa def main(): # vamos ler as coordenadas do primeiro vértice va_x = float(input("Informe o x do primeiro vértice: ")) va_y = float(input("Informe o y do primeiro vértice: ")) # vamos ler as coordenadas do segundo vértice vb_x = float(input("Informe o x do segundo vértice: ")) vb_y = float(input("Informe o y do segundo vértice: ")) # vamos ler as coordenadas do terceiro vértice vc_x = float(input("Informe o x do terceiro vértice: ")) vc_y = float(input("Informe o y do terceiro vértice: ")) # vamos calcular as coordenadas do centroide c_x = (va_x + vb_x + vc_x) / 3 c_y = (va_y + vb_y + vc_y) / 3 # vamos mostrar o resultado print("As coordenadas do centroide são: x={0}; y={1}".format( round(c_x, 2), round(c_y, 2))) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Informe o x do primeiro vértice: 3 Informe o y do primeiro vértice: 10 Informe o x do segundo vértice: 12 Informe o y do segundo vértice: 15 Informe o x do terceiro vértice: 14 Informe o y do terceiro vértice: 7 As coordenadas do centroide são: x=9.67; y=10.67 |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
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 |