По тексту вывести последовательность Фибоначчи - C#
Формулировка задачи:
Нужно заменить буквы слова на последовательность Фибоначчи, начиная с тройки и после каждого числа ставить #. Например, букве "а" соответствует - 3, букве "б" - 5, букве "в" - 8 и т.д.
Пример:
Часть кода:
Ввод:
привет
Вывод:
6765#10946#233#8#34#28657
string str = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя"; string output = ""; int[] a = new int[str.Length]; a[0] = 3; a[1] = 5; for (int i = 2; i < str.Length; i++) { a[i] = a[i - 1] + a[i - 2]; } for (int i = 0; i < str.Length; i++) { if(i == 0) { output += a[i]; } else { output += "#" + a[i]; } } Console.Write("{0}", output);
Решение задачи: «По тексту вывести последовательность Фибоначчи»
textual
Листинг программы
using System; using System.Linq; using System.Collections.Generic; class Program { static void Main() { Dictionary<char, string> fib = new Dictionary<char, string>(); int a = 1; int b = 2; foreach (char ch in "абвгдеёжзийклмнопрстуфхцчшщьыъэюя") { int f = a + b; fib[ch] = f.ToString(); a = b; b = f; } Console.WriteLine(String.Join("#", "привет!".Select(ch => fib.ContainsKey(ch) ? fib[ch] : ch.ToString()) )); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д