Você está aqui: C++ ::: Dicas & Truques ::: Strings e Caracteres

Obtendo a quantidade máxima de caracteres que um objeto string pode armazenar

Quantidade de visualizações: 7041 vezes
/*
  Este exemplo mostra como obter a quantidade máxima
  de caracteres que uma instância da classe string
  pode armazenar. Este valor é obtido com uma chamada
  à função:
		
  size_t max_size ( ) const;		 
*/

#include <string>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
  string str = "Arquivo de Códigos";
	
  size_t max = str.max_size();
  cout << "Esta implementação suporta " << max 
    << " caracteres em um objeto string.\n\n"; 
	  
  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS;
}


Link para compartilhar na Internet ou com seus amigos:

Delphi ::: Data Controls (Controles de Dados) ::: TDBGrid

Como adicionar um botão ellipsis (...) nas células de uma determinada coluna do TDBGrid do Delphi e tratar seu evento OnEditButtonClick

Quantidade de visualizações: 11679 vezes
Em algumas situações gostaríamos de exibir um botão do tipo ellipsis (...) nas células de uma determinada coluna do TDBGrid. Este botão é exibido à direita da célula de edição do DBGrid e seu evento OnEditButtonClick pode ser disparado por meio da combinação Ctrl+Enter ou um click do mouse.

Um dos usos mais frequentes do botão ellipsis é quando queremos chamar um formulário de pesquisa ou mais detalhes sobre o conteúdo atual da célula que está sendo editada.

Siga os passos abaixo para adicionar um botão ellipsis (...) nas células de uma determinada coluna do TDBGrid:

a) Selecione a coluna desejada na lista Columns;

b) Defina o valor cbsEllipsis para sua propriedade ButtonStyle;

c) Escreva um gerenciador de eventos para o evento OnEditButtonClick do DBGrid. Veja no trecho de código a seguir como clicar no botão e exibir o conteúdo da célula (note que coloquei o botão ellipsis em uma coluna cujos células exibiam o valor do campo id de uma tabela livros):

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm3.DBGrid1EditButtonClick(Sender: TObject);
begin
  ShowMessage('O valor da célula que contém o botão é: ' +
    DBGrid1.SelectedField.AsString);
end;

Ao executar este código bastará entrar na célula e colocá-la em modo de edição. Automaticamente o botão ellipsis (...) será exibido. Clique no mesmo e verá uma mensagem parecida com:

"O valor da célula que contém o botão é: 5."

Caso queira que o botão ellipsis seja visível nas células o tempo todo, basta alterar o valor da opção dgAlwaysShowEditor para True. Esta opção é parte da propriedade Options do DBGrid.

Esta dica foi escrita e testada no Delphi 2009.


Ruby ::: Dicas & Truques ::: Programação Orientada a Objetos

Como usar variáveis de instância em Ruby - Programação Orientada a Objetos em Ruby

Quantidade de visualizações: 7464 vezes
Na programação orientada a objetos, as variáveis de instância são variáveis associadas a cada um dos objetos de uma classe. Podemos pensar assim: temos vários carros de uma mesma montadora e da mesma marca, porém, com cores diferentes. Nessa analogia, a cor pertence a cada um dos carros, de forma particular, ou seja, é uma variável de instância.

Vamos ver um exemplo? Veja o código Ruby a seguir:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# Definição da classe Cliente
class Cliente
  # construtor da classe
  def initialize(nome, idade)
    @nome = nome
    @idade = idade
  end
    
  # método que permite retornar o nome do cliente
  def obter_nome
    @nome
  end
  
  # método que permite retornar a idade do cliente  
  def obter_idade
    @idade
  end
end

# Cria duas instâncias da classe Cliente
cliente_a = Cliente.new("Osmar", 35)
cliente_b = Cliente.new("Salvador", 28)

