Get in here to get the Interview Tips of Various Companies. Or see how to improve performances related to your job.

Test Paper :1
Paper Type : Whole Testpaper
Test Date : 24 February 2004
Test Location : Kolkatha
Posted By : Mrudul

AMERICAN MEGATRENDS Inc.(AMI) BIOS- 24th FEB 2004 (KOLKATHA)

Logical Reasoning:

1. 3 types of chickens: Baby chickens cost 5 cents, hen chickens cost 3 dollares, rooster chickens cost 5 dollars. Buy 100 chickens for 100 dollars.How many will you have from each?

2. Calculate : (x-a)(x-b)(x-c)....(x-z)?

3. What is the day after 4 days after 2 days before the day before tomorrow?

4. 2 trains each of length 1 mile enter into 2 tunnels of lenth 1 mileand 2 miles apart. speed if trains are 5 and 10 miles/hr. Give the postion as viewed by a helicopter when the trains meet?

5. A says I'm not guilty
B says C is not guilty
C says A is not guilty
If all above are true.(i) Can we say anyone is guilty/innocent?
(ii)Who is most likely to be guilty?

6. 18 story building - Accountant's office is 5 times the lawyer's office. Architects office 2 floors up then he is halfway between Dentist's & Accountant's office. Architects office halfway down means betweenDentist's and Lawyer's office. Give the order

7. How many tennis matches are to be arranged to conduct a tournament with 213 players?

8. In a family 7 children don't eat spinach, 6 don't eat carrot, 5 don't eat beans, 4 don't eat spinach & carrots, 3 don't eat carrot & beans, 2 don't eat beans & spinach. 1 doesn't eat all 3. Find the no. of children.

C/C++
-----
a. void main()
{
char a[6] = "INDIA";
while(*a)
{
printf("%c",*a);
a++;
}
}

1. india 2. I N D I A 3. no output 4. error 5.Null

b. protected derivation

c. int m = 10;
main()
{
int m = 20;
{int m = 30;}
printf("%d %d",m,::m);

1. 10 10 2. 10 20 3. 20 10 4. 20 30 5. 30 20 6. None

d. inline function is used to
1. reduce program size
2. reduce memory size

e. void func(float newtotal)
{ newtotal = newtotal-2;
}
main()
{
float tot = 100.34;
float sum = tot;
sum++;
func(sum);
cout<
}

1. 100.34 2. 99.34 3. 101.34 4. 102.34 5. None

f. unsigned char snapnib(unsigned char misc)
{
int aloha, hamalo;
hamalo = aloha = misc;
misc = (hamalo <<4>>4);
return(misc);
}
main()
{
int getinp;
unsig char getmisc;
scanf("%x",&getinp);
getmisc = snapnib(getinp & 0xff);
printf("%x",getmisc);
}

1. Change line 4 to misc = (hamalo >> 4)+((aloha & oxof)<<4>> 4)+((aloha & oxfo)<<4);
4. Change line 11 to getmisc = snapnib(getinp);
5. Nothing

g. main()
{
int getinp = 6;
while(--getinp)
{
printf("%d",getinp);
if(getinp++ != 3);
else
break;
if(getinp-- != 5)
continue;
else
getinp = getinp - 2;
}

1. 5421 2. 5420 3. 541 4. 6543 5. 5410

h. unsigned char inn[2] = "5";
int i,j = 0;
sscanf(inn,"%d",&i);
while(i)
{
i = i - 1;
j++;
printf("%d",++j);
}

1. 14 2. 12 3. 24 4. 35 5. none

i. char *fn(int num)
{
char a[] = "Amen";
return(&a[num]);
}
main()
{
int i;
char *prechar;
scanf("%d",&i);
(input is 12)
prechar = fn(i);
printf("%c",*prechar);
}

1. a bus
2. give string "Amen" as global
3. use return(a[num]) instead of return(&a[num])
4. give main before fn

j. unsigned char u = 32767;
unsigned char y = 32768;
u = u + y;
printf("%d",(signed char)u);

1. 65535 2. -65535 3. -1 4. 1 5. none

k. *name = "ANYTHING";
*foo = "ALRIGHT";
*name1 = "WRONG";
strcat(name,name1);
printf("%s %s n",name,foo);
return(0);

1. ANYTHING WRONG? WRONG?
2. ANYTHING
3. ANYTHING WRONG? ALRIGHT
4. ERROR
5. NONE

Assembly
--------
i) swap 2 variables without temp variables
(use XOR, OR, AND, NOT)
ADVERTISEMENT