栈  0.1
数据结构_第3章
ch3_7.cc
Go to the documentation of this file.
1 
12 #include "Ackermann.hh"
13 
36 int main(int argc, char const *argv[])
37 {
38  // Configure
39  bool recEn = true, stkEn = true;
40  int x, y;
41 
42  // time
43  time_t rawtime;
44  struct tm *timeinfo;
45 
46  time(&rawtime); // Get the current calendar time
47  timeinfo = localtime(&rawtime); // Convert time_t to tm as local time
48  printf("Current local time and date: %s\n", asctime(timeinfo)); // Convert tm structure to string
49 
50  if (argc > 3)
51  {
52  if (!strcmp("-s", argv[3])) // 用户指定用堆栈
53  recEn = false;
54 
55  if (!strcmp("-r", argv[3])) // 用户指定用系统栈
56  stkEn = false;
57  }
58 
59  if (argc > 2)
60  {
61  x = atoi(argv[1]);
62  y = atoi(argv[2]);
63 
64  if (stkEn)
65  Akm_t::Akm_loop(x, y);
66 
67  if (recEn)
68  Akm_t::Akm_rec(x, y);
69 
70  return 0;
71  }
72 
73  do
74  {
75  std::cout << "Input [m n]: ";
76  std::cin >> x >> y;
77  if (std::cin.fail())
78  {
79  std::cin.clear();
80  std::cin.sync();
81  continue;
82  }
83 
84  break;
85  } while (true);
86 
87  if (stkEn)
88  Akm_t::Akm_loop(x, y);
89 
90  if (recEn)
91  Akm_t::Akm_rec(x, y);
92 
93  return 0;
94 }
Akm_t::Akm_loop
static void Akm_loop(int x, int y)
堆栈版本的Ackermann函数
Definition: Ackermann.hh:117
Akm_t::Akm_rec
static void Akm_rec(int x, int y)
递归版本的Ackermann函数
Definition: Ackermann.hh:132
main
int main(int argc, char const *argv[])
Ackermann类测试例程
Definition: ch3_7.cc:36
Ackermann.hh
Ackermann库