Você está aqui: C# ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como passar um array (matriz) para um método C#Quantidade de visualizações: 10083 vezes |
Em algumas situações precisamos passar um array (matriz) para um método C# e imprimir seus elementos ou manipular seus valores dentro deste método. Esta dica mostra como isso pode ser feito:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- static void Main(string[] args){ // vamos criar um array de cinco inteiros int[] valores = {1, 2, 3, 4, 5}; // vamos passar o array para o método abaixo imprimir(valores); // pausa o programa System.Console.Write("\nPressione qualquer tecla para sair..."); Console.ReadKey(); } static void imprimir(int[] array){ // vamos imprimir o conteúdo do array fornecido como argumento for(int i = 0; i < array.Length; i++){ System.Console.WriteLine(array[i]); } } |
Link para compartilhar na Internet ou com seus amigos: |
C# ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como pesquisar um valor em um array C# usando o método Find() e um PredicateQuantidade de visualizações: 12768 vezes |
Nesta dica veremos como usar o método Find() da classe Array e um método Predicate para pesquisar um item em um vetor de string na linguagem C#. Note que a função Predicate é fornecida como segundo argumento para o método Find(). 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) ---------------------------------------------------------------------- using System; namespace Estudos { class Program { static void Main(string[] args) { // cria e inicializa um array de strings string[] cidades = {"Goiânia", "São Paulo", "Rio de Janeiro", "Curitiba"}; // pesquisa o valor "Goiânia" string item = Array.Find(cidades, pesquisar); Console.WriteLine(item != null ? "Item encontrado" : "Item não encontrado."); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } // método auxiliar que serve como Predicate para localizar // o valor desejado private static bool pesquisar(String cid) { return (cid.Equals("Goiânia") ? true : false); } } } Ao executar este código C# nós teremos o seguinte resultado: Item encontrado |
C# ::: Namespace System.Drawing ::: Graphics |
Computação gráfica C# Windows Forms - Como desenhar em C# - A classe GraphicsQuantidade de visualizações: 7579 vezes |
Qualquer um que queira iniciar os estudos e desenhos de gráficos em C# usando Windows Forms deve obrigatoriamente entender um pouco de GDI e GDI+. GDI é o acrônimo de Graphics Device Interface e GDI+ é o seu sucessor em versões mais recentes do Microsoft Windows. Com a indepedência do GDI+ podemos desenhar em um formulário, na tela ou impressora sem qualquer modificação no código. O próprio GDI+ se encarrega dos detalhes da implementação de cada um destes diferentes dispositivos. O GDI+ é uma interface de programação de aplicações (API) que forma o sub-sistema do sistema operacional Microsoft Windows XP. Esta API é a responsável pela exibição de informações na tela e impressoras. O GDI+ é uma DLL Win32 chamada de gdiplus.dll que é distribuída com o Windows XP e versões mais recentes do Windows. Esta DLL está também disponível para uso em versões do Windows anteriores ao XP. A plataforma .NET encapsula as funcionalidades do GDI+ nos seguintes namespaces: System.Drawing, System.Drawing.Drawing2D, System.Drawing.Imaging, System.Drawing.Text e System.Drawing.Printing. Antes de iniciar seus desenhos em C# e Windows Forms, é importante entender o sistema de coordenadas do GDI+. Este sistema usa a medida de pixels ("picture elements"), que é a menor unidade de resolução no display de um monitor. Assim, o canto superior esquerdo de um controle GUI (um formulário, um painel, botão, etc) tem as coordenadas (0, 0), ou seja, x = 0 e y = 0. Lembre-se de que x é o eixo horizontal e y é o eixo vertical. A classe Graphics, do pacote System.Drawing, é quem fornece boa parte dos métodos que usamos para desenhar em C# e Windows Forms. Veja sua posição na hierarquia de classes da plataforma .NET: System.Object System.MarshalByRefObject System.Drawing.Graphics Veja um trecho de código no qual desenhamos uma linha horizontal no formulário a partir do clique de um botão: ---------------------------------------------------------------------- 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 uma linha horizontal de 300 pixels na // cor preta e espessura de 1 pixel g.DrawLine(new Pen(Color.Black, 1), new Point(20, 80), new Point(320, 80)); // vamos liberar o objeto Graphics g.Dispose(); } |
C# ::: Dicas & Truques ::: Programação Orientada a Objetos |
Como usar herança em C# - Programação Orientada a Objetos em C#Quantidade de visualizações: 26632 vezes |
Herança é uma dos três princípios fundamentais da programação orientada a objetos porque ela permite a criação de hierarquia nos objetos que compõem o sistema. Em C#, uma classe que tem seus dados e métodos herdados por outra é chamada de classe base ou super classe e a classe que herda tais dados é chamada de classe derivada ou sub-classe. O que um aluno, um professor e um funcionário possuem em comum? Todos eles são pessoas e, portanto, compartilham alguns dados comuns. Todos têm nome, idade, endereço, etc. E, o que diferencia um aluno de uma outra pessoa qualquer? Um aluno possui uma matrícula; Um funcionário possui um código de funcionário, data de admissão, salário, etc; Um professor possui um código de professor e informações relacionadas à sua formação. É aqui que a herança se torna uma ferramenta de grande utilidade. Podemos criar uma classe Pessoa, que possui todos os atributos e métodos comuns a todas as pessoas e herdar estes atributos e métodos em classes mais específicas, ou seja, a herança parte do geral para o mais específico. Comece criando uma classe Pessoa como mostrado no código a seguir: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- class Pessoa{ public string nome; public int idade; } Esta classe possui os atributos nome e idade. Estes atributos são comuns a todas as pessoas. Veja agora como podemos criar uma classe Aluno que herda estes atributos da classe Pessoa e inclui seu próprio atributo, a saber, seu número de matrícula. Eis o código: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- class Aluno: Pessoa{ public string matricula; } Observe que, em C#, os dois-pontos são usados para indicar a herança. A classe Aluno agora possui três atributos: nome, idade e matricula. Veja uma aplicação demonstrando este relacionamento: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- static void Main(string[] args){ // cria um objeto da classe Aluno Aluno aluno = new Aluno(); aluno.nome = "Osmar J. Silva"; aluno.idade = 36; aluno.matricula = "AC33-65"; // Exibe o resultado Console.WriteLine("Nome: " + aluno.nome + "\n" + "Idade: " + aluno.idade + "\n" + "Matrícula: " + aluno.matricula); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } A herança nos fornece um grande benefício. Ao concentrarmos características comuns em uma classe e derivar as classes mais específicas a partir desta, nós estamos preparados para a adição de novas funcionalidades ao sistema. Se mais adiante uma nova propriedade comum tiver que ser adicionada, não precisaremos efetuar alterações em todas as classes. Basta alterar a superclasse e pronto. As classes derivadas serão automaticamente atualizadas. |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Equação da continuidade Um avião está se movendo pelo ar com velocidade de 220 m/s. As linhas de fluxo acima da asa estão comprimidas em 88% de sua área original. As linhas de fluxo abaixo da asa não estão comprimidas. Qual é a velocidade do ar acima da asa do avião em relação a esta? A) 220 m/s B) 26,4 m/s C) 414 m/s D) 194 m/s E) 250 m/s Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual o resultado da execução do seguinte código Python?palavra = "FACULDADE" resultado = palavra[0:len(palavra):2] print(resultado) A) EALCF B) FACULDADE C) FA D) DADE E) FCLAE Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual das formas abaixo é válida para a criação de um DICIONÁRIO em Python? A) estados = ["SP": "SÃO PAULO", "GO": "GOIÁS"] B) estados = ("SP": "SÃO PAULO", "GO": "GOIÁS") C) estados = set("SP": "SÃO PAULO", "GO": "GOIÁS") D) estados = "SP": "SÃO PAULO", "GO": "GOIÁS" E) estados = {"SP": "SÃO PAULO", "GO": "GOIÁS"} Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
O exercício do direito à propriedade Os direitos de vizinhança, quando violados, abrem para o lesado a possibilidade de ingressar com a medidas judiciais assecuratórias do seu direito, como solicitar a suspensão da obra que está sendo realizada pelo vizinho, sua reformulação ou demolição. Sobre esse tema, assinale a alternativa correta e as possíveis alterações legislativas nesse procedimento: A) A ação de nunciação de obra nova é procedimento especial do Código de Processo Civil de 2015. B) A ação de nunciação de obra nova não deve sofrer, atualmente, mudança de terminologia e tramita pelo procedimento especial. C) O objetivo principal é reformular ou demolir a obra; a suspensão é mero pedido liminar no início da ação. D) A ação de nunciação de obra nova também pode ser ajuizada para a obra que já tiver sido finalizada. E) O prazo para ingressar com a nunciação é de até um ano e um dia a contar da conclusão da obra. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em AutoCAD Civil 3D |
Superfícies no AutoCAD Civil 3D Qual dos objetos abaixo não é um tipo de dados que pode ser incluído em uma superfície do AutoCAD Civil 3D? A) Lines (Linhas) B) Points (Pontos) C) Parcels (Parcelas, Lotes) D) Blocks (Blocos) Verificar Resposta Estudar Cards Todas as Questões |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
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 |