Crack the TCS IPA Exam: Top Questions and Exclusive Tips for Success!

As Engineering graduates, we are all extremely eager to land a job at TCS, one of India’s largest IT companies. No shocker there, working at TCS doesn’t just add immense value to your resume but also to your newly budding wallet. Latest reports state that salaries at TCS India touch around Rs.28L per annum given that you get in and do it with precision.

Cracking the TCS IPA exam is the key to achieving your TCS career goals. You will need months of preparation and hard work to successfully crack the exam and land your dream job.

In this blog post, I will be listing out the Top Questions and providing useful tips on how to crack the TCS IPA exam.

What is the TCS IPA Exam?

The TCS IPA (iON Proctored Assessment) exam is an assessment test conducted in specialized iON centers that evaluates a candidate’s programming, aptitude, reasoning, business, and communication skills. The time limit is 120 minutes to solve questions worth 100 marks.

The TCS IPA exam is important for fresh graduates who wish to join TCS. It provides a platform for candidates to showcase their skills and knowledge.

Cracking the TCS IPA exam can open up many opportunities for a candidate in the IT industry. In 2023, it has now been made compulsory for all new joiners to take the IPA test.

Candidates scoring more than 55% in the assessment earn a joining bonus of Rs. 40,000. A score higher than 80% will get you an additional Rs. 20,000 bonus!

Navigate here to know more about this test and the official TCS platform: TCS Xplore in this comprehensive blog guide.

Understanding the TCS IPA Exam Pattern and Syllabus along with Exclusive Study Tips

You can choose to attempt the IPA test in one of two major programming languages:

  1. Python
  2. Java
tcs ipa exam
The Main Sections:

The test will be a mix of MCQs as well as Coding questions from the programming language of your choice and you will have 120 minutes to complete and submit your answers. So, we have two sections: a) MCQs, and b) Coding, the allotted time for which will be 50 mins and 70 mins respectively.

The MCQs section and the Coding section, are each worth 50 marks, the exact Syllabus, Marks, and Time Segregation for which can be found in the tables below distinguished by respective programming languages:

1. Python:


The Sub-Sections:

So, we basically have 6 sub-sections in the MCQ section and another 2 sub-sections in the Coding section respectively. Let’s dive into what they stand for to gain a better understanding of the syllabus:

In the MCQ Sub-Section, we have:

  1. KYT: This stands for “Know Your TCS” and consists of 5 questions (1 mark each). As you can guess you must know about Tata’s history/timeline, TCS awards, Tata companies, and their remarkable events as well as achievements to ace this section.
  2. BizSkill: This section tests your business skills and professional ethics. So, mostly situation-based questions with 5 questions (1 mark each). You can prepare for this section with the help of TCS Xplore as well as business webinar recordings that are posted on Xplore.
  3. UI: User Interface skills and knowledge that you must have been tested in this sub-section which consists of 10 questions (1 mark each). You must have a fair amount of knowledge surrounding HTML, CSS, and JavaScript scripts and know their basic syntax.
  4. Unix: You must know the basics of the Unix Operating System to attempt this sub-section successfully, it consists of 5 questions (1 mark each).
  5. Python/Java:
    • Java( in case you chose “Java” as your language of choice): Must be thorough with all the basic as well as advanced Java concepts to score well in this section, it consists of 15 questions (1 mark each).
    • Python( in case you chose “Python” as your language of choice): Revisit all major Python concepts such as data types, methods, and functions and hone your coding skills to score well in this sub-section, it consists of 15 questions (1 mark each).
  6. MySQL or SQL/PLSQL:
    • MySQL( in case you chose “Python” as your language of choice): You must know how to frame and write efficient MySQL queries as well as manage the database with ease to score well in this section. It is worth 10 marks and consists of 10 questions.
    • SQL/PLSQL( in case you chose “Java” as your language of choice): Brush up on all the basic fundamental concepts pertaining to PLSQL and SQL to answer the questions asked in this sub-section which is worth 10 marks and consists of 10 questions.

Now, for the Coding Sub-Section:

  1. Simple Python or Java Coding Question(15 marks): Here, you will be asked to write a coding solution to an easy problem in the programming language you chose to attempt the test in. Practice string problems as well as programs based on them and get a good understanding of all string methods.
  2. Complex Python or Java Coding Question(35 marks): This will be a relatively difficult as well as longer coding problem that you must solve correctly. Learn classes, objects, and inheritance. Practice the questions listed in this blog as well as previously asked IPA coding questions posted in TCS Xplore.

NOTE: 4 test cases will be asked for each question. If all 4 test cases are correct, for these 2 questions alone you will score 50 marks.

We recommend thoroughly practicing either Java or Python with the help of an online course by GUVI, to gain the necessary programming skills and confidence to pass the TCS IPA test with ease and gain the incentives as well as recognition you deserve.

Top TCS IPA Questions and Answers

Here we have for you a few examples of the important as well as previously-asked TCS IPA Questions and Answers section-wise so that you can ace your test and bag the career of your dreams.

