Advertisement
Guest User

Untitled

a guest
Jun 19th, 2018
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.41 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace ConsoleApplication9
  8. {
  9. class Program
  10. {
  11. public static int ReadInteger()
  12. //ввод числа для красивых лаб
  13. {
  14. bool check = false;
  15. int IntNum;
  16. do
  17. {
  18. // Попытка перевести строку в число
  19. check = Int32.TryParse(Console.ReadLine(), out IntNum);
  20. // Если попытка неудачная:
  21. if (!check)
  22. Console.WriteLine("Некорректный ввод. Попробуйте ещё раз");
  23. } while (!check);
  24. // Если попытка удачная:
  25. return IntNum;
  26. }
  27.  
  28.  
  29.  
  30. public static int ReadNatural()
  31. //ввод числа для красивых лаб
  32. {
  33. bool check = false;
  34. int intNum;
  35. do
  36. {
  37. // Попытка перевести строку в число
  38. check = Int32.TryParse(Console.ReadLine(), out intNum);
  39. // Если попытка неудачная:
  40. if (!check)
  41. Console.WriteLine("Некорректный ввод. Попробуйте ещё раз");
  42. } while (!check);
  43. // Если попытка удачная:
  44. return intNum;
  45. }
  46. static void Sequence(int a1, int a2, int a3, int N, int M, ref bool ok, int count, int countThree)
  47. {
  48. int buf = a3;
  49. if (ok) return;
  50. a3 = 2 * Math.Abs(a3 - a2) + a1;
  51. if (a3 % 3 == 0) countThree++;
  52. count++;
  53. if (N == M)
  54. {
  55. Console.WriteLine("Программа остановилась из-за нахождения одинаковых элементов N и M");
  56. ok = true;
  57. return;
  58. }
  59. if (M == countThree && M > 0)
  60. {
  61. Console.WriteLine("Программа остановилась из-за нахождения M элементов.");
  62. ok = true;
  63. return;
  64. }
  65. if (N == count)
  66. {
  67. Console.WriteLine("Программа остановилась из-за достижения N элементов.");
  68. ok = true;
  69. return;
  70. }
  71. a1 = a2;
  72. a2 = buf;
  73. Sequence(a1, a2, a3, N, M, ref ok, count, countThree);
  74. }
  75. static void Main(string[] args)
  76. {
  77. Console.WriteLine("Введите a1");
  78. int a1 = ReadInteger();
  79. Console.WriteLine("Введите a2");
  80. int a2 = ReadInteger();
  81. Console.WriteLine("Введите a3");
  82. int a3 = ReadInteger();
  83. Console.WriteLine("Введите натуральное N");
  84. int N = ReadNatural();
  85. Console.WriteLine("Введите натуральное M");
  86. int M = ReadNatural();
  87. Console.WriteLine("a1={0} a2={1} a3={2} N={3} M={4} ", a1, a2, a3, N, M);
  88. bool k = false;
  89. Sequence( a1, a2, a3, N, M, ref k,0,0);
  90.  
  91.  
  92. }
  93. }
  94. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement