C# ::: Desafios e Lista de Exercícios Resolvidos ::: Operadores de Manipulação de Bits (Bitwise Operators) |
Exercícios Resolvidos de C# - Como converter de decimal para binário usando os operadores de bits em C#Quantidade de visualizações: 1050 vezes |
Este desafio de programação faz parte da nossa lista de exercícios resolvidos de C#. Pergunta/Tarefa: Escreva um programa C# para pede para o usuário informar um número decimal e faça a conversão para binário usando os operadores de bits. Sua saída deverá ser parecida com: Informe um número decimal: 9 O número binário é: 00000000000000000000000000001001 Veja a resolução completa para o exercício em C#, comentada linha a linha: using System; namespace Estudos { class Principal { // vamos definir o tamanho do vetor para guardar // os dígitos do número binário const int TAM_INT = sizeof(int) * 8; static void Main(string[] args) { // variáveis para ajudar a resolver o problema int dec, indice; // vetor para guardar o número binário int[] binario = new int[TAM_INT]; // vamos pedir para o usuário informar um decimal inteiro Console.Write("Informe um número decimal: "); dec = int.Parse(Console.ReadLine()); // ajustamos índice para o último elemento do vetor indice = TAM_INT - 1; // enquanto índice for maior ou igual a 0 while (indice >= 0) { // vamos guardar o bit menos significativo LSB binario[indice] = dec & 1; // diminuímos o índice indice--; // desloca bits para a direita uma posição dec = dec >> 1; } // agora vamos exibir o número binário Console.Write("O número binário é: "); for (int i = 0; i < TAM_INT; i++) { Console.Write(binario[i]); } Console.WriteLine("\nPressione uma tecla para sair..."); Console.ReadKey(); } } } |
C# ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar a instrução switch do C#Quantidade de visualizações: 26518 vezes |
A instrução switch da linguagem C# é útil quando queremos testar condições nas quais o uso de if..else if..else poderia ser considerado excessivo ou não aplicável. Esta instrução recebe uma variável como argumento e testa seu valor por meio de cláusulas case. Veja o exemplo: static void Main(string[] args){ Console.Write("Digite um número inteiro: "); int valor = int.Parse(Console.ReadLine()); switch(valor){ case 1: Console.WriteLine("Você digitou o valor 1"); break; case 2: Console.WriteLine("Você digitou o valor 2"); break; case 3: Console.WriteLine("Você digitou o valor 3"); break; default: Console.WriteLine("Valor incorreto."); break; } Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } Note que a instrução switch possui uma cláusula default para os casos nos quais o valor da variável não estiver presente em nenhuma das cláusulas case. Observe também o uso da instrução break para evitar a avaliação das cláusulas seguintes àquela na qual o valor desejado foi encontrado. Qualquer objeto, valor ou tipo referência que puder ser convertido em um valor inteiro, caractere, enumeração (enum) ou string pode ser usado como argumento para uma instrução switch. Veja: static void Main(string[] args){ Console.Write("Digite uma letra: "); char letra = Char.Parse(Console.ReadLine().ToLower()); switch(letra){ case "a": Console.WriteLine("Você digitou a letra a"); break; case "b": Console.WriteLine("Você digitou a letra b"); break; case "c": Console.WriteLine("Você digitou a letra c"); break; default: Console.WriteLine("Letra inválida."); break; } Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } É possível haver cláusulas case vazias. Neste caso, o bloco de instruções é executado caso o valor da variável seja encontrado em qualquer uma das cláusulas. Veja: static void Main(string[] args){ Console.Write("Digite uma letra: "); char letra = Char.Parse(Console.ReadLine().ToLower()); switch(letra){ case "a": case "b": Console.WriteLine("Você digitou a ou b"); break; case "c": case "d": Console.WriteLine("Você digitou c ou d"); break; case "e": Console.WriteLine("Você digitou a letra e"); break; default: Console.WriteLine("Letra inválida."); break; } Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } |
Delphi ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como declarar e inicializar uma matriz de Integer em DelphiQuantidade de visualizações: 12367 vezes |
Nesta dica eu mostrarei como declarar e inicializar uma matriz de inteiros (Integer) em Delphi. Mostrarei também como exibir o valor de cada elemento usando um laço For. Veja o código:procedure TForm3.Button1Click(Sender: TObject); var // vamos declarar uma matriz de 10 inteiros valores: array[1..10] of Integer; i: Integer; begin // vamos inicializar a matriz com os números pares de 2 até 20 for i := Low(valores) to High(valores) do begin valores[i] := i * 2; end; // vamos exibir os valores dos elementos for i := Low(valores) to High(valores) do begin Memo1.Lines.Add(IntToStr(valores[i])); end; end; Ao executar este código teremos o seguinte resultado: 2 4 6 8 10 12 14 16 18 20 |
Java ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se uma string Java está toda em letras maiúsculas ou minúsculas usando as funções Character.isWhitespace() e Character.isUpperCase()Quantidade de visualizações: 279 vezes |
Nesta dica mostrarei como podemos combinar um laço e as funções Character.isWhitespace() e Character.isUpperCase() para testar se uma palavra, frase ou texto está toda em letras maiúsculas em Java. Veja o código completo para o exemplo: package estudos; public class Estudos { public static void main(String[] args) { // Este exemplo mostra como verificar se uma // string está toda em letras maiúsculas String frase = "PROGRAMANDO EM JAVA"; boolean maiusculas = true; for (int i = 0; i < frase.length(); i++) { Character caractere = frase.charAt(i); if (Character.isWhitespace(caractere)) { continue; } if (!Character.isUpperCase(caractere)) { maiusculas = false; break; } } if (maiusculas) { System.out.println("A string esta toda em letras maiusculas"); } else{ System.out.println("A string NAO esta toda em letras maiusculas"); } } } Ao executar este código Java nós teremos o seguinte resultado: A string está toda em letras maiúsculas |
C# ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como retornar a quantidade de dimensões de uma matriz em C# usando a propriedade RankQuantidade de visualizações: 8218 vezes |
A propriedade Rank de um array do C# pode ser usada para obtermos a quantidade de dimensões de uma matriz (unidimensional, bidimensional, tridimensional, etc). Esta propriedade retorna um inteiro contendo a quantidade de dimensões. Veja o código para o exemplo: using System; namespace Estudos { class Program { static void Main(string[] args) { // cria uma matriz de duas dimensões: quatro linhas // e duas colunas int[,] matriz = new int[4, 2]; // obtém a quantidade de dimensões int dimen = matriz.Rank; Console.WriteLine("Este array possui " + dimen + " dimensões."); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: Este array possui 2 dimensões. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos |
Exercício Resolvido de Java - A classe Produto (construtores, métodos, getters e setters e encapsulamento)Quantidade de visualizações: 17391 vezes |
Pergunta/Tarefa: Crie uma classe Produto para representar um produto do mundo real. Sua classe deverá conter os seguintes atributos e métodos: 1) Um campo de dados privado do tipo String chamado nome, que representará o nome do produto. 2) Um campo de dados privado do tipo double chamado precoCusto, que guardará o preço de custo do produto. 3) Um campo de dados privado do tipo double chamado precoVenda, que guardará o preço de venda do produto. 4) Um campo de dados privado do tipo double chamado margemLucro, que guardará a margem de lucro do produto. 5) Métodos públicos get() e set() para os atributos acima. Modifique o método setPrecoVenda() para que o preço de venda não seja inferior ao preço de compra. Caso isso aconteça, exiba uma mensagem alertando o usuário. 6) Crie um método chamado calcularMargemLucro() que calculará a margem de lucro do produto. 7) Crie um método chamado getMargemLucroPorcentagem() que retornará a margem de lucro como percentual. Para finalizar, no método main() da classe de teste, crie um novo objeto da classe Produto, peça para o usuário informar os preços de custo e de venda e exiba a margem de lucro em moeda e em percentual. Sua saída deverá ser algo parecido com o mostrado na imagem abaixo: Informe o preço de custo: 120 Informe o preço de venda: 195 Preço de custo: 120.0 Preço de Venda: 195.0 Margem de Lucro: 75.0 Margem de Lucro Percentual (%): 62.5 Veja a resolução comentada deste exercício usando Java console: Produto.java: package estudos; public class Produto{ private String nome; // nome do produto private double precoCusto; // preço de custo do produto private double precoVenda; // preço de venda do produto private double margemLucro; // margem de lucro do produto // obtém a margem de lucro public double getMargemLucro(){ return margemLucro; } // define a margem de lucro public void setMargemLucro(double margemLucro){ this.margemLucro = margemLucro; } // obtém o nome do produto public String getNome(){ return nome; } // define o nome do produto public void setNome(String nome){ this.nome = nome; } // obtém o preço de custo public double getPrecoCusto(){ return precoCusto; } // define o preço de custo public void setPrecoCusto(double precoCusto){ this.precoCusto = precoCusto; } // obtém o preço de venda public double getPrecoVenda(){ return precoVenda; } // define o preço de venda public void setPrecoVenda(double precoVenda){ // o preço de venda não pode ser menor que o preço de custo if(precoVenda < this.precoCusto){ System.out.println("O preço de venda não pode ser inferior ao de custo"); } else{ this.precoVenda = precoVenda; } } // calcula a margem de lucro public void calcularMargemLucro(){ this.margemLucro = this.precoVenda - this.precoCusto; } // retorna a margem de lucro em porcentagem public double getMargemLucroPorcentagem(){ return (this.margemLucro / this.precoCusto) * 100; } } Veja agora o método main() que nos permite testar a funcionalidade da classe Produto: package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { Scanner entrada = new Scanner(System.in); // vamos criar um novo objeto da classe Produto Produto p = new Produto(); // vamos ler o preço de custo System.out.print("Informe o preço de custo: "); p.setPrecoCusto(Double.parseDouble(entrada.nextLine())); // vamos ler o preço de venda System.out.print("Informe o preço de venda: "); p.setPrecoVenda(Double.parseDouble(entrada.nextLine())); // vamos calcular a margem de lucro p.calcularMargemLucro(); // vamos exibir os resultados System.out.println("Preço de custo: " + p.getPrecoCusto()); System.out.println("Preço de Venda: " + p.getPrecoVenda()); System.out.println("Margem de Lucro: " + p.getMargemLucro()); System.out.println("Margem de Lucro Percentual (%): " + p.getMargemLucroPorcentagem()); } } |
Java ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como criar, preencher e exibir os valores de uma matriz de duas dimensões de inteiros em Java - RevisadoQuantidade de visualizações: 12447 vezes |
Nesta dica mostrarei como declarar e instanciar uma matriz (array) de duas dimensões de ints em Java. Note que temos duas linhas e cada linha possui duas colunas. Neste exemplo os valores da matriz já estão pré-definidos, mas você pode ver mais dicas nessa seção para aprender como solicitar que o usuário informe os valores de cada linha de coluna. Veja o código completo: package arquivodecodigos; public class Estudos{ public static void main(String[] args){ int valores[][] = {{1, 2, 3}, {4, 5, 6}}; // varre todos os elementos do array e os // exibe usando linhas e colunas for(int lin = 0; lin < valores.length; lin++){ for(int col = 0; col < valores[lin].length; col++){ System.out.printf("%d ", valores[lin][col]); } System.out.println(); } System.exit(0); } } Ao executar este exemplo nós teremos o seguinte resultado: 1 2 3 4 5 6 Esta dica foi revisada e testada no Java 8. |
CSS ::: Dicas & Truques ::: Cores de Fundo e Imagens de Fundo |
Exemplos de uso da propriedade background do CSS para definições cores e imagens de fundo em elementos HTMLQuantidade de visualizações: 9152 vezes |
Nesta dica mostrarei alguns exemplos muito úteis da propriedade background do CSS para definirmos cores e imagens de fundo para a página HTML e também para os elementos HTML: Exemplo 1: Como definir a cor de fundo para a página HTML usando a propriedade background: body {background: #0099CC} Exemplo 2: Como definir a cor de fundo e a imagem de fundo para a página HTML usando as propriedades background e url: body {background: #0099CC url(fundo.gif)} Exemplo 3: Como definir a cor de fundo, a imagem de fundo para a página HTML e a forma de repetição usando as propriedade background, url e repeat-x: body {background: #0099CC url(fundo.gif) repeat-x} Exemplo 4: Como definir a cor de fundo, a imagem de fundo para a página HTML, a forma de repetição e como fixar a imagem de fundo usando as propriedade background, url, repeat-x e fixed: body {background: #0099CC url(fundo.gif) repeat-x fixed} Exemplo 5: Como definir a cor de fundo, a imagem de fundo para a página HTML, sem repetição, fixa e posições inicias usando as propriedade background, url, repeat-x e fixed: body {background: #0099CC url(fundo.gif) no-repeat fixed 40 60} |
PHP ::: Dicas & Truques ::: Variáveis e Constantes |
PHP para iniciantes - Como testar se uma variável é do tipo string usando a função is_string() do PHPQuantidade de visualizações: 11188 vezes |
Em algumas situações podemos querer saber se o tipo de uma variável é string, ou seja, contém uma palavra, frase ou trecho de texto. Este teste pode ser feito com o auxílio da função is_string(). Esta função retorna um valor true ou false dependendendo do tipo de variável sendo testada. Veja o código PHP para este exemplo: <html> <head> <title>Estudando PHP</title> </head> <body> <?php $nome = 'Osmar J. Silva'; if(is_string($nome)){ echo 'A variável $nome é do tipo string'; } else{ echo 'A variável $nome não é do tipo string'; } ?> </body> </html> Ao executar este código nós teremos o seguinte resultado: A variável $nome é do tipo string |
JavaScript ::: Dicas & Truques ::: Tratamento de Erros |
Como retornar o rastreio da pilha de um erro de tempo de execução em JavaScript usando a propriedade stack do objeto ErrorQuantidade de visualizações: 7301 vezes |
A propriedade stack do objeto Error da linguagem JavaScript pode ser usada quando queremos obter mais informações sobre as causas do aparecimento de um erro em tempo de execução. Dessa forma nós conseguimos rastrear o erro até a sua origem. Veja um trecho de código JavaScript completo demonstrando o seu uso: <!doctype html> <html> <head> <title>Estudos JavaScript</title> </head> <body> <script language="javascript"> // o trecho de código a seguir vai provocar // um erro de tempo de execução em JavaScript try{ // y não foi definido var x = y; } catch(e){ // mostra a pilha de rastreio do erro document.write("Rastreio da pilha: " + e.stack); } </script> </body> </html> Ao executar este código JavaScript nós teremos o seguinte resultado: Rastreio da pilha: ReferenceError: y is not defined at http://localhost/estudos/estudos_js.html:13:13 |
Nossas 20 dicas & truques de programação mais populares |
Python - Como calcular o limite de uma função usando Python e a biblioteca Sympy - Python para Engenharia Java - Padrões de projeto para iniciantes - Como usar o padrão de projeto Singleton em suas aplicações Java JavaScript - Como construir uma determinada data e hora usando o construtor do objeto Date do JavaScript |
Você também poderá gostar das dicas e truques de programação abaixo |
CSS - Como definir uma imagem de fundo para um botão HTML usando a propriedade background-image do CSS |
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 |