Programming Languages and Translators: Compiler, Interpreter, Assembler, Algorithm and Flowchart प्रोग्रामिंग भाषाएँ और ट्रांसलेटर: Compiler, Interpreter, Assembler, Algorithm और Flowchart

Learn machine, assembly and high-level languages, compilers, interpreters, assemblers, source code, algorithms, flowcharts and programming errors through simple examples and competitive-exam practice questions. मशीन, असेंबली और उच्चस्तरीय भाषाओं, कंपाइलर–इंटरप्रेटर–असेंबलर, सोर्स कोड, एल्गोरिदम, फ्लोचार्ट तथा प्रोग्रामिंग त्रुटियों को समझें। प्रतियोगी परीक्षाओं के लिए सरल उदाहरण और अभ्यास प्रश्न।

Chapter 9 : Programming Languages and Translators Programming Languages and Translators

Programming Languages and Translators

Computers require clear instructions to perform tasks. Programming languages provide a way to write those instructions. Translators and development tools help convert, execute and check programs.

1. Programs and Programming Languages

A program is a set of instructions prepared to perform a task. A programming language supplies rules and structures for writing instructions.

Example: A small program might accept marks in three subjects, calculate their total and display the result.

Programming involves more than typing code. It also includes understanding the problem, planning a solution, testing and correcting errors.

2. Machine, Assembly and High-Level Languages

Type Main identification Important point
Machine language Binary instruction encodings executed by a processor Associated with a particular instruction-set architecture.
Assembly language Mnemonics such as ADD and MOV, and symbolic names Translated by an assembler.
High-level language Rules and structures relatively convenient for human programmers Examples include C, C++, Java and Python.

Machine and assembly languages are generally called low-level languages. High-level languages reduce the need to specify every individual machine instruction.

Avoid confusion: All computers do not use identical machine code. A program built for one instruction set need not run directly on another.

3. Source Code, Object Code and Executables

  • Source code: Instructions written by a programmer.
  • Object code: Translated code that often needs to be combined with other code or libraries.
  • Executable: A program form prepared to run on a suitable system.

In a compiled workflow, changing source code generally requires rebuilding the program. Renaming a source file does not turn it into an executable.

4. Compiler, Interpreter and Assembler

Tool Main role
Compiler Translates a source program into a target language or code representation.
Interpreter Interprets program instructions and carries out their operations.
Assembler Translates assembly language into machine or object code.

Introductory books often describe a compiler as translating the whole program and an interpreter as executing statements one at a time. This helps explain the basic distinction, but actual systems can combine compilation and interpretation.

Important: A compiler does not always produce a final executable directly. Its output can be object code, bytecode or another target representation.

5. Linker and Loader

  • Linker: Combines object files and required libraries and resolves references between them.
  • Loader: Helps place a program and its required components in memory for execution.

Traditional compiled workflow: Source Code → Compiler/Assembler → Object Code → Linker → Executable → Loader → Execution.

This is a simplified model. Not every language or runtime environment exposes exactly these separate stages.

6. Bytecode and Virtual Machines

Bytecode is an intermediate instruction representation processed by a suitable runtime or virtual machine.

In the usual Java workflow, source code is compiled into bytecode and executed by the JVM — Java Virtual Machine. A JVM can use techniques such as interpretation and just-in-time compilation.

Remember: A language is not necessarily exclusively compiled or exclusively interpreted. A language and its implementation are different concepts.

7. Important Languages and Their Identification

Language Main identification
C Associated with Dennis Ritchie; used in systems and general-purpose programming.
C++ Associated with Bjarne Stroustrup; supports several programming styles, including object-oriented programming.
Python Associated with Guido van Rossum; a high-level, general-purpose language.
Java Associated with the usual JVM and bytecode-based workflow.
SQL Structured Query Language; used to work with database data and structures.
HTML HyperText Markup Language; a markup language for structuring web documents.

HTML is not a general-purpose programming language. HTML can provide page structure, CSS presentation and JavaScript interactive behaviour.

Java and JavaScript are different languages. Similar names do not make them the same language.

8. Algorithms and Pseudocode

An algorithm is a clear, ordered and finite sequence of steps for solving a problem.

An algorithm for finding the average of two numbers:

  1. Accept two numbers, A and B.
  2. Calculate their sum.
  3. Divide the sum by 2.
  4. Display the average.

Pseudocode expresses program logic using simple, structured statements. It is not necessarily executable code in any particular programming language.