1.MCQs(the answers are highlighted in blue):


Question 1:

When was Tata Consultancy Services established?
a. 1978
b. 1968
c. 1988
d. 1958

Question 2:

A drawback of Distributed computing is:
a. Man Power cost increased
b. Cost of computing increased
c. Complexity Reduced
d. None of the options


Question 1:

What are the stages in the IBC approach?
a. Introduction, Body, Cohesion
b. Introduction, Body, Content
c. Introduction, Body, Conclusion
d. None of the options

Question 2:

The CIBI Bank requested TCS to upgrade its systems worldwide and to digitize 80% of its workflow. TCS not only completed the given work on time but also provided IT training sessions for the bank employees to get accustomed to the upgrades. What is this service termed?
a. Keeping commitments
b. Robotic service
c. Value-added service
d. Systematic service


Question 1:

What is the correct syntax to set border colors?

a. “<h1 style=”border-line: 2px solid DodgerBlue;”>Hello World</h1>”
b. “<h1 style=”border: solid DodgerBlue;”>Hello World</h1>”
c. “<h1 style=”border: 2px solid DodgerBlue;”>Hello World</h1>”
d. None of the above

Question 2:

What is the usage of <span> in HTML?

a. It is often used as a container for other HTML elements to style them with CSS
b. It is used to group inline elements in document
c. It is used to highlight parts of your text.


Question 1:

The command used to find the count of only words in a file?

a. wc -w <filename>
b. wc –words <filename>
c. wc <filename>
d. None of the above

Question 2:

Which command is used to change permission levels of a file or directory?

a. passwd
b. unset
c. return
d. chmod

e)Java and Python MCQs:

Question 1: Java

We cannot use the WHERE clause with TRUNCATE. True or False?
a. False
b. True

Question 2: Java

Which operator gives the result if the condition(s) is not satisfied?
a. IN
b. NOT
c. OR
d. AND

Question 1: Python

Identify the unordered collections in Python.

a. List
b. Set
c. Dictionary and Set
d. Tuple

Question 2:

What is the output of the below code?
x = sum(range(7))

a. 21
b. 22
c. 20
d. 23


Question 1: MySQL

Which of the following are valid constraints in MySQL?

Question 2: PLSQL

Which is not a system-defined exception in PLSQL?

2. Now, its time to list out questions from the most important section of the exam, the Coding Section:


Problem Statement 1: The Simple One

Write a Python code to find numbers and alphabets from the given string and put it in
one list. The list will have two elements – the first element is a type of string that contains the alphabet and the second element is a type of integer. The input string will not have any special characters. The input string can have either the combination of Alphabets and Numbers or only Alphabets or only Numbers or it can be an empty string. Define a function to build a logic that returns a list. This list will contain a string first followed by numbers (must be in an integer format).

Solution Code:

def str_num_list(s1):
str_num = []
alpha = ''.join([i for i in s1 if i.isalpha()])
str_num.append(alpha) if len(alpha) != 0 else str_num
num = ''.join([i for i in s1 if i.isdigit()])
str_num.append(int(num)) if len(num) != 0 else str_num
return str_num
inp_s = input()
ans = str_num_list(inp_s)

Problem Statement 2: The Complex One

Create a class Account with the below attributes:

account_no of type

Number account_name of type

String account_baIance of type Number

Create the finite method which takes all parameters in the above sequence and sets the value of the attributes inside the method.

Create a method depositAmnt inside the Account class which takes a number value as input parameter. The number value represents the amount to be deposited into the Account. The method updates the balance of the Account i.e. adds the given amount to the existing balance of the Account object.

Create another method withdrawAmnt inside the Account class which takes a number value as the input parameter. The number value represents the amount to be withdrawn from the Account. The method deducts the amount from the existing balance of the Account object.

However, the minimum balance of the Account object is to be maintained as 1000. i.e. withdrawal of the given amount will be possible only if the balance of the Account object is greater than or equal to 1000 after the amount is withdrawn. The method returns 1 if the withdrawal is possible; else returns 0 if the withdrawal is not possible.

To test the code against your customized input through the console, the input data needs to be entered in the below order( as shown below in the sample input).

The first three lines in the below sample input represent the input for three variables of the account object

i.e. account no. (account_no), account name (account_name), and account balance (account_baIance), with which the Account object will be created.

The fourth line in the sample input is the input for the amount to be deposited in the account object and the fifth line is the input for the amount to be withdrawn from the account object

Solution Code:

Class Account:
def init (self,acno,acntname,accntbal): 

def depositAmnt(seIf,amount): 

def withdrawAmnt(seIf,amount): 
   return 0 
   return 1

if name	== '	main	': 

print("Balance after deposit :",obj.account_baIance) 
if res == 1:
  print("Balance after withdrawal :",obj.account_baIance) 
  print("Insufficient balance for withdrawal")


Problem Statement 1: The Simple One

Write the main method in the Solution class. In the main method, write code to read a numeric digit(without any alphabets or special characters) using Scanner and print it in the reverse sequence as they appear in the input. Consider below sample input and output:
The reverse of the number is 54321.

