对于学校项目,我必须使用代码来破译用逗号分隔的一行数字。
例如,用户可以输入一个输入:
10,8.5,11,10.5,7.5,5,6
并使用提供的密钥,这将是输出:
sputnik
我需要接受上面的输入,并以某种方式将每个数字(在逗号之间)转换为向量,然后我将要解密每个值。
我已经将字符串用于其他密码(rot13和rot6),但在这种情况下,仅仅字符串就不起作用了。显然。
我可以使用for循环轻松地一次执行一个值,但我不认为这是他想要的。
任何帮助将不胜感激!感谢。
答案 0 :(得分:0)
你可以做一些简单的事情:
std::vector<double> data;
double value = 0.0;
while (my_data_file >> value)
{
data.push_back(value);
char comma;
my_data_file >> comma;
}
如果必须使用数组,则等效于:
const size_t MAXIMUM_DATA = 32;
double data[32];
double value;
size_t array_index = 0;
while ((array_index < MAXIMUM_DATA) && (my_data_file >> value))
{
data[array_index] = value;
++array_index;
char comma;
my_data_file >> comma;
}