INPUT A, B
AVERAGE ← (A + B) / 2
OUTPUT AVERAGE
Meaning of ← here: Store the value calculated on the right under the name on the left. This is assignment.

9. Important Flowchart Symbols

A flowchart visually represents a process or algorithm using symbols and flow lines.

Shape Common meaning Example
Oval / rounded-end rectangle Start or End Beginning or ending the process
Rectangle Process TOTAL ← A + B
Parallelogram Input / Output Accepting marks or displaying results
Diamond Decision Are marks at least 40?
Arrowed line Flow direction Direction towards the next step

A decision commonly leads to branches labelled Yes/No or True/False.

10. Variables, Constants and Data Types

  • Variable: A named value or storage location whose value can change during a program.
  • Constant: A specified value that is not intended to change in the relevant program context.
  • Data type: A classification associated with a value’s nature and permitted operations.
Type Example
Integer25, 0, −8
Real / Floating-point3.5, −2.75
CharacterA single character, such as A
StringA sequence of characters, such as Ranchi
BooleanTrue or False

Exact type names and sizes depend on the language and implementation. “An integer always occupies two bytes” is not universally correct.

11. Sequence, Selection and Iteration

  • Sequence: Executing instructions in order.
  • Selection: Choosing an action according to a condition, as in IF–ELSE.
  • Iteration: Repeating instructions, as in FOR or WHILE loops.

Example: Displaying “Pass” when marks are at least 40 and “Fail” otherwise is selection. Repeating that check for ten students can involve iteration.

A function is a reusable group of instructions for a task. A function calling itself directly or indirectly is called recursion.

12. Syntax, Runtime and Logical Errors

Error Meaning Example
Syntax error Violation of the language’s grammar or structure Failing to close a required bracket
Runtime error A problem arising while the program runs Dividing a number by zero in Python
Logical error The program runs but incorrect logic produces an incorrect result Adding length and breadth instead of multiplying them to find a rectangle’s area

Testing checks program behaviour. Debugging finds and corrects the causes of errors. A dry run manually checks the logic step by step.

Important: Successful compilation does not prove that a program gives the correct result for every input. Logical and runtime errors may remain.

13. Quick Revision

  • Machine language is associated with a processor’s instruction set.
  • Assembly language uses mnemonics and symbolic names.
  • An assembler translates assembly language.
  • A linker combines object files and libraries.
  • A loader helps make a program available in memory for execution.
  • C — Dennis Ritchie; C++ — Bjarne Stroustrup; Python — Guido van Rossum.
  • HTML is a markup language; Java and JavaScript are different.
  • A flowchart diamond represents a decision; a parallelogram represents input/output.
  • Loops are associated with repetition.
  • Successful compilation does not mean a completely correct program.

14. Practice Questions

These are original practice questions, not verified previous-year questions. Each question has one correct answer.

Question 1. Which tool translates assembly language into machine or object code?

A. Loader
B. Assembler
C. Text viewer
D. Backup utility

View answer and explanation

Correct answer: B. Assembler

An assembler translates assembly instructions into machine or object code.

Question 2. Which tool combines object files with required libraries?

A. Scanner
B. Interpreter
C. Loader
D. Linker

View answer and explanation

Correct answer: D. Linker

A linker combines code modules and libraries and resolves references between them.

Question 3. Which shape normally represents a decision in a flowchart?

A. Diamond
B. Parallelogram
C. Plain rectangle
D. Arrowed line

View answer and explanation

Correct answer: A. Diamond

A diamond represents a condition and the branches resulting from its evaluation.

Question 4. In Python, a problem caused by dividing 10 by 0 during execution is a:

A. Spelling error only
B. Hardware error
C. Runtime error
D. Non-error

View answer and explanation

Correct answer: C. Runtime error

Python raises ZeroDivisionError when this operation is executed.

Question 5. A program adds a rectangle’s length and breadth instead of multiplying them to calculate area. This is a:

A. Correct algorithm
B. Logical error
C. Necessary syntax error
D. Hard-disk failure

View answer and explanation

Correct answer: B. Logical error

The program can run, but the incorrect formula does not produce the intended area.

Question 6. Who is primarily associated with developing C?

A. Dennis Ritchie
B. Bjarne Stroustrup
C. Guido van Rossum
D. Charles Babbage

View answer and explanation

Correct answer: A. Dennis Ritchie

Dennis Ritchie developed C at Bell Labs.

Question 7. Which of the following is a markup language?

A. C++
B. Python
C. Java
D. HTML

View answer and explanation

Correct answer: D. HTML

