Top 50 Programming Interview Questions & Answers (2021)

Summarize

Git is a distributed version control system DVCS designed for efficient source code management, suitable for both small and large projects. It allows multiple developers to work on a project simultaneously without overwriting changes, supporting collaborative work, continuous integration, and deployment. This Git and GitHub tutorial is designed for beginners to learn fundamentals and advanced concepts, including branching, pushing, merging conflicts, and essential Git commands. Prerequisites include familiarity with the command line interface CLI, a text editor, and basic programming concepts. Git was developed by Linus Torvalds for Linux kernel development and tracks changes, manages versions, and enables collaboration among developers. It provides a complete backup of project history in a repository. GitHub is a hosting service for Git repositories, facilitating project access, collaboration, and version control. The tutorial covers topics such as Git installation, repository creation, Git Bash usage, managing branches, resolving conflicts, and working with platforms like Bitbucket and GitHub. The text is a comprehensive guide to using Git and GitHub, covering a wide range of topics. It includes instructions on working directories, using submodules, writing good commit messages, deleting local repositories, and understanding Git workflows like Git Flow versus GitHub Flow. There are sections on packfiles, garbage collection, and the differences between concepts like HEAD, working tree, and index. Installation instructions for Git across various platforms Ubuntu, macOS, Windows, Raspberry Pi, Termux, etc. are provided, along with credential setup. The guide explains essential Git commands, their usage, and advanced topics like debugging, merging, rebasing, patch operations, hooks, subtree, filtering commit history, and handling merge conflicts. It also covers managing branches, syncing forks, searching errors, and differences between various Git operations e.g., push origin vs. push origin master, merging vs. rebasing. The text provides a comprehensive guide on using Git and GitHub. It covers creating repositories, adding code of conduct, forking and cloning projects, and adding various media files to a repository. The text explains how to push projects, handle authentication issues, solve common Git problems, and manage repositories. It discusses using different IDEs like VSCode, Android Studio, and PyCharm, for Git operations, including creating branches and pull requests. Additionally, it details deploying applications to platforms like Heroku and Firebase, publishing static websites on GitHub Pages, and collaborating on GitHub. Other topics include the use of Git with R and Eclipse, configuring OAuth apps, generating personal access tokens, and setting up GitLab repositories. The text covers various topics related to Git, GitHub, and other version control systems Key Pointers Git is a distributed version control system DVCS for source code management. Supports collaboration, continuous integration, and deployment. Suitable for both small and large projects. Developed by Linus Torvalds for Linux kernel development. Tracks changes, manages versions, and provides complete project history. GitHub is a hosting service for Git repositories. Tutorial covers Git and GitHub fundamentals and advanced concepts. Includes instructions on installation, repository creation, and Git Bash usage. Explains managing branches, resolving conflicts, and using platforms like Bitbucket and GitHub. Covers working directories, submodules, commit messages, and Git workflows. Details packfiles, garbage collection, and Git concepts HEAD, working tree, index. Provides Git installation instructions for various platforms. Explains essential Git commands and advanced topics debugging, merging, rebasing. Covers branch management, syncing forks, and differences between Git operations. Discusses using different IDEs for Git operations and deploying applications. Details using Git with R, Eclipse, and setting up GitLab repositories. Explains CI/CD processes and using GitHub Actions. Covers internal workings of Git and its decentralized model. Highlights differences between Git version control system and GitHub hosting platform.

2 trials left
1) What is Computer programming? Computer Programming is also known as programming or coding. Programming is a process which includes processes such as coding, maintaining, updating, debugging, writing, designing (algorithm), etc. 2) How does programming work? Programming contains a set of instructions for the computer to perform different tasks. In fact, those instructions are executable commands, each having a different purpose. 3) What is debugging? Debugging is the process of finding and removing errors in a program. In this process, the program is thoroughly checked for errors. Then errors are pointed out and debugged. 4) Name different types of errors which can occur during the execution of a program? There are three types of errors which can occur during the execution of a program.
  • Syntax Errors
  • Runtime Errors
  • Logical errors
5) When a syntax error occurs? A syntax error occurs when the program violates one or more grammatical rules of the programming language. These errors are detected at compile time, i.e., when the translator (compiler or interpreter) attempts to translate the program. 6) When a runtime error occurs? A runtime error occurs when the computer is directed to perform an illegal operation by the program such as dividing a number by zero. Runtime errors are the only errors which are displayed immediately during the execution of a program. When these errors occur, the computer stops the execution of the programming and can display a diagnostic message that will help in locating the error. 7) When a logical error occurs? The logical error happens when a program implements the wrong logic. The translator (compiler or interpreter) does not report any error message for a logical error. These errors are the most difficult to locate. 8) What is a flowchart? The flowchart is a pictorial representation of a program which helps in understanding the flow of control and data in the algorithm. 9) What is an algorithm? An algorithm is a finite set of steps which, if followed, accomplish a particular task. An algorithm must be clear, finite and effective. 10) What do you understand by the term “Maintain and update the Program”? Program maintenance is an ongoing process of upgrading the program to accommodate new hardware or software requirements and introducing minor or great improvements. Essentially, it is the expansion, updating and improvement of a program after its installation. 11) What are variables? Variables are named memory locations (memory cells) which are used to store the program’s input and its computational results during program execution. As the name suggests, the value of a variable may change during the program execution. 12) What are reserved words? Reserved words or keywords are the words, which have predefined meanings. They have predefined uses and cannot be used or redefined for any other purpose in a programming language. Examples :
  • IF
  • ELSE
  • THEN
