Описать методы для выполнения задания двумя способами: через цикл и используя механизм рекурсии - C#

Узнай цену своей работы

Формулировка задачи:

Последовательность из латинских букв строится следующим образом. На нулевом шаге она пуста. На каждом последующем шаге последовательность удваивается, то есть приписывается сама к себе, и к ней слева добавляется очередная буква алфавита (a, b, c, …). По заданному числу n определить символ, который стоит на n-м месте последовательности, получившейся после шага m.

Помогите, пожалуйста.Желательно,решение по-простенькому.

Решение задачи: «Описать методы для выполнения задания двумя способами: через цикл и используя механизм рекурсии»

textual
Листинг программы
using System;
namespace lab
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("N -> ");
            int n = Int32.Parse(Console.ReadLine());
            Console.Write("M -> ");
            int m = Int32.Parse(Console.ReadLine());
            int step = 0;
            int st = 0;
            char symbol = ' ';
 
            string alf = "abcdefghijklmnopqrstuvwxyz";
            string s = "";
            string sub = "";
            foreach (char c in alf)
            {
                step++;
                if (step > m)
                {
                    st++;
                    sub = c + sub;
                    if (st == n)
                        symbol = c;
                }
                else
                    s = c + s;
                
            }
 
            Console.WriteLine("{0}\n{1}\nSymbol = '{2}'", s, sub, symbol);
 
            Console.ReadLine();
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.182 из 5
Похожие ответы