Solution Code:

import java.util.*;
public class MyClass {
   public static void main(String[] args) {
    Scanner sc = new Scanner(;
    int num = sc.nextInt();
    String st = String.valueOf(num);
    StringBuilder ans = new StringBuilder();
    System.out.println("Reverse of the number is " + ans);

Problem Statement 2: The Complex One

Create a Class Medicine with the below attributes:
medicineName – String
batchNo – String
disease – String
price – int
Write getters, setters, and parameterized constructors as required. A public class Solution is already created with the main method. Code inside the main method should not be altered else your solution might be scored as zero. You may copy the code from the main method in Eclipse to verify your implementation.
Implement static method – medicinePriceForGivenDisease in Solution class. This method will take a String parameter named disease along with the other parameter as an array of Medicine objects. The method will return an array of integers containing the price of the medicines in ascending order if the given input(disease) matches the disease attribute of the medicine objects in the Array.
Note: 1) Same disease can have more than one medicine.
2) disease search should be case insensitive.
This method should be called from the main method and display the prices. The main method mentioned above already has Scanner code to read values, create objects, and test the above methods. Hence do not modify it.

Solution Code:

import java.util.*;
public class MyClass {
   public static void main(String[] args) {
     Scanner sc = new Scanner(;
     Med[] arr = new Med[4];
     for (int i = 0; i < arr.length; i++) {
       String a = sc.nextLine();
       String b = sc.nextLine();
       String c = sc.nextLine();
       int d = sc.nextInt();
       arr[i] = new Med(a, b, c, d);
     String q = sc.nextLine();
     int[] ans1 = find(arr, q);
     for (int a: ans1) {
public static int[] find(Med[] arr, String q) {
  int[] ans = new int[0];
   for (int i = 0; i < arr.length; i++) {
     if (arr[i].getdis().equalsIgnoreCase(q)) {
     ans = Arrays.copyOf(ans, ans.length + 1);
     ans[ans.length - 1] = arr[i].getprice();
   return ans;
class Med {
  private String name;
  private String batch;
  private String dis;
  private int price;
  public String getdis() {
    return dis;
  public int getprice() {
    return price;
public Med(String name, String batch, String dis, int price) { = name;
  this.batch = batch;
  this.dis = dis;
  this.price = price;

Do try and practice all these programs yourself and compare outputs with different programs as well as in both Java and Python to ace the TCS IPA Exam!

Tips to Prepare for TCS IPA Exam

Here are some tips to help you prepare for the TCS IPA exam:

  • Start Early: It is important to start preparing for the exam early to have enough time for practice and revision.
  • Understand the Syllabus and Exam Pattern: It is important to understand the syllabus and exam pattern to know what to expect in the exam and we made it incredibly easy for you in this post.
  • Enhance your Programming Skills: Hone your coding skills and learn as well as practice writing efficient code with various online courses to ace the TCS IPA Exam. An incredible and reliable resource is the GUVI courses with industry experts as mentors and award-winning practice platforms to help you bag the TCS job of your dreams.
  • Practice Regularly: Regular practice is key to cracking the TCS IPA exam. Solve as many sample papers and mock tests as possible. You can find these easily on the TCS Xplore platform along with a range of other resources to aid your preparation.
  • Time Management: Time management is key during the TCS IPA Exam. Practice solving questions within the given time limit.
  • Improve your Communication Skills: Communication skills are an important aspect of the TCS IPA exam. Read newspapers, books, and practice speaking in English regularly.

Concluding Thoughts…

Cracking the TCS IPA exam requires regular practice, an understanding of the syllabus and exam pattern, and time management skills. With the right preparation and guidance, it is possible to crack the exam and land great incentives as well as career boosts at TCS.

Start early, practice regularly, and stay focused during the exam. Good luck with your exam preparation!

Contact Form

By clicking 'Submit' you Agree to Guvi Terms & Conditions.

Our Learners Work at

Our Popular Course

Share this post

Author Bio

Jaishree Tomar
Jaishree Tomar
A recent CS Graduate with a quirk for writing and coding, a Data Science and Machine Learning enthusiast trying to pave my own way with tech. I have worked as a freelancer with a UK-based Digital Marketing firm writing various tech blogs, articles, and code snippets. Now, working as a Technical Writer at GUVI writing to my heart’s content!

Our Live Classes

Learn Javascript, HTML, CSS, Java, Data Structure, MongoDB & more
Learn Python, Machine Learning, NLP, Tableau, PowerBI & more
Learn Selenium, Python, Java, Jenkins, Jmeter, API Testing & more

UX Processes, Design systems, Responsive UI, & more with placement assistance.

Hey wait, Don’t miss New Updates from GUVI!

Get Your Course Now

Related Articles


Tech Career Programs From Zen Class & GUVI

Choose from a range of IT Career Oriented Courses offered by Zen Class & Guvi. From Full Stack Development course to Data Science programs.