13) What are loops? The loop is a structure which can repeat a set of statements up to a fixed number of times or until a certain criterion is satisfied. 14) Name different types of loops. Different types of loops are
  • FOR…NEXT Loop
  • WHILE…WEND Loop
  • Nested Loop
15) What is the use of FOR…NEXT Loop? When it is known in advance how many times the loop must be repeated the FOR…NEXT Loop is the most effective option. FOR…NEXT Loop is used to repeat a set of statements to a specific number of times. 16) What is the use of WHILE…WEND Loop? The While loop keeps repeating an action until an associated condition becomes false. This is useful where the programmer does not know in advance how many times the loop will be executed. 17) What is the use of Nested Loop? Loop within a loop is called nested loop. 18) What is Documentation? Documentation is a detailed description of a program’s algorithm, design, coding method, testing, and proper usage. Documentation is valuable for the users who rely upon the program on a day-to-day basis, and for the programmer who may be called on to modify or update it. 19) What is the working of a compiler? A compiler is a unique program that can process statements which are written in a particular programming language and can turn them into machine language or “code.” This is the working of a compiler. The compiler does no compression …point me to a link which says so 20) What do we call the binary form of a target language? The binary form of a target language is also called “Binary Code”. 21) What are constants? A constant is a quantity whose value cannot be changed. Unlike a variable, the value stored in a constant can’t be modified during program execution. 22) Name two types of constants. Two types of constants are mentioned below:
  • Numeric Constants
  • String Constants
23) Define Numeric constants. Numeric constants consist of integers, single precision, or double-precision numbers. Integer constants represent values that are counted and do not have a fractional part, e.g., +56, -678 24) Define String constants. A string constant is a sequence of alphanumeric characters enclosed in double quotation marks. The maximum length of a string constant is 255 characters. For example, “New York.” 25) Define Operators. Operators are symbols which are used to perform certain operations on a data. These include arithmetic, relational, logical, and assignment operators. 26) What is an Array? An array is a collection of contiguous memory locations which can store data of the same type. 27) What is subroutine? A subroutine is a self-contained set of statements that can be used from anywhere in a program. The subroutine performs its specific task and then returns control to the program that calls the subroutine. 28) What is the purpose of arithmetic operators? Arithmetic operators are used to perform arithmetic operations on values (numbers). 29) What is the purpose of relational operators? Relational operators are used to compare two values. These operators always evaluate to true or false. They always produce a non-zero value (in most case 1). 30) Define Low-level programming language. In computer programming, the programming language which provides no generalization from the computer’s “instruction set architecture” is called a low-level programming language. It usually directs to machine code or assembly language. 31) Define High-Level programming language. In computer programming, the programming language which provides high generalization from the computer’s “instruction set architecture” is called a high-level programming language. To make the development of a program easier as compared to a low-level programming language, it may use the natural language elements. 32) What is Machine code? Machine code is a language, which can be processed directly by a microprocessor without any need of the previous transformation. Programmers never write programs directly in machine code. 33) Write a code in 32-bit x86 machine code to calculate the nth Fibonacci number. 8B542408 83FA0077 06B80000 0000C383FA027706 B8010000 00C353BB 01000000B9010000 008D0419 83FA0376 078BD98BC84AEBF1 5BC3 34) List some programming languages. Some programming languages are listed below: A+ A++ ACC ALF APL BASIC COBOL 35) What is reliability? It is the proper working of software during a specific period of time. If a program doesn’t work properly during the required period then it’s not reliable. 36) What is modeling language? An artificial language that can be used to express information or knowledge or systems in an arrangement which is defined by a reliable number of rules. These rules are also used for interpretation of the meaning of components in the structure. 37) Name some modeling languages. Names of some modeling languages are listed below: Business Process Modeling Notation EXPRESS Extended Enterprise Modeling Language Flowchart Fundamental Modeling Concepts Jackson Structured Programming Unified Modeling Language Alloy (specification language Systems Modeling Language 38) What is software testing? Software testing a process in which software is tested under certain conditions to test the quality of a program. Testing a program is also required to check whether the software provides a good user experience or not. 39) Tell a few reasons of software testing. A few reasons for software testing are mentioned below: Proper working Satisfying quality Fulfills the requirements of the user Can be implemented with the identical 40) What is Beta version? The beta version of a software is that version which is not ready for release and can be changed after the feedback from the users. Beta version comes after alpha version. 41) What is the working of logical operators? Logical operators let us combine simple conditions to construct more complex ones (By conditions, we mean an expression evaluating to true or false). 42) What is the purpose of the assignment operator? The assignment operator is used to store a value, string or a computational result in a variable. 43) What is analyzing a program? The process in which program is decomposed into sub-problems. Rather on concentrating the bigger problem as a whole, we try to solve each sub-problem separately. This leads to a simple solution. This technique is also known as top-down design. 44) What is the working on an algorithm? Every algorithm performs at least following three steps: Get data Perform computation Display results 45) How is the division by zero defined? Division by zero is undefined. 46) What is the meaning of implementation of a program? Once the program has been tested thoroughly, it must be installed or put into operation at the site where it will be used. This is known as the implementation of the program. 47) What are numeric variables? You already have tons of question on numeric variables. Replace this The variables which can store numeric values are called number variables. Numeric values include both floating point numbers and whole numbers. 48) What are string variables? A string can be defined as a sequence of characters enclosed in double quotations. A string variable can, therefore, store a sequence of characters. The nature of character string is entirely different from the nature of numeric values. 49) What are commands? Commands are executable instructions which are operated in the direct mode. They do not require a preceding line number. Incorrect info 51) What is the execution of a program? Execution of the program refers to carrying out the instruction of the program. The program must be loaded into memory (RAM) before execution.  

You may also like this!