# Efetua chamadas aos métodos obter_nome e obter_idade
# dos dois objetos
puts "#{cliente_a.obter_nome} - #{cliente_a.obter_idade}"
puts "#{cliente_b.obter_nome} - #{cliente_b.obter_idade}"

Ao executar este código Ruby nós teremos o seguinte resultado:

Osmar - 35
Salvador - 28

Veja que aqui nós temos duas variáveis de instância: @nome e @idade. Variáveis de instância são sempre precedidas pelo símbolo @ em Ruby. Neste exemplo os valores das variáveis são inicializados por meio do uso do construtor da classe e obtidos por meio de métodos acessores chamados obter_nome e obter_idade.


C ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o cosseno de um ângulo em C usando a função cos() do header math.h - Calculadora de cosseno em C

Quantidade de visualizações: 10701 vezes
Em geral, quando falamos de cosseno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função cosseno disponível nas linguagens de programação para calcular o cosseno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria.

No entanto, é sempre importante entender o que é a função cosseno. Veja a seguinte imagem:



Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles.

Assim, o cosseno é a razão entre o cateto adjascente e a hipotenusa, ou seja, o cateto adjascente dividido pela hipotenusa. Veja a fórmula:

\[\text{Cosseno} = \frac{\text{Cateto adjascente}}{\text{Hipotenusa}} \]

Então, se dividirmos 30 por 36.056 (na figura eu arredondei) nós teremos 0.8320, que é a razão entre o cateto adjascente e a hipotenusa (em radianos).

Agora, experimente calcular o arco-cosseno de 0.8320. O resultado será 0.5881 (em radianos). Convertendo 0.5881 radianos para graus, nós obtemos 33.69º, que é exatamente o ângulo em graus entre o cateto adjascente e a hipotenusa na figura acima.

Pronto! Agora que já sabemos o que é cosseno na trigonometria, vamos entender mais sobre a função cos() da linguagem C. Esta função, que faz parte do header math.h, recebe um valor numérico double e retorna um valor double, ou seja, também numérico) entre -1 até 1 (ambos inclusos). Veja:

----------------------------------------------------------------------
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 <math.h>
 
int main(int argc, char *argv[]){
  // vamos calcular o cosseno de três números
  printf("Cosseno de 0 = %f\n", cos(0));
  printf("Cosseno de 1 = %f\n", cos(1));
  printf("Cosseno de 2 = %f\n", cos(2));
 
  printf("\n\n");
  system("PAUSE");
  return 0;
}

Ao executar este código C nós teremos o seguinte resultado:

Cosseno de 0 = 1.000000
Cosseno de 1 = 0.540302
Cosseno de 2 = -0.416147

Note que calculamos os cossenos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função cosseno mostrada abaixo:




C# ::: Dicas & Truques ::: Matemática e Estatística

Como testar se um número é primo em C#

Quantidade de visualizações: 7144 vezes
O Número Primo é o número maior que 1 e que só pode ser dividido por 1 e por ele mesmo, ou seja, números primos não podem ser divididos por outros números, a não ser por ele mesmo e pelo número 1. Dessa forma, 2, 3, 5, 7, 11, 13, 17, etc, são todos números primos.

É importante observar que 0 e 1 não são números primos, e que o número 2 é o único número primo par.

Veja agora um código C# completo que pede para o usuário informar um número inteiro positivo e mostra uma mensagem indicando se o número informado é primo ou não:

----------------------------------------------------------------------
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) {
      bool primo = true;

      // vamos solicitar um número inteiro positivo
      Console.Write("Informe um número inteiro positivo: ");
      int numero = int.Parse(Console.ReadLine());

      // o número é negativo?
      if (numero < 0) {
        Console.WriteLine("Número inválido.");
      }
      // é 0 ou 1?
      else if ((numero == 0) || (numero == 1)) {
        Console.WriteLine("Número válido, mas não é primo.");
      }
      // passou até aqui. Vamos testar se o número é primo
      else {
        for (int i = 2; i <= (numero / 2); i++) {
          // se passar no teste, não é primo
          if (numero % i == 0) {
            primo = false; // recebe false
              break;
          }
        }

        if (primo) {
          Console.WriteLine("O número informado é primo");
        }
        else {
          Console.WriteLine("O número informado não é primo");
        }
      }

      Console.WriteLine("\n\nPressione qualquer tecla para sair...");
      // pausa o programa
      Console.ReadKey();
    }
  }
}

