Accenture Interview Questions (2023): Freshers & Experienced | Intellipaat

Process Advisors

*Subject to Terms and Condition



Frequently Asked Accenture Interview Questions


With a strong focus on innovation, Accenture assists clients across diverse industries in navigating the digital landscape, enhancing operational efficiency, and driving business growth.

Their commitment to delivering cutting-edge strategies and services has earned them a reputation as a trusted partner for businesses seeking transformation and success. With a vast talent pool of skilled professionals, Accenture continues to shape industries and make a significant impact on the global business landscape.

Listed below are several commonly asked questions in the Accenture interview.

Q1. Difference between procedural and object-oriented programming
Q2. What is the importance of self-keywords in python?
Q3. What is the difference between static and non-static keywords?
Q4. Why is Python known as a high level language?
Q5. Define adapter class.
Q6. What is run time Polymorphism?
Q7. What is the difference between python and java?
Q8. What are NumPy in Python?
Q9. What do you mean by name mangling in python?
Q10. Define the process of exception handling in java?

We have classified the Accenture interview questions into three categories:

1. Basic Accenture Interview Questions

2. Intermediate Accenture Interview Questions

3. Advanced Accenture Interview Questions

Basic Accenture Interview Questions

1. Difference between procedural and object-oriented programming

In procedural programming, we need to work with functions and data separately, as functions manipulate data that is stored in variables or data structures, whereas in an object-oriented programming language, the code is treated as entities and objects.

2. What is the importance of self-keywords in Python?

The ‘self’ keyword is used as the first parameter while defining the instance methods of a class. In other words, we can say It represents the instance of the class itself. Although the name self is a convention, we can technically use any name as the first parameter, but using self is considered standard and is used in Python.

3. What is the difference between static and non-static keywords?

In static, you do not need an instance in order to use a static method. It is independent of any specific object but related to the entire class. It is stored in a single memory location and can be modified by any instance of the class. A non-static method is an instance method that is not independent but belongs to each object that is generated from the class.

4. Why is Python known as a high-level language?

Python is a high-level language because it is an easy and user-friendly way to write and read code. It doesn’t have that much critical syntax. It hides complexity, making programming more accessible and less focused on low-level operations.

5. Define the adapter class.

An adapter class is defined as a class that helps two incompatible classes combine together by providing a single interface. It acts as a mediator, which allows objects with different interfaces to communicate.

6. What is run-time Polymorphism?

Run-time polymorphism helps us to allow different objects to be treated as objects of a common super-class while executing different implementations of a method based on the actual type of the object at runtime. It also allows us to use the same method with different signature names.

7. What is the difference between Python and Java?

Java and Python are both programming languages, but they are different from each other. In Python, we can simply use “print” to print something, whereas in Java, we use System.out.println.

8. What is NumPy in Python?

NumPy stands for Numerical Python, and it is a library used for scientific computing, data analysis, and numerical operations. some common use cases and applications of NumPy, such as Mathematical Operations, Data Analysis, and machine learning.

9. What do you mean by name mangling in Python?

The purpose of name mangling is to make the attribute private and prevent direct access from outside the class. It is a method that indicates that the attribute is bound for internal use within the class and cannot be achieved or modified with external code.

Get 100% Hike!

Master Most in Demand Skills Now!

10. Define the process of exception handling in Java.

Exception handling is a process that allows us to manage exceptional situations that occur during code implementation. It helps you find the error in the code. Each catch block specifies the type of exception. It provides a structured way to handle unexpected events and prevent them from causing the program to terminate abruptly.

Intermediate Accenture Interview Questions

11. How is XML different from HTML?

XML stands for Extensible Markup Language, which is used to present data on the web and is also a general-purpose markup language designed to store and transport structured data. It focuses on describing the structure and organization of data rather than its presentation. XML is widely used for data exchange, configuration files, and data storage in various domains.

12. Define the term pointer to pointer address explained with a code.

