Você está aqui: C# ::: Desafios e Lista de Exercícios Resolvidos ::: C# Básico |
Escreva um programa em C# para ler, calcular e escrever a média aritmética entre dois números - Desafio de Programação Resolvido em C#Quantidade de visualizações: 576 vezes |
Pergunta/Tarefa: Escreva um programa em C# para ler, calcular e escrever a média aritmética entre dois números. Sua saída deverá ser parecida com: Informe um número: 9 Informe outro número: 2 A média entre os dois números é: 5.5 Veja a resolução completa para o exercício em C#, comentada linha a linha: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- using System; namespace Estudos { class Principal { // função principal do programa C# static void Main(string[] args) { // variáveis usadas na resolução do problema double n1, n2, media; // vamos ler o primeiro número Console.Write("Informe um número: "); n1 = Double.Parse(Console.ReadLine()); // vamos ler o segundo número Console.Write("Informe outro número: "); n2 = Double.Parse(Console.ReadLine()); // agora vamos calcular a média aritmética media = (n1 + n2) / 2; // e mostramos o resultado Console.WriteLine("A média entre os dois números é: " + media); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } |
![]() |
C# ::: Coleções (Collections) ::: ArrayList |
Como escrever um método C# que retorna uma ArrayListQuantidade de visualizações: 17291 vezes |
Estudantes C# ficam um pouco confusos quando solicitados a escrever funções que retornam objetos de classes. E essa confusão é maior ainda quando precisam retornar uma ArrayList, mais precisamente um objeto da classe ArrayList. Esta dica mostra como isso pode ser feito. Veja que temos um método que define, em sua assinatura, que o tipo de retorno não é void (sem retorno) mas sim um objeto da classe ArrayList. No corpo deste método temos a criação da ArrayList propriamente dita, a adição de cinco inteiros e finalmente o uso da palavra-chave return para retornar o ArrayList já preenchido ao chamador do método. Note que o método Main é responsável por efetuar uma chamada ao método, obter o ArrayList resultante e em seguida usar o laço foreach para exibir seus valores: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- // método que retornará uma ArrayList static ArrayList obterLista(){ // Cria o ArrayList ArrayList lista = new ArrayList(); // Adiciona 5 inteiros lista.Add(1); lista.Add(2); lista.Add(3); lista.Add(4); lista.Add(5); // retorna o ArrayList preenchido return lista; } static void Main(string[] args){ // obtém um ArrayList preenchido a partir do // método obterLista ArrayList mLista = obterLista(); // exibe os valores do ArrayList foreach (int valor in mLista){ Console.Write("{0} ", valor); } // pausa o programa Console.ReadKey(); } |
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como remover espaços em branco no início e final de uma string C# usando o método Trim() da classe StringQuantidade de visualizações: 13771 vezes |
Nesta dica mostrarei como podemos usar a função Trim() da classe String da linguagem C# para remover os espaços no início e no fim de uma palavra, frase ou texto. Esta técnica é muito útil quando estamos trabalhando com dados informados pelos usuários de nossas aplicações. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- using System; namespace Estudos { class Program { static void Main(string[] args) { string texto = " temos espaços no início e fim "; Console.WriteLine(texto); // remove os espaços no início e fim da string texto = texto.Trim(); Console.WriteLine("." + texto + "."); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- temos espaços no início e fim .temos espaços no início e fim. |
C# ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de C# - Como verificar quantas vezes um valor é encontrado em um vetor - Como usar vetores e matrizes em C#Quantidade de visualizações: 350 vezes |
Pergunta/Tarefa: Escreva um programa C# que declara, constrói e inicializa um vetor de 10 inteiros. Em seguida peça para que o usuário informe um valor a ser pesquisado. Faça uma varredura no vetor e informe quantas vezes o valor pesquisado é encontrado: // declara, constrói e inicializa um vetor de 10 inteiros int[] valores = {4, 21, 9, 8, 12, 21, 4, 4, 1, 10}; Informe um valor: 4 O valor foi encontrado: 3 vezes Informe um valor: 8 O valor foi encontrado: 1 vezes Informe um valor: 3 O valor foi encontrado: 0 vezes Veja a resolução comentada deste exercício usando C#: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- using System; namespace Estudos { class Principal { // função principal do programa C# static void Main(string[] args) { // declara, constrói e inicializa um vetor de 10 inteiros int[] valores = { 4, 21, 9, 8, 12, 21, 4, 4, 1, 10 }; // vamos ler um valor inteiro Console.Write("Informe um valor: "); int pesquisa = Int32.Parse(Console.ReadLine()); // vamos verificar quantas vezes o valor informado está // contido no vetor int repeticoes = 0; for (int i = 0; i < valores.Length; i++) { if (valores[i] == pesquisa) { repeticoes++; // encontrou? vamos contar esta ocorrência } } // vamos mostrar o resultado Console.WriteLine("O valor foi encontrado: " + repeticoes + " vezes"); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } |
C# ::: LINQ ::: LINQ to Objects |
Como retornar o último elemento de um array de strings em C# usando a função Last() do LINQQuantidade de visualizações: 1142 vezes |
Nesta dica mostrarei um exemplo bem simples do uso do método Last() do LINQ (Language-Integrated Query) do C# para retornar o último elemento de um vetor de strings. É claro que este método funciona com qualquer coleção, mas um exemplo simples nos ajudará a entender melhor o seu funcionamento. Em outras dicas eu aprofundo o uso deste método. Vamos ao código então. Veja: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- using System; using System.Linq; namespace Estudos { class Principal { static void Main(string[] args) { // vamos construir um vetor de strings string[] linguagens = {"Java", "Python", "PHP", "Ruby"}; // vamos obter o último elemento do vetor string ultimo = linguagens.Last(); // vamos mostrar o resultado Console.WriteLine("A última linguagem é: {0}", ultimo); Console.WriteLine("\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: A última linguagem é: Ruby Fique atento ao fato de que o método Last() pode atirar uma exceção do tipo InvalidOperation se o array ou coleção estiver vazia ou não incluir nenhum elemento que se encaixe nas condições testadas. Veja o resultado ao chamarmos este método em um vetor vazio: System.InvalidOperationException HResult=0x80131509 Message=Sequence contains no elements Source=System.Linq StackTrace: at System.Linq.ThrowHelper.ThrowNoElementsException() at System.Linq.Enumerable.Last[TSource](IEnumerable`1 source) at Estudos.Principal.Main(String[] args) in C:\estudos_c#\Estudos\Principal.cs:line 11 |
C# ::: Dicas & Truques ::: Matemática e Estatística |
Apostila C# para iniciantes - Como calcular juros compostos e montante usando C#Quantidade de visualizações: 13961 vezes |
O regime de juros compostos é o mais comum no sistema financeiro e portanto, o mais útil para cálculos de problemas do dia-a-dia. Os juros gerados a cada período são incorporados ao principal para o cálculo dos juros do período seguinte. Chamamos de capitalização o momento em que os juros são incorporados ao principal. Após três meses de capitalização, temos: 1º mês: M = P .(1 + i) 2º mês: o principal é igual ao montante do mês anterior: M = P x (1 + i) x (1 + i) 3º mês: o principal é igual ao montante do mês anterior: M = P x (1 + i) x (1 + i) x (1 + i) Simplificando, obtemos a fórmula: M = P . (1 + i)^n Importante: a taxa i tem que ser expressa na mesma medida de tempo de n, ou seja, taxa de juros ao mês para n meses. Para calcularmos apenas os juros basta diminuir o principal do montante ao final do período: J = M - P Vejamos um exemplo: Considerando que uma pessoa empresta a outra a quantia de R$ 2.000,00, a juros compostos, pelo prazo de 3 meses, à taxa de 3% ao mês. Quanto deverá ser pago de juros? Veja o código C# para a resolução: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- static void Main(string[] args){ double principal = 2000.00; double taxa = 0.03; int meses = 3; double montante = principal * Math.Pow((1 + taxa), meses); double juros = montante - principal; Console.WriteLine("O total de juros a ser pago é: " + juros); Console.WriteLine("O montante a ser pago é: " + montante); Console.WriteLine("Pressione qualquer tecla para sair..."); // pausa o programa Console.ReadKey(); } Um outra aplicação interessante é mostrar mês a mês a evolução dos juros. Veja o código a seguir: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- static void Main(string[] args){ double principal = 2000.00; double taxa = 0.03; int meses = 3; double anterior = 0.0; for(int i = 1; i <= meses; i++){ double montante = principal * Math.Pow((1 + taxa), i); double juros = montante - principal - anterior; anterior += juros; Console.WriteLine("Mês: " + i + " - Montante: " + montante + " - Juros: " + juros); } Console.WriteLine("Pressione qualquer tecla para sair..."); // pausa o programa Console.ReadKey(); } |
C# ::: Namespace System.Windows.Forms ::: Formulários e Janelas |
Como usar a classe Form em suas aplicação C# Windows FormQuantidade de visualizações: 1066 vezes |
A classe Form é usada para representar as janelas (formulários) ou caixas de diálogo que compõem a interface gráfica de uma aplicação Windows Forms. Veja sua posição na hierarquia de classes da plataforma.NET:System.Object System.MarshalByRefObject System.ComponentModel.Component System.Windows.Forms.Control System.Windows.Forms.ScrollableControl System.Windows.Forms.ContainerControl System.Windows.Forms.Form É importante conhecer algumas classes derivadas da classe Form. Entre estas classes podemos citar: - System.ComponentModel.Design.CollectionEditor.CollectionForm - System.Messaging.Design.QueuePathDialog - System.ServiceProcess.Design.ServiceInstallerDialog - System.Web.UI.Design.WebControls.CalendarAutoFormatDialog - System.Web.UI.Design.WebControls.RegexEditorDialog - System.Windows.Forms.Design.ComponentEditorForm - System.Windows.Forms.PrintPreviewDialog - System.Windows.Forms.ThreadExceptionDialog Uma aplicação Windows Forms em C# é construida a partir de uma ou mais janelas. A classe Form permite criar formulários padrões, de ferramentas, sem bordas e flutuantes, cada um direcionado a uma determinada funcionalidade. É possível também usar a classe Form para criar caixas de diálogo modais. Há ainda um tipo especial de janela (ou formulário) conhecido como formulário de interface de múltiplos documentos (MDI) que contêm outros formulários chamados de filhos (MDI child forms). Uma janela do tipo MDI pode ser criada definindo-se o valor true para a propriedade IsMdiContainer da classe Form. Os formulários filhos MDI são criados definindo-se o nome do formulário-pai para a propriedade MdiParent do formulário que atuará como filho. Por meio das propriedades disponíveis na classe Form nós podemos determinar a aparência, tamanho, cor e os aspectos de gerenciamento da janela do formulário ou caixa de diálogo que estamos criando. A propriedade Text permite definir o título da janela. As propriedades Size e DesktopLocation permitem definir o tamanho e posição inicial da janela. A propriedade ForeColor define a cor do texto padrão de todos os componentes colocados no formulário. As propriedades FormBorderStyle, MinimizeBox e MaximizeBox permitem definirmos se o formulário poderá ser minimizado, maximizado ou redimensionado em tempo de execução. Além das propriedades, podemos usar os métodos da classe Form. Por exemplo, podemos usar o método ShowDialog() para exibir um formulário como uma caixa de diálogo modal. Podemos também efetuar uma chamada ao método SetDesktopLocation() para posicionar o formulário em uma determinada região do desktop. Os eventos disponíveis na classe Form permitem responder às ações realizadas no formulário. Podemos, por exemplo, usar o evento Activated para realizar operações tais como atualizar as informações exibidas nos controles do formulário quando este for ativado. Se estiver usando o Visual Studio 2005, 2008 ou mais recente, o formulário inicial de sua aplicação Windows Forms C# já será exibido inicialmente seguinte os seguintes passos: a) Vá no menu File -> New -> Project; b) Em Project types selecione Visual C# -> Windows; c) Em Templates selecione Windows Application; d) Dê um nome para o projeto, escolha um local, um nome para a solução e clique OK. Imediatamente o projeto será criado e você já verá o formulário principal da aplicação. e) Vá em View -> Toolbox. Clique e arraste alguns componentes para o formulário; f) Pressione F5 e execute a aplicação. Pronto! Agora é só verificar todas as dicas, truques e anotações para aprender e tirar proveito total da classe Form. |
C# ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como retornar o tamanho de um array em C# usando a propriedade LengthQuantidade de visualizações: 8017 vezes |
Nesta dica mostrarei como saber a quantidade de elementos em um vetor do C# usando a sua propriedade Length. Por quantidade de elementos nós estamos falando do tamanho do array. Veja o código C# completo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- 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"}; // obtém a quantidade de elementos no array int quant = cidades.Length; Console.WriteLine("Este array possui {0} elementos.", quant); 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 4 elementos. |
C# ::: Coleções (Collections) ::: ArrayList |
Como percorrer os elementos de uma ArrayList do C# usando um objeto da interface IEnumeratorQuantidade de visualizações: 8521 vezes |
Um objeto da interface IEnumerator (no namespace System.Collections) pode ser usado para percorrer os elementos de uma coleção não-genérica, como é o caso da classe ArrayList. Podemos usar um enumerador para acessar os itens da lista individualmente, mas estes não poderão sofrer modificações por meio do enumerador. Um enumerador para uma ArrayList é obtido por meio do método GetEnumerator(). Veja: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- // vamos obter um enumerador para a lista IEnumerator enumerador = lista.GetEnumerator(); Observe agora um trecho de código no qual temos uma lista contendo 5 inteiros. Note o uso de um IEnumerator para percorrer os elementos e exibir o valor contido no elemento atual: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- static void Main(string[] args){ // não se esqueça // using System.Collections; // Cria o ArrayList ArrayList lista = new ArrayList(); // Adiciona 5 inteiros lista.Add(65); lista.Add(2); lista.Add(13); lista.Add(97); lista.Add(4); // vamos obter um enumerador para a lista IEnumerator enumerador = lista.GetEnumerator(); // vamos percorrer a lista usando o enumerador while(enumerador.MoveNext()){ Console.WriteLine(enumerador.Current); } Console.Write("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } Para saber mais sobre os enumeradores, consulte minhas dicas sobre a interface IEnumerator. |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
Introdução à Ética Como e por que julgamos que uma ação é correta ou não? Quais os critérios que devem ser utilizados para tal? Várias respostas são, hoje, dadas a essas perguntas. Podemos afirmar que a ação correta é aquela que: A) Considera a felicidade dos grupos prevalecentes, como as elites. B) É praticada por um agente inerentemente bom e sem influência social C) Está de acordo com regras próprias de grupos minoritários com interesses duvidosos. D) É considerada a melhor ação pela subjetividade do sujeito em suas reflexões. E) É aquela que está adequada às leis, regras e normas legais do Estado. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Bombas hidráulicas As bombas hidráulicas são um grupo de máquinas hidráulicas muito comum em sistemas de abastecimento e distribuição de água de uma cidade. Resumidamente, as bombas captam água bruta e a transportam para uma estação de tratamento para que ela seja adequada aos parâmetros de potabilidade antes do fornecimento para os usuários. Sobre as bombas hidráulicas, o que é correto afirmar? A) As bombas hidráulicas podem ser dividas em: centrífugas, rotativas, de êmbolo e do tipo de poços profundos. B) As bombas hidráulicas podem ser dividas em: centrípetas, rotacionais, de pistão e do tipo poços largos-rasos. C) As bombas hidráulicas podem ser divididas em bombas de deslocamento positivo e bombas centrífugas. D) As bombas hidráulicas podem ser agrupadas junto com as turbinas hidráulicas no grupo de máquinas fixas. E) As bombas centrífugas não são muito utilizadas, apesar de sua aplicação em baixas pressões e altas vazões. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Vidros Qual dos tipos abaixo não é um vidro: A) Soda-cálcico. B) Boro-silicato. C) Ao chumbo. D) Quartzitos. E) Alumínio borosilicato. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
O projeto de instalação hidrossanitária Um projeto de instalações hidrossanitárias é composto por redes hidráulicas (constituído de água fria e água quente), bem como redes sanitárias (esgoto), ventilação e rede pluvial. Para obras de grande porte, o projeto de proteção contra incêndio também está englobado no projeto de instalação hidrossanitária. Sobre as instalações hidrossanitárias em uma obra de pequeno porte, assinale a afirmativa correta: A) No projeto de esgotamento, a fossa séptica é aplicada para que as águas servidas convertam totalmente a matéria orgânica em gases. B) Alterações de percurso e de extensão não afetam o dimensionamento dos tubos de abastecimento de água, desde que não exista alteração de diâmetro. C) O shaft normalmente é acessível por painéis removíveis ou aberturas que permitem a verificação horizontal do abastecimento de todos os pavimentos do edifício em um só local. D) Um dos papéis do fecho hídrico do sifão sanitário é barrar a passagem de gases (odores) para o ambiente. E) É recomendável que se utilize o diâmetro mínimo de 100mm em toda a tubulação para evitar entupimentos. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em JavaScript |
Qual é a forma correta de adicionar comentários de uma linha em JavaScript? A) <!-- Este é um comentário --> B) // Este é um comentário C) ' Este é um comentário D) # Este é um comentário 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 |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |