题目描述
对于某抢票系统,存在一个长度为六的验证码,验证码可以为整形,字符型,浮点型,我们认为验证码是有效的当且仅当验证码是非递减序列。现请你利用函数模板,完成对验证码的检验
输入
测试数据有多组,每组测试数据给出验证码类型以及一串验证码
输出
输出验证的结果
输入样例:
c
a b c d e f
i
1 2 3 4 5 6
f
1.1 1.2 1.3 4 5 6
c
f e v a c s
输出样例
Valid
Valid
Valid
Invalid
#include<iostream>
using namespace std;
#define N 6
template <class T>
void Captcha(T arr[])
{
for (int i = 1; i < N; i++)
{
if (arr[i] - arr[i - 1] < 0)
{
cout << "Invalid" << endl;
return;
}
}
cout << "Valid" << endl;
}
int main()
{
int t;
char ch;
while (cin >> ch)
{
if (ch == 'i')
{
int* arr = new int[N];
for (int i = 0; i < N; i++)
{
cin >> arr[i];
}
Captcha<int>(arr);
delete[]arr;
}
else if (ch == 'c')
{
char* arr = new char[N];
for (int i = 0; i < N; i++)
{
cin >> arr[i];
}
Captcha<char>(arr);
delete[]arr;
}
else if (ch == 'f')
{
float* arr = new float[N];
for (int i = 0; i < N; i++)
{
cin >> arr[i];
}
Captcha(arr);
delete[]arr;
}
}
}