A pointer to a pointer, also known as a double pointer or pointer-to-pointer, is a special type of pointer that holds the address of another pointer variable. This allows indirect access to the value and memory address stored by the second pointer. 

13. Explain the different types of heading tags in HTML.

In HTML, tags are used to define the headings or titles of sections, providing structure to the content. HTML provides six levels of heading tags, denoted by the <h1> to <h6> tags, such as:

<h1>: It denotes the highest level of heading, typically used for the main title or heading of the entire page. It carries the most importance and should be used sparingly.

<h2>: It denotes a slightly lower level of heading. It is often used for major section titles or headings that come under the main title.

<h3>: It denotes a further sub-level heading. It is used for subsection titles or headings that come under the <h2> heading.

<h4>: It denotes a lower level of heading, typically used for sub-section titles or headings within the content.

<h5>: It denotes an even lower level of heading, used for sub-section titles within <h4> headings.

<h6>: It denotes the lowest level of heading, used for minor headings or titles within the content.

14. How do you calculate the sum, or count of a column in SQL.

To calculate the average, sum, or count of a column in SQL, you can use the aggregate functions provided by SQL. Here are the commonly used aggregate functions:

Sum (SUM): Calculates the sum of the values in a column.

SELECT SUM(column_name) FROM table_name;

Count (COUNT): Counts the number of rows in a column.

SELECT COUNT(column_name) FROM table_name;

15. Define the following terms:

(i) List (ii) Tuples

  • List: it is used to store a collection of items. It is a mutable, ordered sequence of elements enclosed within square brackets[]. Lists can contain elements of different data types such as integers, strings, floats, or even other lists. 
fruits = ['Kiwi', 'Cat', 'Dog', 'Camel']
  • Tuple: It is an ordered collection of elements. Tuples are immutable which cannot be modified once created. Tuples are defined by enclosing elements within parentheses () or can be created without any enclosing brackets.
person = ('Ram', 21, 'India')

16. Why don't we have global variables in Java?

In terms of programming language, a global variable is a variable that is defined beyond the boundaries of any specific function and can be accessed from anywhere in the code. It is a variable that can be accessed and used by all functions, methods, or classes inside a program because it has a global or universal scope.

Since it’s normally preferred to organize our code in a way that makes it simpler to understand and maintain, Java doesn’t use global variables because any section of the code can access and change global variables when we use them. It may be challenging to remember where and when the variables are being utilized or altered as a result. Additionally, it can result in faults and unforeseen behavior in our program.

Career Transition

17. Define function overloading and function overriding.

  • Overloading: It describes the capacity to declare numerous methods or functions within a class (or, in certain programming languages, even within the same scope) that have the same name but distinct parameters. Overloading is determined at compile time based on the number, types, and order of the parameters. The compiler decides which version of the overloaded method or function to invoke based on the arguments provided during the function or method call.
  • Overriding: A feature of object-oriented programming called “function overriding” allows a subclass to provide a different implementation of a method that is already defined in its superclass. It enables the subclass to adapt the behavior of the inherited method to suit its own requirements. By adding its own implementation to a method, a subclass can retain the method name and signature while adding new functionality. This is known as overriding a method.

18. Why is function overloading not possible in Python?

Function overloading, commonly referred to as function loading, is not as supported in Python as it is in certain other programming languages, such as C++ or Java. The ability to specify numerous functions with the same name but distinct argument lists is known as function overloading. 

When you declare several functions with the same name in Python, the most recent definition replaces the earlier definitions. When deciding which function to call, Python does not take the types of the arguments or the number of arguments into account. Python instead employs a distinct strategy known as “duck typing,” which puts more emphasis on the behavior of objects than their types.

19. Explain the process of Agile methodology.

Agile methodology is a collaborative approach to project management and software development. It improves flexibility, adaptability, and continuous improvement. The iterative nature of Agile allows for flexibility and enables continuous improvement, resulting in a product that better meets the needs of stakeholders.

The Agile methodology follows a set of principles outlined in the Agile Manifesto that prioritize customer satisfaction, teamwork, and responsiveness to change.

