Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Sistemas Digitais - Manipulação de Bits |
Como fazer o complemento de 1 de um número binário em Java - Solução usando manipulação de strings - Lista de Exercícios Resolvidos de JavaQuantidade de visualizações: 227 vezes |
Pergunta/Tarefa: Em Sistemas Digitais e na manipulação de bits, o complemento de 1 de um número binário é realizado de forma direta invertendo-se os "0s" e "1s", ou seja, todo zero (0) vira um (1) e todo um (1) vira zero (0). Dessa forma, se tivermos o número binário 11001, seu complemento de 1 será 00110. Escreva um programa Java que pede para o usuário informar um número binário e exiba o seu complemento de um. Para esta solução você deverá usar exclusivamente manipulação de strings. Sua saída deve ser parecida com: Informe um número binário: 1011001 O complemento de 1 é: 0100110 Veja a resolução comentada deste exercício usando Java: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos solicitar um número binário System.out.print("Informe um número binário: "); String binario = entrada.nextLine(); // vamos converter a string em um arrays de chars char digitos[] = binario.toCharArray(); // agora percorremos todos os dígitos do número binário // e trocamos os "0s" por "1s" e vice-versa for(int i = 0; i < digitos.length; i++){ if(digitos[i] == '0'){ digitos[i] = '1'; } else{ digitos[i] = '0'; } } // convertemos de novo para string String complemento1 = String.valueOf(digitos); // e mostramos o resultado System.out.println("O complemento de 1 é: " + complemento1); } } |
Link para compartilhar na Internet ou com seus amigos: |
C# ::: Dicas & Truques ::: Tipos de Dados |
Como usar os tipos de dados byte e sbyte da linguagem C#Quantidade de visualizações: 14674 vezes |
O tipo de dados byte é usado quando queremos armazenar valores inteiros na faixa de 0 a 255, ou seja, valores inteiros apenas positivos. Veja um exemplo de declaração e definição de uma variável deste tipo:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // uma variável do tipo byte byte valor = 45; O tipo byte (que possui 8 bits não sinalizados) é um apelido C# para o tipo System.Byte da plataforma .NET. Note que quando inicializamos uma variável do tipo byte com um literal inteiro, este valor é convertido implicitamente de int para byte. Se o valor sendo definido for maior que a faixa permitida, o programa não compilará. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // valor fora da faixa suportada pelo tipo byte byte valor = 290; Ao tentarmos compilar esta linha teremos o seguinte erro: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- Constant value '290' cannot be converted to a 'byte' Quando se trata de conversões implícitas, um valor do tipo byte pode ser convertido, sem a necessidade de cast, para os tipos short, ushort, int, uint, long, ulong, float, double ou decimal. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // variável do tipo byte byte valor = 28; // variável do tipo float float valor2 = valor; O caminho oposto não é verdade, ou seja, não é possível atribuir uma variável do tipo short à uma variável do tipo byte. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // variável do tipo short short valor = 50; // variável do tipo byte byte valor2 = valor; // mensagem de erro de compilação Cannot implicitly convert type 'short' to 'byte'. An explicit conversion exists (are you missing a cast?) Esta conversão não é possível, ainda que o valor contido na variável do tipo short esteja na faixa aceitável pelo tipo byte. Neste caso, um cast (conversão explícita) se faz necessário: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // variável do tipo short short valor = 50; // variável do tipo byte byte valor2 = (byte)valor; Resumindo, nenhum outro tipo de dados em C# pode ser convertido para o tipo byte implicitamente. Se quiser fazê-lo, use uma conversão explícita (cast). O tipo sbyte, por sua vez, pode armazenar valores inteiros na faixa de -128 até 127 e possui 8 bits sinalizados. Este tipo é um apelido C# para o tipo de dados System.SByte da plataforma .NET. Veja um exemplo de seu uso: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- static void Main(string[] args){ // variável do tipo sbyte sbyte valor = -45; // exibe o resultado Console.WriteLine("O valor da variável é: " + valor); // pausa o programa Console.ReadKey(); } Note que, a exemplo de byte, o tipo sbyte também é governado por algumas regras de conversão e atribuição de valores literais. Há uma conversão implícita de sbyte para os tipos short, int, long, float, double e decimal. A conversão de qualquer outro tipo de dados para o tipo sbyte só pode ser feita por meio de cast (conversão explícita). |
PHP ::: Dicas & Truques ::: Strings e Caracteres |
Como remover os espaços em excesso de uma string e deixar apenas um espaço entre as palavras usando a função preg_replace() e expressões regulares do PHPQuantidade de visualizações: 11507 vezes |
Nesta dica mostrarei como é possível tirar proveito da função preg_replace() da linguagem PHP para retirar os espaços em excesso de uma frase ou texto. Note o uso da função trim() para remover também os espaços antes e depois da frase ou texto. 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) ---------------------------------------------------------------------- <?php // uma frase com excesso de espaços // vamos deixar apenas um espaço entre as palavras $frase = " Gosto muito de programar em PHP "; $frase2 = trim(preg_replace('/\s\s+/',' ', $frase)); echo "Com espaços: " . $frase . "<br>"; echo "Sem espaços: " . $frase2; ?> Ao executar este código PHP nós teremos o seguinte resultado: Com espaços: Gosto muito de programar em PHP Sem espaços: Gosto muito de programar em PHP Pode ser necessário você olhar no código fonte da página HTML para visualizar melhor o resultado. |
C# ::: Namespace System.Drawing ::: Graphics |
Desenhando retângulos usando o método DrawRectangle() da classe Graphics do C#Quantidade de visualizações: 6970 vezes |
Retângulos podem ser desenhados em C# e Windows Forms usando o método DrawRectangle() da classe Graphics. Este método pede a caneta de desenho (um objeto da classe Pen), as coordenadas do canto superior esquerdo e a largura e altura do retângulo. Veja a assinatura do método DrawRectangle() mais comumente usada:Graphics.DrawRectangle(Pen, Single, Single, Single, Single) Veja um trecho de código no qual desenhamos um retângulo com 250 pixels de largura por 150 pixels de altura: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- private void button1_Click(object sender, EventArgs e){ // vamos obter o Graphics do formulário Graphics g = this.CreateGraphics(); // vamos desenhar um retângulo de 250 pixels de largura por 150 // pixels de altura g.DrawRectangle(new Pen(Color.Red, 1), 50, 50, 250, 150); // vamos liberar o objeto Graphics g.Dispose(); } As coordenadas do canto superior esquerdo e a largura e altura do retângulo podem ser especificadas como um objeto da estrutura Rectangle. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- private void button1_Click(object sender, EventArgs e){ // vamos obter o Graphics do formulário Graphics g = this.CreateGraphics(); // vamos desenhar um retângulo de 250 pixels de largura por 150 // pixels de altura g.DrawRectangle(new Pen(Color.Red, 1), new Rectangle(100, 100, 250, 150)); // vamos liberar o objeto Graphics g.Dispose(); } |
Python ::: Dicas & Truques ::: Aplicativos e Outros |
Como calcular a distância entre dois pontos na terra em PythonQuantidade de visualizações: 1062 vezes |
Nesta dica mostrarei como calcular a distância em quilômetros entre dois pontos na terra dadas suas latitudes e longitudes. Neste exemplo eu coloquei o valor de 6378.137 para o raio da terra, mas você pode definir para o valor que achar mais adequado. O cálculo usado neste código se baseia na Fórmula de Haversine, que determina a distância do grande círculo entre dois pontos em uma esfera, dadas suas longitudes e latitudes. Veja o código Python completo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # vamos importar o módulo Math import math # função que recebe dois pontos na terra e retorna a distância # entre eles em quilômetros def calcularDistancia(lat1, lat2, lon1, lon2): raio_terra = 6378.137 # raio da terra em quilômetros # o primeiro passo é converter as latitudes e longitudes # para radianos lon1 = math.radians(lon1) lon2 = math.radians(lon2) lat1 = math.radians(lat1) lat2 = math.radians(lat2) # agora aplicamos a Fórmula de Haversine dlon = lon2 - lon1 dlat = lat2 - lat1 a = math.pow(math.sin(dlat / 2), 2) + math.cos(lat1) * math.cos(lat2) \ * math.pow(math.sin(dlon / 2),2) c = 2 * math.asin(math.sqrt(a)) # e retornamos a distância return(c * raio_terra) # método principal def main(): # vamos solicitar a latitude e longitude das duas localizações lat1 = float(input("Informe a primeira latitude: ")) lon1 = float(input("Informe a primeira longitude: ")) lat2 = float(input("Informe a segunda latitude: ")) lon2 = float(input("Informe a segunda longitude: ")) # vamos calcular a distância entre os dois pontos em Kms distancia = calcularDistancia(lat1, lat2, lon1, lon2) # mostramos o resultado print("A distância entre os dois pontos é: {0} kms".format(distancia)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Informe a primeira latitude: -16.674551 Informe a primeira longitude: -49.303598 Informe a segunda latitude: -15.579321 Informe a segunda longitude: -56.10009 A distância entre os dois pontos é: 736.9183827638687kms Neste exemplo eu calculei a distância entre as cidades de Goiânia-GO e Cuibá-MT. A latitude é a distância ao Equador medida ao longo do meridiano de Greenwich. Esta distância mede-se em graus, podendo variar entre 0o e 90o para Norte(N) ou para Sul(S). A longitude é a distância ao meridiano de Greenwich medida ao longo do Equador. |
VBA ::: Dicas & Truques ::: Rotinas de Conversão |
Como converter números em strings em VBA usando a função CStr()Quantidade de visualizações: 201 vezes |
A função CStr() do VBA pode ser usada quando queremos converter valores numéricos do tipo Integer ou Double em uma string. Em geral isso é necessário quando queremos aplicar funções de strings a valores numéricos, por exemplo, testar se um determinado dígito faz parte de um número. Veja um trecho de código no qual usamos a função CStr() para converter valores Integer e Double em string e mostrar o resultado: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- ' Procedimento para converter Integer e Double em string Sub ConverterNumeroString() ' vamos declarar duas variáveis numéricas Dim codigo As Integer Dim preco As Double codigo = 58 preco = 32.15 Dim resultado As String resultado = "O código do produto é: " + CStr(codigo) + _ " e o preço é: " + CStr(preco) ' mostramos o resultado MsgBox resultado End Sub Ao executar este código VBA nós teremos o seguinte resultado: O código do produto é: 58 e o preço é: 32,15 |
Veja mais Dicas e truques de VBA |
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 |