我们的专业人员分配了这个项目,但我不知道该怎么做。通常情况下,我会自己解决这个问题,但是我在同一天收到了大量的英文论文,我也必须在本周末完成。该计划将于2013年12月11日到期,但可以在2013年11月19日之前上交,等级为20%。
生成一个数字表,用于数学问题。
询问用户三个数字:
迭代选定的值,从迭代中的每个值生成并保存以下派生值:
方
平方根(仅当值为正或零时,显示“N / A”) 所有其他值)
将计算结果保存在一组数组中,每个计算值一个数组。
计算并保存所有值后,以表格形式显示值,每个计算值包含一列,每组值包含一行(对应于从用户读取的第一个值)。
请注意,对于第一列中的每个负值,在平方根和立方根的列中显示“N / A”。
为每个数字的偶数/奇数状态显示“偶数”或“奇数”。数字的素数显示“真”或“假”。
重复此过程,直到用户为表中的值数输入零计数。
奖励:从名为triples.txt的数据文件中读取一系列三位数集,并创建一个与每个三位数组对应的数字表。将生成的数字表保存为以逗号分隔值格式命名为numbers.csv的单个文本文件。
// TABLEation.cpp : builds a table based on user input.
//
using namespace std;
double square, squareroot,cube,cuberoot;
int initialValue,display,increment;
string even,prime;
const int SIZE=25;
int Value[SIZE];
bool isEven( int integer )
{
if ( integer % 2== 0 )
return true;
else
return false;
}
bool isPrime(int testValue) {
int divisor=0, remainder=0;
if (testValue<2) return false;
for(divisor=2; divisor<=sqrt(testValue);divisor++){
if((testValue % divisor)==0) return false;
}
return true;
}
int _tmain()
{
do{
begining:
cout<<"Enter how many values to show (1-25)."<<endl;
cin>>display;
if((display>0) && (display<=25)){
cout<<"Enter an initial Value (-1000 to 1000)."<<endl;
cin>>initialValue;
}
else{
cout<<"ERRROR! INVALID INPUT!TRY AGAIN"<<endl;
goto begining;
}
if ((initialValue>= -1000) && (initialValue<=1000)){
cout<<"Enter a number to increment by (1-20)"<<endl;
cin>>increment;
}
else{
cout<<"ERRROR! INVALID INPUT!TRY AGAIN"<<endl;
goto begining;
}
}
system("pause");
return 0;
}
我应该从哪里开始?
答案 0 :(得分:4)
由于上面没有任何问题,我猜你想让别人给你答案,或者给你一些正确方向的提示。我假装你要追求后者。问题相当简单。
Generate a table of numbers for use in a math problem.
Ask the user for three numbers:
The first number represents how many values are to be in the table (1 to 25).
he second number represents the first value in the table. (-1000 to +1000)
The third number represents the increment between successive values in the table. (1 to 20)
由于下面我们看到你要循环询问这些问题,直到第一个答案为0你可以构建一个函数“bool get_input(int&amp; num_values,int&amp; start_num,int&amp; increment)”这个函数如果用户输入的值不在范围内,则返回false,否则返回true。现在在while循环中调用此函数,如果num_values为0,则退出。
Iterate through the selected values, generating and saving the following derived values from each value in the iteration:
这是一个for循环,其中i = start_num,并且在每次迭代时增加i + = increment
对于for循环的每次迭代,您应该调用以下六个函数:
Square
int square(int i)返回值的平方。
Square Root (only if the value is positive or zero, display “N/A” for all other values)
bool extract_square_root(int i,float&amp; square_root)如果值为负则返回false,否则将平方根放入引用变量。
Cube
int cube(int i),它返回值的多维数据集。
Cube Root (only if the value is positive or zero, display “N/A” for all other values)
bool extract_cube_root(int i,float&amp; cube_root) - 如上所述
Whether the number is even or odd
bool even_or_odd(int i)如果值为偶数则返回true,否则返回false。
Whether the number is prime or not (Prepare a user-defined function based on the logic in Assignment 5)
bool prime(int i)如果值为prime,则返回true。 (使用作业5)。
Save the results of the calculations in a set of arrays, one array for each calculated value.
每个结果将它存储在一个数组中(square_root_array,cube_root_array等)
After all values are calculated and saved, display the values in a tabular form with one column for each calculated value and a row for each set of values (corresponding to the first value read from the user).
调用函数void display_values(float square_root_array [],...),它遍历每个数组并根据下面列出的规则打印值:
Note that for each negative value in the first column, display “N/A” in the columns for square root and cube root.
Display “Even” or “Odd” for each number’s even/odd status.
Display “True” or “False” for the number’s prime-ness.
下一部分已由我们的while循环处理。
Repeat this process until the user enters a count of zero for the number of values in the table.
我会留下奖金让你弄明白。
Bonus: Read a series of three-number sets from a data file named triples.txt and create a table of numbers corresponding to each three-number set. Save the resulting tables of numbers to a single text file named numbers.csv in comma-separated-value format.
祝你好运,如果计划服用大量的CS,我会习惯所有的工作。这是课程的标准。
P.S。如果您按照这些指示查看如何在不确定的地方完成每个步骤,您可以在几个小时内将此项目从盘子中取出。