20. Why is Java platform-independent?

Java is defined as platform-independent because it uses a two-step process of compilation and interpretation, which allows Java programs to be executed on any platform that has a Java Virtual Machine installed.

Here are some of the steps: Compilation, Interpretation: Overall, Java’s platform independence is achieved through the combination of compiling Java source code into bytecode and interpreting that bytecode on any platform with the help of the JVM, along with the availability of a platform-independent standard library.

Accenture Interview Questions- Advanced Level

21. Write a java program to generate the factorial number?

import java.util.Scanner;
public class Fact {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(;
        System.out.print("Enter a number: ");
        int num = scanner.nextInt();

        long fact = calculateFact(num);
        System.out.println("The Factorial of " + num + " is: " + fact);

    private static long calculateFact(int num) {
        if (num == 0 || num == 1) {
            return 1;
        } else {
            long fact = 1;
            for (int i = 2; i <= num; i++) {
                fact *= i;
            return fact;

Learn new Technologies

22. Write a query to return the top 10 students who have spent their pocket money in the last week.

To write a query to return the top 10 students who spent the most money last year, you would need to have a database schema that includes tables for students and transactions, where transaction data includes the student ID and the amount spent. Here’s an example query using SQL syntax:

SELECT s.student_name, SUM(t.amount) AS total_spent
FROM students s
JOIN transactions t ON s.student_id = t.student_id
WHERE t.transaction_date >= DATE_SUB(CURDATE(), INTERVAL 1 YEAR)
GROUP BY s.student_name
ORDER BY total_spent DESC

23. What is the use of map function, explain with a code.

In simple terms, The map() function is a pre-defined function in Python that is used to apply a given function to each item of an iterable (such as a list, tuple, or string) and returns a new iterable containing the results.

numbers = [1, 2, 3, 4, 5]
doubled_numbers = list(map(lambda x: x * 2, numbers))

24. What is the difference between RDBMS and DBMS?

RDBMS is an advanced version of DBMS that is used for managing relational databases, where data is organized in tables and relationships, and each table represents an entity and its attribute. Using primary and foreign keys provides data integrity and consistency.

It supports ACID (Atomicity, Consistency, Isolation, Durability), whereas a DBMS allows us to manage the overall database system and its components, including data structures, storage, security, and query processing. It enforces strict relationships between tables or has built-in support for integrity constraints. ACID properties are not necessarily a requirement. The application has specific performance or functionality.

A DBMS provides basic functionality for managing databases without strict enforcement of relationships between tables. Here’s an example of a query in a DBMS:


In a DBMS, the query retrieves all records from the “EMPLOYEE” table. The DBMS executes the query based on the table structure and retrieves the requested data.

An RDBMS is a type of DBMS that enforces relationships between tables using primary and foreign keys. Here’s an example of a query in an RDBMS:

SELECT Orders.OrderID, Employee.EmployeeName
FROM Orders
INNER JOIN Employee ON Orders.EmployeeID = Employee.EmployeeID; “

25. What do you mean by transaction, and how do you ensure data consistency in SQL?

In SQL, the process of a transaction typically follows the ACID principles (Atomicity, Consistency, Isolation, Durability) and involves the following steps: 

BEGIN TRANSACTION;  -- Begin the transaction
-- Execute SQL statements
UPDATE customers SET balance = balance - 100 WHERE id = 1;
INSERT INTO orders (customer_id, product_id, quantity) VALUES (1, 5, 3);
-- Check for errors
IF @@ERROR <> 0
    ROLLBACK;  -- Rollback the transaction if an error occurred
    COMMIT;    -- Commit the transaction if no errors occurred

Course Schedule

Name Date Details
Data Analytics Courses 30 Sep 2023(Sat-Sun) Weekend Batch
View Details
Data Analytics Courses 07 Oct 2023(Sat-Sun) Weekend Batch
View Details
Data Analytics Courses 14 Oct 2023(Sat-Sun) Weekend Batch
View Details

Leave a Reply

Your email address will not be published. Required fields are marked *