HTML is a markup language used to structure web documents.

Question 8. Which concept concerns repeatedly executing a group of instructions?

A. Linking only
B. Loading only
C. Iteration
D. File compression

View answer and explanation

Correct answer: C. Iteration

Iteration means repetition. FOR and WHILE loops are common examples.

Question 9. Which data type is associated with True and False?

A. Boolean
B. Image
C. String only
D. Floating-point only

View answer and explanation

Correct answer: A. Boolean

Boolean values represent logical truth and falsehood.

Question 10. Which conclusion is correct after successful compilation?

A. Testing is no longer necessary.
B. Every logical error has been removed.
C. The program is correct for every input.
D. Logical or runtime problems can still occur.

View answer and explanation

Correct answer: D.

Successful compilation does not guarantee the absence of every kind of error.

Question 11. Manually checking an algorithm’s logic step by step without executing it on a computer is called a:

A. Formatting operation
B. Dry run
C. Encryption operation
D. Spooling operation

View answer and explanation

Correct answer: B. Dry run

A dry run traces each step and value manually using example input.

Question 12. A function calling itself directly or indirectly is called:

A. Compilation
B. Installation
C. Recursion
D. Compression

View answer and explanation

Correct answer: C. Recursion

Recursion occurs when a function invokes itself directly or through other functions.

प्रोग्रामिंग भाषाएँ और ट्रांसलेटर

कंप्यूटर से कार्य कराने के लिए स्पष्ट निर्देश आवश्यक होते हैं। प्रोग्रामिंग भाषाएँ इन निर्देशों को लिखने का माध्यम हैं। ट्रांसलेटर और अन्य विकास टूल प्रोग्राम को अनुवाद करने, चलाने और जाँचने में सहायता करते हैं।

1. प्रोग्राम और प्रोग्रामिंग भाषा

प्रोग्राम किसी कार्य को पूरा करने के लिए तैयार निर्देशों का समूह है। प्रोग्रामिंग भाषा निर्देश लिखने के नियम और संरचना उपलब्ध कराती है।

उदाहरण: तीन विषयों के अंक लेना, उनका कुल निकालना और परिणाम दिखाना एक छोटे प्रोग्राम का कार्य हो सकता है।

प्रोग्रामिंग केवल कोड लिखना नहीं है। समस्या समझना, समाधान के चरण बनाना, कोड लिखना, परीक्षण करना और त्रुटियाँ सुधारना भी इसके भाग हैं।

2. मशीन, असेंबली और उच्चस्तरीय भाषा

प्रकार मुख्य पहचान महत्वपूर्ण बात
मशीन भाषा प्रोसेसर द्वारा निष्पादित बाइनरी instruction encoding किसी विशिष्ट instruction-set architecture से संबंधित होती है।
असेंबली भाषा ADD और MOV जैसे mnemonic तथा symbolic नाम असेंबलर इसे मशीन कोड में बदलता है।
उच्चस्तरीय भाषा मानव के लिए अपेक्षाकृत सुविधाजनक नियम और संरचनाएँ C, C++, Java और Python उदाहरण हैं।

मशीन और असेंबली भाषाओं को सामान्यतः low-level languages कहते हैं। उच्चस्तरीय भाषा में प्रोग्राम लिखने के लिए हर मशीन निर्देश का विवरण जानना आवश्यक नहीं होता।

भ्रम से बचें: सभी कंप्यूटरों का मशीन कोड समान नहीं होता। एक instruction set के लिए बना प्रोग्राम दूसरे पर सीधे चलना आवश्यक नहीं है।

3. सोर्स कोड, ऑब्जेक्ट कोड और निष्पादन योग्य फाइल

  • Source Code: प्रोग्रामर द्वारा लिखे गए निर्देश।
  • Object Code: अनुवाद के बाद प्राप्त कोड, जिसे अक्सर अन्य कोड या लाइब्रेरी से जोड़ना पड़ता है।
  • Executable: उपयुक्त प्रणाली पर चलाने के लिए तैयार प्रोग्राम रूप।

सोर्स कोड में परिवर्तन करने के बाद compiled workflow में सामान्यतः फिर से build करना पड़ता है। केवल सोर्स फाइल का नाम बदल देने से executable नहीं बनता।

4. Compiler, Interpreter और Assembler

टूल मुख्य भूमिका
Compiler सोर्स प्रोग्राम को लक्ष्य भाषा या कोड रूप में अनुवाद करना।
Interpreter प्रोग्राम के निर्देशों को समझकर उनका निष्पादन कराना।
Assembler असेंबली भाषा को मशीन या ऑब्जेक्ट कोड में बदलना।