Ao executar este código C# nós teremos o seguinte resultado:

Informe um número inteiro positivo: 9
O número informado não é primo


Flutter ::: Material Library - Biblioteca Material ::: TextField

Como clicar em um botão, obter o texto digitado em um TextField do Flutter e exibí-lo em uma AlertDialog

Quantidade de visualizações: 2402 vezes
Nesta dica mostrarei como clicar em um botão, obter o texto que o usuário digitou em um TextField e exibí-lo em uma caixa de mensagem AlertDialog. Para isso vamos tirar proveito da classe TextEditingController, que nos fornece um controller que pode ser associado a uma caixa de texto.

Quando o usuário clicar no botão, nós chamamos o método setState() para atualizar uma variável com o texto do controller e em seguida exibimos uma mensagem AlertDialog com o texto digitado. Veja o exemplo completo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

import 'package:flutter/material.dart';

// método principal do Dart, que inicia a aplicação
void main() {
  runApp(MeuApp());
}

class MeuApp extends StatelessWidget {
  // Este  widget é a raiz da aplicação Flutter
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Controle TextField',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: TelaInicial(),
    );
  }
}

// Vamos construir a view e retornar para a raiz da aplicação
class TelaInicial extends StatefulWidget {
  TelaInicial({Key key}) : super(key: key);

  @override
  _TelaInicialState createState() => _TelaInicialState();
}

class _TelaInicialState extends State<TelaInicial> {
  String nomeUsuario; // vai guarda o nome digitado no TextField
  // controler para o TextField
  TextEditingController nomeController = TextEditingController();

  // método que nos permite obter o conteúdo digitado no TextField
  void obterTexto() {
    setState(() {
      // transferimos para a variável nomeUsuario o conteúdo
      // do texto do controller do TextField
      nomeUsuario = nomeController.text;
    });

    // agora vamos mostrar o texto digitado em uma mensagem
    // AlertDialog
    showDialog<void>(context: context,
      barrierDismissible: false, builder: (BuildContext context) {
        return new AlertDialog(
          title: new Text("Texto Digitado"),
          content: new SingleChildScrollView(
            child: new ListBody(
              children: [
                new Text("O texto digitado foi: $nomeUsuario"),
              ],
            ),
          ),
          actions: [
            new FlatButton(
              child: new Text('OK'),
              onPressed: () {
                Navigator.of(context).pop();
              },
            ),
          ],
        );
      },
    );
  }

  @override
  Widget build(BuildContext context) {
    // vamos criar uma caixa de texto chamada nomeTxt
    final nomeTxt = TextField(
      controller: nomeController,
      decoration: InputDecoration(
          border: OutlineInputBorder(
              borderRadius: BorderRadius.circular(10.0)),
          hintText: 'Digite seu nome'
      ),
    );

    final btnNome = ElevatedButton(
      onPressed: obterTexto,
      child: Text('Clique Aqui'),
    );

    return Scaffold(
      appBar: AppBar(
        title: Text("O Widget TextField"),
      ),
      body: Center(
        child: Container(
          child: Padding(
            padding: const EdgeInsets.all(20.0),
            child: Column(
              children: <Widget>[
                // a caixa de texto TextField vai aqui
                nomeTxt,
                // o botão vai aqui
                btnNome,
              ],
            ),
          ),
        ),
      ),
    );
  }
}



Veja mais Dicas e truques de Flutter

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware 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 funcionalidadesControle 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
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 77 usuários muito felizes estudando em nosso site.