Você está aqui: C# ::: Lista de Exercícios Resolvidos (Algorítmos Resolvidos) ::: Geometria, Trigonometria e Figuras Geométricas

Exercícios Resolvidos de C# - Como calcular a área de um losango em C#

Quantidade de visualizações: 220 vezes
Pergunta/Tarefa:

Um losango é um quadrilátero equilátero, ou seja, é um polígono formado por quatro lados de igual comprimento. Um losango é também um paralelogramo. Alguns autores exigem ainda que nenhum dos ângulos do quadrilátero seja reto para que ele seja considerado um losango.

A área (em metros quadrados) de um losango pode ser calculada usando-se a seguinte fórmula:



Onde D1 é a diagonal maior e D2 é a diagonal menor.

Escreva um programa C# que leia a diagonal maior e a diagonal menor e calcule a área do losango. Sua saída deverá ser parecida com:

Informe a medida da diagonal maior: 5
Informe a medida da diagonal menor: 10
A área (em metros quadrados) do losango é: 25
Resposta/Solução:

Veja a resolução comentada deste exercício usando C#:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso



C# ::: Threads ::: Thread

Como usar a classe Thread para criar threads em seus programas C#

Quantidade de visualizações: 10451 vezes
A classe Thread permite criar e controlar uma thread, além de definir sua prioridade e obter seu status. Veja a posição desta classe na hierarquia de classes da plataforma .NET:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso


Um processo pode criar uma ou mais threads para executar parte do código do programa associado a tal processo. Usamos um delegate ThreadStart ou um delegate ParameterizedThreadStart para especificar o código do programa que será executado pela thread. O delegate ParameterizedThreadStart nos permite passar dados para as funções a serem executadas pela thread.

Durante seu ciclo de vida, uma thread está sempre em um ou mais dos estados definidos pela enumeração ThreadState. Um nível de prioridade de agendamento, como definido na enumeração ThreadPriority, pode ser requisitado para a thread, mas, este comportamento nem sempre é garantido pelo sistema operacional.

O método GetHashCode() fornece identificação para threads gerenciadas. Durante o ciclo de vida de uma thread, seu código de identificação não colidirá com os códigos das demais threads, independente do domínio da aplicação a partir do qual obtemos tal valor.

Veja um trecho de código no qual criamos uma thread e a agendamos para execução paralela com a thread principal da aplicação. Note como os valores dos dois laços são exibidos de forma compartilhada pelas duas threads, ou seja, um thread exibe alguns valores e pára, para permitir que a outra faça parte do seu trabalho:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

Aqui eu usei a sintáxe de criação de objetos da classe Thread que cria uma instância de ThreadStart nos bastidores, ou seja, forneci apenas o método a ser executado pela nova thread. Note também que uma chamada ao método Start() da thread não faz com que a thread seja executada imediatamente. Este método apenas torna a thread elegível para execução, ou seja, no estado "pronta" (Running). É o sistema operacional que determina quando a mesma será executada.


C# ::: Fundamentos da Linguagem ::: Estruturas de Controle

C# para iniciantes - Como usar o laço for da linguagem C#

Quantidade de visualizações: 10789 vezes
O laço for em C# é usado quando queremos executar uma instrução ou um bloco de instruções um determinado número de vezes. Este laço é composto de três partes:

Inicialização: Laços for são controlados por uma variável de controle. Nesta parte nós definimos o tipo de dados e o valor inicial desta variável. Esta parte do laço é executada somente na primeira iteração.

Teste da condição de parada: Cada iteração do laço acontece mediante uma condição. Esta condição é avaliada e, caso o retorno seja satisfatório, a execução do laço continua. O resultado da avaliação desta parte do laço deve ser true ou false. Tenha em mente que, se a condição já for falsa na primeira iteração, o laço nunca será executado.

Incremento ou decremento da variável de controle: Esta parte do laço é executada após cada iteração. É aqui que incrementamos ou decrementamos o valor da variável de controle. Esta parte é importante. Não manipular o valor da variável de controle pode resultar em laços infinitos.

Veja um laço for no qual contamos de 0 a 10:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

Veja agora um laço for que exibe os números pares de 0 a 10:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

E finalmente, um laço for que conta de 10 até 0:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

Com exceção da parte do teste de condição de parada, as demais partes de um laço for podem conter múltiplas instruções separadas por vírgulas. Veja:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso



C# ::: Dicas & Truques ::: Strings e Caracteres

Como transformar um array de caracteres em uma string usando C#

Quantidade de visualizações: 8442 vezes
Nesta dica mostrarei como podemos usar a função ToCharArray() da classe String da linguagem C# para converter todos os caracteres de uma palavra, frase ou texto em um vetor de chars. Em seguida nós usaremos o método Reverse() da classe Array para inverter a ordem dos elementos do vetor. Finalmente nós passamos este vetor para o construtor da classe String para obter a string original novamente, só que desta vez, com a ordem de suas letras invertidas.

Veja o código C# completo para o exemplo:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

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

Frase original: Gosto de C#
Frase invertida: #C ed otsoG


C# ::: Dicas & Truques ::: Strings e Caracteres

Apostila C# para iniciantes - Como remover todos os espaços de uma string usando o método Replace() da classe String do C#

Quantidade de visualizações: 12781 vezes
Nesta dica mostrarei como tirar proveito do método Replace() da classe String do C# para remover todos os espaços de uma frase ou texto. Note que, usando esta técnica, todos os espaços serão removidos, tanto no início, quanto no meio ou fim da string.

Veja o código completo para o exemplo:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

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

Com espaços: Gosto muito de C#
Sem espaços: GostomuitodeC#


C# ::: Dicas & Truques ::: Rotinas de Conversão

Como converter um tipo string para um tipo decimal em C# usando o método Parse() da classe Decimal

Quantidade de visualizações: 11273 vezes
Este exemplo mostra como converter uma string em um valor do tipo decimal. Para isso nós vamos usar o método Parse() da classe Decimal da linguagem C#. No entanto, é preciso termos cuidado, pois este método pode lançar três tipos de exceções: ArgumentNullException, FormatException e OverflowException.

Veja o trecho de código a seguir:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

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

Valor convertido com sucesso: 530,54

Se tentarmos atribuir um valor string a um tipo decimal, sem efetuar a conversão, teremos o seguinte erro de compilação:

Cannot implicitly convert type string to decimal


Veja mais Dicas e truques de C#

Dicas e truques de outras linguagens

Linguagens Mais Populares

1º lugar: Java
2º lugar: C#
3º lugar: PHP
4º lugar: Python
5º lugar: Delphi
6º lugar: JavaScript
7º lugar: C
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Elétrica pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 15 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..


© 2021 Arquivo de Códigos - Todos os direitos reservados | Versión en Español | Versão em Português