--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/getting-started-with-arrays/questions.rst Wed Oct 13 17:32:59 2010 +0530
@@ -0,0 +1,132 @@
+Objective Questions
+-------------------
+
+.. A mininum of 8 questions here (along with answers)
+
+1. An array in Python is the same as a Python list
+
+ a. True
+ #. False
+
+Answer: False
+
+2. ``x = array([1, 2, 3], [5, 6, 7])`` is a valid statement
+
+ a. True
+ #. False
+
+Answer: False
+
+3. What will be the output of the following code,
+ ::
+
+ x = array([[1, 2, 3], ['a', 2, 'c']])
+ print x[0][0] + x[0][1] + x[0][2]
+
+ a. 6
+ #. 123
+ #. a2c
+ #. Error as array takes only homogeneous elements
+
+Answer: 123
+
+4. What will be the output of the following code,
+ ::
+
+ x = [[1, 2, 3], [4.1, 4.2, 4.3], ['6','7',8]]
+ y = array(x)
+ print y[-1][-2] + y[-1][-1] + y[-2][0] + y[0][-2]
+
+ a. 21.1
+ #. 12.5
+ #. 784.12
+ #. Error as array takes only homogeneous elements
+
+ .. 4.2 4.3 2 2
+
+Answer: 784.12
+
+5. What is the output of the following code,
+ ::
+
+ x = array([[1, 2, 3], ['a', 2, 'c']])
+ identity(x.shape)
+
+ a. Will create an identity matrix of shape (2, 3).
+ #. ``identity()`` function takes an integer as argument and a tuple
+ is passed.
+ #. Will return, array([[1,0,1],[0,1,0]])
+ #. Will return, array([[0,1,0],[0,1,0]])
+
+Answer: ``identity()`` function takes an integer as argument and a
+ tuple is passed.
+
+6. ``ones_like()`` function?
+
+ (A) Returns an array of ones with the same shape and type as a
+ given array.
+ (B) Return a new array of given shape and type, filled with ones.
+
+ Read the statements and answer,
+
+ a. Only statement A is correct.
+ #. Only statement B is correct.
+ #. Both statement A and B are correct.
+ #. Both statement A and B are incorrect.
+
+Answer: Only statement A is correct.
+
+7. ``zeros_like()`` function?
+
+ (A) Return a new array of given shape and type, filled with zeros.
+ (B) Returns an array of zeros with the same shape and type as a
+ given array.
+
+
+ Read the statements and answer,
+
+ a. Only statement A is correct.
+ #. Only statement B is correct.
+ #. Both statement A and B are correct.
+ #. Both statement A and B are incorrect.
+
+Answer: Only statement B is correct.
+
+8. What will be output of the following code snippet.
+ ::
+
+ x = linspace(1,10,10).reshape(5,2)
+ print (x[-3]+x[-4]).sum()
+
+ a. 10.0
+ #. 18.0
+ #. 14.0
+ #. 16.44
+ #. Error
+
+Answer: 18
+
+Larger Questions
+----------------
+
+.. A minimum of 2 questions here (along with answers)
+
+1. Write a python script to create a 15x15 array of equally spaced 225
+ elements from 1 to 1000, add 5 to each of the diagonal elements and
+ find the sum of all odd rows of the array. Say for example the
+ array,
+ ::
+
+ x = array([[1, 2, 3],
+ [4, 5, 6],
+ [7, 8, 9]])
+
+ will give answer 40 ((1+5) + 2 + 3 + 7 + 8 + (9+5)).
+
+2. For any given array([a1, a2, a3, .. , an]) the Vandermonde matrix
+ will be [[1, a1, a1**2, .. , a1**(n-1)], [1, a2, a2**2, .. ,
+ a2**(n-1)], .. , [1, an, an**2, .. ,an**(n-1)]]. Write a python
+ script to generate the Vandermonde matrix and find the determinant
+ of the matrix for [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
+ 16, 17, 18, 19, 20]. [Hint: to find the determinant use the
+ function ``det()`` from ``linalg`` module.]