GEODESIC PAPER ON 3RD JULY,2008
WRITTEN TEST:
Unlike other companys Geodesic had a very different written pattern. There were 2 Sections,
1) Algorithms and Logical Thinking
2) C Questions
1) Algorithms and Logical Thinking:
There were three questions in this sections.Each carries 5 marks. Ur Solution to the problem must be an optimal one.
q1) There was a plane which should satisfy the condt 0<b<a. U have to write a function f(x,y) which computes xn = (x + y)/2 and yn = 2(xy/x+y).Caluclate it for first 3 values and find an invariant for these values??
q2) There are 'm' rows and 'n' columns, these have choclates in it. 2 users play a game in turn,If player breaks a chocolate in a cell,he can go either row wise or column wise and the next player should play his turn.The one who is finally left with one square is the loser.If player1 doesnt break a small chocolate and gives his turn for player2,what is the optimal stragedy for winning? What are the positions of losing??
q3) There were 'n' people seated in a circle,every second person in the circle is eliminated,again the circle is enclosed and the procedure is repeated.Describe this as a function and 'n' should be decipted as a binary number.U should corelate n with f(n).Find f(10) and f(20)?
(Hint: This problem is a variant of jospheus problem)
2) C Questions-Here there were 7 questions which were splitted as 1,2 and 3 mark problems!!
q1) A Train is of length 'n' meters which has individual compartments of size 1 or 2 meters in length. In how many possible ways that the length of the train is accommodated with 1 or 2m compartments. Write a function Train(n) which computes this? (3m)
q2) Give the Structure definition of link list and how will u detect a loop in the link list? Write a Seperate function for that? (3m)
q3) Perform addition of two numbers without using '+' operator? (2m)
q4) Consider the code snippet,
int n[] = {0014,010,2,4,8,12};
int i;
for(i=0;i<6;i++)
{
printf("%d",n);
}
What is the output of the above program? (2m)
q5) Find the output of the following program,
#define swap(x,y) x=x+y;y=x-y;x=x-y;
void main()
{
int x=5,y=10;
swap(x,y);
printf("%d %d",x,y);
swap1(x,y)
printf("%d %d",x,y);
}
int swap1(int x,int y);
{
int temp;
temp =x;
x=y;
y=temp;
return 0;
} (2m)
q6) Consider the following code snippet,
void main()
{
char s=127;
unsigned char u;
s++;
}
(a) is s > 127?
(b) is s < u? (1m)
q7) Write a function which compares two strings ending with a null character which returns '0' when they are same and '-1' when they are not same? U should not use strcmp() function. (2m)