Given a simple program designed to take inputs of integers
from 1-1000 and to output the factorial value of that
number, how would you test this program? You do not have
access to the code. Please be as specific as possible.
Answers were Sorted based on User's Feedback
Answer / min soo kim
If the function that takes integers from 1 to 1000 can be
considered function f(n), then we could write the following
line of code
int i = 0;
int is_incorrect = 0;
for(i = 2; i <= 1000; i++)
{
// This is a simple for loop to divide a f(n) factorial
with f(n-1) factorial, which would give the result of n.
if(f(i) / f(i-1)) !- i)
{
is_incorrect = 1; // Mark the flag as incorrect, since
we did not get the value that we want.
break;
}
}
Is This Answer Correct ? | 17 Yes | 4 No |
Answer / tudor
write some programs to take a string input assumed to be
1000! 999! 500! or 1!, test the asspumption. and ouput the
result "OK" or "NOT OK"
Pass the output of program to be tested to your programs
using some scripting
e.g:
echo "testig 1!"
echo `echo "1" > targetprogram | test1fact`
echo "testig 500!"
echo `echo "500" > targetprogram | test500fact`
...
Also should test the output for 1001, 0, xyz, -1
Is This Answer Correct ? | 0 Yes | 0 No |
Answer / vaibhav nigam
@ Min Soo Kim
i will use your concept but in a better way like:
there is no need to make any f() function to calculate
factorial.
some lines of code:
main()
{
int a,b;
cin >> a;
bool check=1; //'1' for correct and '0' for wrong answer
if(a!=1)
check=0;
else {
for(int i=2; i<=1000; i++) {
cin >> b;
if(a*i!=b) {
check=0;
break;
}
a=b;
}
}
if(check)
printf("correct");
else
printf("wrong");
}
// since factorial(1000) is a very large value, so another
container can be used but logic remains same
Is This Answer Correct ? | 0 Yes | 0 No |
Answer / arati pradhan
Input 1 --> Check the result
Input 500 --> Check the result
Input 999--> Check the result
Input 1000-->Check the result
Is This Answer Correct ? | 7 Yes | 9 No |
What size is allocated to the union variable?
What is doubly linked list in c++?
Which of the following is not a valid declaration for main() a) int main() b) int main(int argc, char *argv[]) c) They both work
What is "strstream" ?
sir there is some problem with nokia5130c-2,when we are trying to upload movies from net then there is a error occurred"FORMAT NOT SUPPORTED" bt its all ready in 3gp format.please tell me what i do now?
Write a program which uses functions like strcmp(), strcpy()? etc
why c++ is not called strictly d super set of c?
how can u create a doubly linked list with out using pointers?
Is there any problem with the following: char *a=NULL; char& p = *a;?
Can we define a constructor as virtual in c++?
plz send me National informatics center paper pattern
What is an incomplete type in c++?