Você está aqui: C# ::: Dicas & Truques ::: Recursão (Recursividade) |
Como somar os elementos de um vetor em C# usando uma função recursiva - Linguagem C# para iniciantesQuantidade de visualizações: 347 vezes |
Em algumas ocasiões ficamos imaginando o que pode ser feito com os métodos e funções recursivas. A resposta é: praticamente tudo. Veja abaixo um programa C# completo no qual eu mostro como escrever uma função recursiva que recebe um array e mostra a soma de seus elementos (lembre-se de que um array é o mesmo que vetor, ou seja, uma matriz de uma linha e várias colunas): using System; namespace Estudos { class Principal { // função principal do programa C# static void Main(string[] args) { // vamos declarar um array de 10 elementos int[] valores = new int[10]; int soma; // vamos pedir ao usuário para informar os valores para o vetor for (int i = 0; i < 10; i++) { Console.Write("Informe o valor do elemento " + i + ": "); valores[i] = Int32.Parse(Console.ReadLine()); } // vamos efetuar uma chamada à função recursiva somar(); // nota que estamos passando o índice inicial, o tamanho do // array e o array em si soma = Somar(0, valores); Console.WriteLine("\nA soma dos elementos é: " + soma); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } // função recursiva para somar todos os elementos de um array public static int Somar(int indice, int[] vetor) { // o caso base...hora de encerrar a recursividade if (indice == (vetor.Length - 1)) { return vetor[indice]; } else { // ainda não é o caso base? vamos fazer uma nova chamada à função somar() return vetor[indice] + Somar(indice + 1, vetor); } } } } Ao executarmos este código C# nós teremos o seguinte resultado: Informe o valor do elemento 0: 7 Informe o valor do elemento 1: 3 Informe o valor do elemento 2: 1 Informe o valor do elemento 3: 3 Informe o valor do elemento 4: 8 Informe o valor do elemento 5: 9 Informe o valor do elemento 6: 4 Informe o valor do elemento 7: 3 Informe o valor do elemento 8: 2 Informe o valor do elemento 9: 6 A soma dos elementos é: 46 |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
Python - Como exibir os valores de 0 a 10 em ordem decrescente usando o laço for da linguagem Python C# - Como ordenar alfabeticamente os itens de uma ListBox do C# Windows Forms usando a propriedade Sorted |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |