Написать рекурсивную процедуру для ввода с клавиатуры последовательности чисел(окончание...

0 голосов
73 просмотров

Написать рекурсивную процедуру для ввода с клавиатуры последовательности чисел(окончание ввода-0) и вывода ее на экран в обратном порядке. c#


Информатика (4.0k баллов) | 73 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Программа посимвольно читает стандартный ввод (клавиатура) и выбирает только цифры - все остальное игнорируется. Как результат, получает последовательность из натуральных чисел. Для завершения ввода нужно ввести "0". Любые символы после 0 считаны не будут.
\\\\\\\\\\\\\\\\\\\
using System;
namespace sequen {
    class Program {
        static string seq() {
            string res = "";
            char symb;
            while ((symb = (char)Console.Read()) != ' ' && symb != '\n') {
                if (symb >= '0' && symb <= '9')<br>                    res += symb.ToString();
            }
            if (res == "") return seq(); //Если ни один символ не подошел
            if (res != "0") return seq() + res + " "; // Если число считано
            else return ""; // Если конец
        }
        static void Main(string[] args) {
            Console.Write("Введите последовательность: ");
            Console.WriteLine("Результат: {0}", seq());
            Console.ReadKey();
        }
    }
}


image
(7.0k баллов)