a) What is the benefit of the statement temp = number ; for the program? What will happen if we eliminate it and use the variable number instead of temp in the inner while loop? Hint: Run the program with this modification and check the result!

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
100%
#include <stdio.h>
#includesstdlib.h>
int main(void){
int number , reverse = 0, digit , temp;
FILE *infile, *outfile;
int status;
//open the input file and check if an error occurred
infile = fopen( "numbers.txt" , "r" ); //open the input file
if(infile == NULL){
printf("Error: File \"numbers.txt\" not found!\n");
exit (1);
//open the output file and check if error occurred
outfile = fopen( "Report.txt" , "w" );
if(outfile == NULL){
printf("Error: File \"Report.txt\" can not be created!\n");
exit (1);
status = fscanf(infile , "%d" , &number);
//read first number from the file
/To read all the numbers in the file
while(status != EOF){
printf("%d is read from the file\n" , number);
fprintf(outfile , "%8d" , number);
//compute the reverse of the number
temp = number ;
reverse = 0;
while(temp != 0){
digit = temp % 10;
reverse = reverse * 10 + digit;
temp = temp/10;
printf("The reverse is: %d \n", reverse);
fprintf(outfile , "%8d" , reverse);
//check whether the number is palindrome
if(number == reverse){
printf("%d is a palindrome number! \n\n", number);
fprintf(outfile , "\t Palindrome\n" );
else{
printf("%d is not a palindrome number! \n\n", number);
fprintf(outfile , "\t Non-Palindrome\n" );
//read another number from the file
status = fscanf(infile , "%d" , &number);
//close the files
fclose(infile);
fclose(outfile);
return 0;
Transcribed Image Text:#include <stdio.h> #includesstdlib.h> int main(void){ int number , reverse = 0, digit , temp; FILE *infile, *outfile; int status; //open the input file and check if an error occurred infile = fopen( "numbers.txt" , "r" ); //open the input file if(infile == NULL){ printf("Error: File \"numbers.txt\" not found!\n"); exit (1); //open the output file and check if error occurred outfile = fopen( "Report.txt" , "w" ); if(outfile == NULL){ printf("Error: File \"Report.txt\" can not be created!\n"); exit (1); status = fscanf(infile , "%d" , &number); //read first number from the file /To read all the numbers in the file while(status != EOF){ printf("%d is read from the file\n" , number); fprintf(outfile , "%8d" , number); //compute the reverse of the number temp = number ; reverse = 0; while(temp != 0){ digit = temp % 10; reverse = reverse * 10 + digit; temp = temp/10; printf("The reverse is: %d \n", reverse); fprintf(outfile , "%8d" , reverse); //check whether the number is palindrome if(number == reverse){ printf("%d is a palindrome number! \n\n", number); fprintf(outfile , "\t Palindrome\n" ); else{ printf("%d is not a palindrome number! \n\n", number); fprintf(outfile , "\t Non-Palindrome\n" ); //read another number from the file status = fscanf(infile , "%d" , &number); //close the files fclose(infile); fclose(outfile); return 0;
a) What is the benefit of the statement temp = number; for the program? What will happen if we eliminate
it and use the variable number instead of temp in the inner while loop?
Hint: Run the program with this modification and check the result!
b) What is the purpose of the statement reverse = 0; in the program? What will happen if we didn't put it
before the inner while loop?
Hint: Run the program without this this statement and check the result!
Transcribed Image Text:a) What is the benefit of the statement temp = number; for the program? What will happen if we eliminate it and use the variable number instead of temp in the inner while loop? Hint: Run the program with this modification and check the result! b) What is the purpose of the statement reverse = 0; in the program? What will happen if we didn't put it before the inner while loop? Hint: Run the program without this this statement and check the result!
Expert Solution
steps

Step by step

Solved in 3 steps

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY