Input-Output Techniques: In all programming competition, or more specially, in all useful program, you require to read in input and process it. Though, the input data can be as horrible as possible, and this can be very troublesome to the parse.
If you spend too much time in the coding how to parse the input proficiently and you are utilizing C/C++ as your programming language, then this tip is especially for you. Let us see an illustration:
How to read the following input: 1 2 2 3 1 2 3 1 2 The fastest method to do it is:
#include <stdio.h> int N; void main() { while(scanf("%d",&N==1)){ process N… } }
There are N lines; each line always begins with character '0' followed by '.', then unknown number of digits x, lastly the line always terminated by three dots "...".
N 0.xxxx...
The fastest method to do it is:
#include <stdio.h> char digits[100]; void main() { scanf("%d",&N); for (i=0; i<N; i++) { scanf("0.%[0-9]...",&digits); // surprised? printf("the digits are 0.%s\n",digits); } }
This is the trick which many C/C++ programmers do not aware of. Why we state C++ while scanf/printf is a standard C I/O routine? This is since most of the C++ programmers "forcing" themselves to employ cin/cout all the time, devoid of realizing that scanf/printf can still be employed within all C++ programs. Advanced use of printf() and scanf():
Such who have forgotten the advanced use of printf() and scanf(), remind the following illustrations:
scanf("%[ABCDEFGHIJKLMNOPQRSTUVWXYZ]",&line); //line is a string
This scanf() function takes just upper-case letters as input to line and any other characters other than A….Z terminates the string. Likewise the following scanf() will behave like gets():
scanf("%[^\n]",line); //line is a string
Learn the default terminating characters for the scanf(). Using new line with scanf():
When the content of a file (input.txt) is
abc def
And the following program is performed to take input from file:
char input[100],ch; void main(void) { freopen("input.txt","rb",stdin); scanf("%s",&input); scanf("%c",&ch); }The following is a small modification to code: char input[100],ch; void main(void) { freopen("input.txt","rb",stdin); scanf("%s\n",&input); scanf("%c",&ch); }
What will be their respective value? The value of ch will be '\n' for the first code and 'd' for second code.Be careful about using gets() and scanf() together:
You must as well be careful about using gets() and scanf() in similar program. Test it with the following scenario. Code is as shown below:
scanf("%s\n",&dummy); gets(name); And the input file is: ABCDEF bbbbbXXX
What do you obtain as the value of name? "XXX" or "bbbbbXXX" (Here, ‘b’ signifies blank or space)
Latest technology based Programming Languages Online Tutoring Assistance
Tutors, at the www.tutorsglobe.com, take pledge to provide full satisfaction and assurance in Programming Languages help via online tutoring. Students are getting 100% satisfaction by online tutors across the globe. Here you can get homework help for Programming Languages, project ideas and tutorials. We provide email based Programming Languages help. You can join us to ask queries 24x7 with live, experienced and qualified online tutors specialized in Programming Languages. Through Online Tutoring, you would be able to complete your homework or assignments at your home. Tutors at the TutorsGlobe are committed to provide the best quality online tutoring assistance for Programming Languages Homework help and assignment help services. They use their experience, as they have solved thousands of the Programming Languages assignments, which may help you to solve your complex issues of Programming Languages. TutorsGlobe assure for the best quality compliance to your homework. Compromise with quality is not in our dictionary. If we feel that we are not able to provide the homework help as per the deadline or given instruction by the student, we refund the money of the student without any delay.
tutorsglobe.com vitamins assignment help-homework help by online nutrition tutors
tutorsglobe.com experiment to explain cohesion-tension assignment help-homework help by online transpiration pull theory tutors
Biology tutorial tutorial all along with the key concepts of Development of Sperm, Development of the egg, Gamete Interaction, Sperm-egg fusion, Egg activation and pronuclei formation, formation of gametes, zona pellucida and spermiogenesis
Financial ratios give a quick and comparatively simple means of assessing the financial health of a business.
tutorsglobe.com capital structure assignment help-homework help by online financial management tutors
Classification of Terpenes tutorial all along with the key concepts of Monoterpenes, Acyclic Monoterpenes, Monocyclic Monoterpenes, Bicyclic Monoterpenes, Sesquiterpenes, Diterpenes, Sesterpenes and Triterpenoids
tutorsglobe.com role of finance manager assignment help-homework help by online financial management tutors
We have finest Introductory development cell biology Assignment Help team of dedicated tutors committed to offer A++ papers at affordable prices.
Protozoa-Ciliophora tutorial all along with the key concepts of Characteristics of Protozoa-Ciliophora, Structure of Paramecium, Adaptive Features of Paramecium and Protozoans in categorization Hierarchy
Explore the brilliance of best International Economics Assignment Help instantly to secure top grades at budget-friendly prices.
tutorsglobe.com freshwater shortages assignment help-homework help by online fresh water crisis and management tutors
TutorsGlobe.com Alkanols-Characteristics of Alkanols Assignment Help-Homework Help by Online Access Chemistry Tutors
tutorsglobe.com class cestoidea assignment help-homework help by online parasitic helminthes tutors
We offer top-class Corporate Finance Assignment Help from PhD tutors at affordable prices to fetch top grades at fair prices.
tutorsglobe.com types of cymose inflorescence assignment help-homework help by online cymose inflorescence tutors
1946500
Questions Asked
3689
Tutors
1452783
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!