प्रारंभिक पुस्तकों में compiler को “पूरे प्रोग्राम का अनुवाद” और interpreter को “एक-एक कथन का निष्पादन” करने वाला बताया जाता है। मूल अंतर समझने में यह उपयोगी है, लेकिन वास्तविक प्रणालियाँ compilation और interpretation दोनों मिला सकती हैं।

महत्वपूर्ण: Compiler का output हमेशा सीधे अंतिम executable नहीं होता। वह object code, bytecode या किसी अन्य लक्ष्य रूप में भी हो सकता है।

5. Linker और Loader

  • Linker: object files और आवश्यक libraries को जोड़ता है तथा उनके बीच references हल करता है।
  • Loader: प्रोग्राम और आवश्यक हिस्सों को निष्पादन के लिए मेमोरी में उपलब्ध कराने में सहायता करता है।

पारंपरिक compiled workflow: Source Code → Compiler/Assembler → Object Code → Linker → Executable → Loader → Execution.

यह एक सरल मॉडल है। सभी भाषाओं और runtime environments में ठीक यही अलग-अलग चरण दिखाई देना आवश्यक नहीं है।

6. Bytecode और Virtual Machine

Bytecode एक मध्यवर्ती instruction representation है, जिसे संबंधित runtime या virtual machine संसाधित कर सकती है।

Java के सामान्य workflow में source code bytecode में compile होता है और JVM — Java Virtual Machine उसे चलाती है। JVM interpretation और just-in-time compilation जैसी तकनीकें उपयोग कर सकती है।

याद रखें: “एक भाषा केवल compiled या केवल interpreted ही हो सकती है” कठोर सार्वभौमिक नियम नहीं है। भाषा और उसकी implementation अलग अवधारणाएँ हैं।

7. प्रमुख भाषाएँ और उनकी पहचान

भाषा मुख्य पहचान
C Dennis Ritchie से संबंधित; सिस्टम और सामान्य प्रयोजन प्रोग्रामिंग में उपयोग।
C++ Bjarne Stroustrup से संबंधित; object-oriented सहित अनेक प्रोग्रामिंग शैलियों का समर्थन।
Python Guido van Rossum से संबंधित; सामान्य प्रयोजन की उच्चस्तरीय भाषा।
Java JVM और bytecode आधारित सामान्य workflow से संबंधित।
SQL Structured Query Language; डेटाबेस डेटा और संरचना पर कार्य करने के लिए।
HTML HyperText Markup Language; वेब दस्तावेज की संरचना के लिए markup language।

HTML सामान्य प्रयोजन प्रोग्रामिंग भाषा नहीं है। वेब पेज की संरचना HTML, प्रस्तुति CSS और interactive व्यवहार JavaScript से संबंधित हो सकते हैं।

Java और JavaScript अलग भाषाएँ हैं। समान नाम होने से उन्हें एक ही भाषा नहीं मानना चाहिए।

8. एल्गोरिदम और स्यूडोकोड

Algorithm किसी समस्या को हल करने के लिए स्पष्ट, क्रमबद्ध और सीमित चरणों की विधि है।

दो संख्याओं का औसत निकालने का एल्गोरिदम:

  1. दो संख्याएँ A और B लें।
  2. दोनों का योग निकालें।
  3. योग को 2 से भाग दें।
  4. औसत प्रदर्शित करें।

Pseudocode प्रोग्राम के तर्क को सरल, संरचित कथनों में लिखने का तरीका है। यह किसी एक प्रोग्रामिंग भाषा का अनिवार्य executable code नहीं होता।

INPUT A, B
AVERAGE ← (A + B) / 2
OUTPUT AVERAGE
यहाँ ← का अर्थ: दाईं ओर निकाले गए मान को बाईं ओर दिए नाम में रखना। इसे assignment कहा जाता है।

9. फ्लोचार्ट के प्रमुख प्रतीक

Flowchart किसी प्रक्रिया या एल्गोरिदम का प्रतीकों और प्रवाह-रेखाओं द्वारा चित्रात्मक निरूपण है।

प्रतीक का आकार सामान्य अर्थ उदाहरण
अंडाकार / गोल सिरों वाला आयत Start या End प्रक्रिया प्रारंभ या समाप्त
आयत Process TOTAL ← A + B
समांतर चतुर्भुज Input / Output अंक लेना या परिणाम दिखाना
हीरे का आकार Decision क्या अंक 40 या अधिक हैं?
तीर वाली रेखा Flow direction अगले चरण की दिशा

Decision से सामान्यतः Yes/No या True/False जैसी शाखाएँ निकलती हैं।

10. Variable, Constant और Data Type

  • Variable: नाम से पहचाना जाने वाला मान या संग्रहण स्थान, जिसका मान प्रोग्राम के दौरान बदल सकता है।
  • Constant: ऐसा निर्धारित मान जिसे संबंधित प्रोग्राम संदर्भ में बदलना नहीं है।
  • Data Type: किसी मान की प्रकृति और अनुमत operations से संबंधित वर्ग।
प्रकार उदाहरण
Integer25, 0, −8
Real / Floating-point3.5, −2.75
Characterएक अक्षर, जैसे A
Stringअक्षरों का क्रम, जैसे Ranchi
BooleanTrue या False

Data types के सटीक नाम और आकार भाषा तथा implementation पर निर्भर करते हैं। “Integer हमेशा 2 bytes होता है” सही सार्वभौमिक कथन नहीं है।

11. Sequence, Selection और Iteration

  • Sequence: निर्देशों को क्रम से चलाना।
  • Selection: शर्त के आधार पर अगला कार्य चुनना, जैसे IF–ELSE।
  • Iteration: निर्देशों को दोहराना, जैसे FOR या WHILE loop।

उदाहरण: यदि अंक 40 या अधिक हैं तो “Pass”, अन्यथा “Fail” दिखाना selection है। दस विद्यार्थियों के लिए यही जाँच दोहराना iteration हो सकता है।

Function किसी कार्य के लिए पुनः उपयोग योग्य निर्देश-समूह है। Function का स्वयं को प्रत्यक्ष या अप्रत्यक्ष रूप से बुलाना recursion कहलाता है।

12. Syntax, Runtime और Logical Errors

त्रुटि अर्थ उदाहरण
Syntax Error भाषा के व्याकरण या संरचना का उल्लंघन आवश्यक bracket बंद न करना
Runtime Error प्रोग्राम चलते समय उत्पन्न समस्या Python में किसी संख्या को शून्य से भाग देना
Logical Error प्रोग्राम चले, लेकिन तर्क गलत होने से गलत परिणाम मिले आयत का क्षेत्रफल निकालने के लिए लंबाई × चौड़ाई के स्थान पर लंबाई + चौड़ाई करना

Testing प्रोग्राम का व्यवहार जाँचने की प्रक्रिया है। Debugging त्रुटि का कारण ढूँढने और सुधारने की प्रक्रिया है। Dry Run में तर्क को हाथ से चरण-दर-चरण जाँचा जाता है।

महत्वपूर्ण: सफल compilation यह प्रमाण नहीं है कि प्रोग्राम हर इनपुट पर सही परिणाम देगा। Logical और runtime errors फिर भी संभव हैं।

13. त्वरित पुनरावृत्ति

  • मशीन भाषा प्रोसेसर के instruction set से संबंधित होती है।
  • असेंबली भाषा mnemonic और symbolic नाम उपयोग करती है।
  • Assembler असेंबली भाषा का अनुवाद करता है।
  • Linker object files और libraries जोड़ता है।
  • Loader प्रोग्राम को निष्पादन के लिए मेमोरी में उपलब्ध कराने में सहायता करता है।
  • C — Dennis Ritchie; C++ — Bjarne Stroustrup; Python — Guido van Rossum।
  • HTML markup language है; Java और JavaScript अलग हैं।
  • Flowchart में diamond निर्णय और parallelogram input/output दर्शाता है।
  • Loop का संबंध दोहराव से है।
  • सफल compilation का अर्थ पूर्णतः सही प्रोग्राम नहीं है।

14. अभ्यास प्रश्न

ये मौलिक अभ्यास प्रश्न हैं, सत्यापित पूर्ववर्ष प्रश्न नहीं। प्रत्येक प्रश्न का एक सही उत्तर है।

प्रश्न 1. असेंबली भाषा को मशीन या ऑब्जेक्ट कोड में कौन बदलता है?

A. Loader
B. Assembler
C. Text viewer
D. Backup utility

उत्तर और व्याख्या देखें

सही उत्तर: B. Assembler

Assembler असेंबली निर्देशों का मशीन या ऑब्जेक्ट कोड में अनुवाद करता है।

प्रश्न 2. Object files को आवश्यक libraries से जोड़ने वाला टूल कौन-सा है?

A. Scanner
B. Interpreter
C. Loader
D. Linker

उत्तर और व्याख्या देखें

सही उत्तर: D. Linker

Linker अलग code modules और libraries के बीच references हल करके उन्हें जोड़ता है।

प्रश्न 3. फ्लोचार्ट में निर्णय के लिए सामान्यतः कौन-सा आकार प्रयुक्त होता है?

A. हीरे का आकार
B. समांतर चतुर्भुज
C. साधारण आयत
D. तीर वाली रेखा

उत्तर और व्याख्या देखें

सही उत्तर: A. हीरे का आकार

Diamond किसी शर्त की जाँच और उससे निकलने वाली शाखाएँ दर्शाता है।

प्रश्न 4. Python में प्रोग्राम चलते समय 10 को 0 से भाग देने पर उत्पन्न समस्या किस श्रेणी में आती है?

A. केवल spelling error
B. Hardware error
C. Runtime error
D. कोई त्रुटि नहीं

उत्तर और व्याख्या देखें

सही उत्तर: C. Runtime error

Python में शून्य से भाग देने पर execution के दौरान ZeroDivisionError उत्पन्न होता है।

प्रश्न 5. आयत का क्षेत्रफल निकालने के लिए प्रोग्राम लंबाई और चौड़ाई को गुणा करने के बजाय जोड़ता है। यह क्या है?

A. सही एल्गोरिदम
B. Logical error
C. आवश्यक syntax error
D. हार्ड डिस्क की खराबी

उत्तर और व्याख्या देखें

सही उत्तर: B. Logical error

प्रोग्राम चल सकता है, लेकिन गलत सूत्र के कारण अपेक्षित क्षेत्रफल नहीं मिलेगा।

प्रश्न 6. C भाषा का विकास किससे प्रमुख रूप से संबंधित है?

A. Dennis Ritchie
B. Bjarne Stroustrup
C. Guido van Rossum
D. Charles Babbage

उत्तर और व्याख्या देखें

सही उत्तर: A. Dennis Ritchie

Dennis Ritchie ने Bell Labs में C भाषा विकसित की।

प्रश्न 7. निम्नलिखित में से कौन markup language है?

A. C++
B. Python
C. Java
D. HTML

उत्तर और व्याख्या देखें

सही उत्तर: D. HTML

HTML वेब दस्तावेज की संरचना बताने वाली markup language है।

प्रश्न 8. एक ही निर्देश-समूह को बार-बार चलाने से कौन-सी अवधारणा संबंधित है?

A. केवल linking
B. केवल loading
C. Iteration
D. फाइल compression

उत्तर और व्याख्या देखें

सही उत्तर: C. Iteration

Iteration का अर्थ निर्देशों का दोहराव है। FOR और WHILE इसके सामान्य उदाहरण हैं।

प्रश्न 9. किस data type का संबंध True और False से है?

A. Boolean
B. Image
C. String only
D. Floating-point only

उत्तर और व्याख्या देखें

सही उत्तर: A. Boolean

Boolean तार्किक सत्य और असत्य मानों का निरूपण करता है।

प्रश्न 10. सफल compilation के बाद कौन-सा निष्कर्ष सही है?

A. अब testing की जरूरत नहीं है।
B. सभी logical errors समाप्त हो गए हैं।
C. प्रोग्राम हर इनपुट पर सही है।
D. प्रोग्राम में logical या runtime समस्या फिर भी हो सकती है।

उत्तर और व्याख्या देखें

सही उत्तर: D.

Compilation की सफलता सभी प्रकार की त्रुटियों के अभाव की गारंटी नहीं है।

प्रश्न 11. एल्गोरिदम के तर्क को बिना कंप्यूटर चलाए हाथ से चरण-दर-चरण जाँचना क्या कहलाता है?

A. Formatting
B. Dry run
C. Encryption
D. Spooling

उत्तर और व्याख्या देखें

सही उत्तर: B. Dry run

Dry run में उदाहरणात्मक इनपुट लेकर प्रत्येक चरण और मान का हाथ से परीक्षण किया जाता है।

प्रश्न 12. किसी function का स्वयं को प्रत्यक्ष या अप्रत्यक्ष रूप से बुलाना क्या कहलाता है?

A. Compilation
B. Installation
C. Recursion
D. Compression

उत्तर और व्याख्या देखें

सही उत्तर: C. Recursion

Recursion में function अपने ही निष्पादन को फिर बुलाता है, प्रत्यक्ष रूप से या अन्य functions के माध्यम से।