Advertisement
Guest User

Untitled

a guest
Apr 24th, 2019
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.13 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4.  
  5. namespace DP
  6. {
  7. class MainClass
  8. {
  9. public static void Main(string[] args)
  10. {
  11. Console.WriteLine("Hello World!");
  12.  
  13. //Урал делал:
  14. //FiboNumbers(Convert.ToInt32(Console.ReadLine()));
  15. //IsNumberFibo(Convert.ToInt32(Console.ReadLine()));
  16.  
  17. //-----------
  18.  
  19. //Райнур делал
  20. ////5ая задача Снова Фибоначчи
  21. //var number = Convert.ToInt32(Console.ReadLine());
  22. //Console.WriteLine(FibonachiLastNumber(number));
  23. ////4ая задача Слово
  24. //var str = Console.ReadLine();
  25. //Console.WriteLine(FibonachiWord(str));
  26.  
  27. }
  28.  
  29.  
  30. //3 и 5 задача
  31. public static int FibonachiLastNumber(int count)
  32. {
  33. if (count < 0) return -1;
  34.  
  35. //1 1 2 3 5
  36. var a = 1;
  37. var b = 1;
  38. var c = 1;
  39.  
  40. for (int i = 2; i <= count; i++)
  41. {
  42. c = a + b;
  43. a = b;
  44. b = c;
  45.  
  46. }
  47.  
  48. return c;
  49.  
  50. }
  51.  
  52. //задача 4 Слово
  53. public static string FibonachiWord(string str)
  54. {
  55. var count = str.Length;
  56.  
  57. StringBuilder sb = new StringBuilder();
  58.  
  59. //1 1 2 3 5
  60. var a = 0;
  61. var b = 1;
  62. var c = 1;
  63.  
  64.  
  65. var listOfFibonachi = new List<int>();
  66. for (int i = 1; i <= count; i++)
  67. {
  68. c = a + b;
  69. a = b;
  70. b = c;
  71. if (c > count) break;
  72. listOfFibonachi.Add(c);
  73. }
  74.  
  75. foreach (var index in listOfFibonachi)
  76. {
  77. sb.Append(str[index-1]);
  78. }
  79.  
  80.  
  81.  
  82. return sb.ToString();
  83.  
  84. }
  85.  
  86. //числа фибоначи
  87. public static void FiboNumbers(int index)
  88. {
  89. if (index == 0)
  90. {
  91. Console.WriteLine(0);
  92. }
  93.  
  94. if (index <= 2)
  95. {
  96. Console.WriteLine(1);
  97. }
  98.  
  99. if (index > 2)
  100. {
  101. List<int> listOfFiboNumbers = new List<int>();
  102. listOfFiboNumbers.Add(1);
  103. listOfFiboNumbers.Add(1);
  104.  
  105. for (int i = 2; i < index; i++)
  106. {
  107. listOfFiboNumbers.Add(listOfFiboNumbers[i - 2] + listOfFiboNumbers[i - 1]);
  108. }
  109. Console.WriteLine(listOfFiboNumbers[index - 1]);
  110. }
  111. }
  112.  
  113. //Числа Фибоначчи - 2
  114. public static void IsNumberFibo(int number)
  115. {
  116. int lastNumber = 0;
  117. int place = 0;
  118. int a = 0, b = 1;
  119.  
  120. while (lastNumber < number)
  121. {
  122. a = b;
  123. b = lastNumber;
  124. lastNumber = a + b;
  125. place++;
  126. }
  127.  
  128. if (lastNumber == number)
  129. {
  130. Console.WriteLine(1);
  131. Console.WriteLine(place);
  132. }
  133. else Console.WriteLine(0);
  134. }
  135.  
  136. //3 и 4 задача
  137. public static void LastFiboNumber(int index)
  138. {
  139. if (index <= 1)
  140. {
  141. Console.WriteLine(1);
  142. }
  143.  
  144. if (index > 2)
  145. {
  146. List<int> listOfFiboNumbers = new List<int>();
  147. string lastNumber;
  148. listOfFiboNumbers.Add(1);
  149. listOfFiboNumbers.Add(1);
  150.  
  151. for (int i = 2; i < index; i++)
  152. {
  153. listOfFiboNumbers.Add(listOfFiboNumbers[i - 2] + listOfFiboNumbers[i - 1]);
  154. }
  155.  
  156. lastNumber = listOfFiboNumbers[index - 1].ToString();
  157.  
  158. Console.WriteLine(lastNumber[lastNumber.Length - 1]);
  159. }
  160. }
  161.  
  162. }
  163. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement