Quick Read
- Computer Science is one of five disciplines in the dMAT Battery Science module, not a standalone test, tested in the Basic Task plus two Advanced Tasks
- Basic Task: data types and memory. Advanced Tasks: combinational logic, and linear transformations of high-dimensional data (LDA)
- Format: technical reading passage + four-option single-choice questions, 90 minutes for the whole subject test
- Both advanced topics map to real battery engineering: logic gates to protective circuit decisions, LDA to catching a degrading cell early
- Method: read the passage as your reference sheet first, work logic questions one gate at a time, anchor precision questions to the passage’s stated ranges
- Attempt 12 free practice questions below using this method
This guide sets out what the Computer Science module covers, who it rewards, and how to prepare and closes with 12 original practice questions in the same passage-plus-multiple-choice format you will see on exam day.
What Is the dMAT Computer Science Section?
Battery management systems run on embedded software that reads cell voltage, temperature, and current in real time, then decides how to charge, discharge, and protect the pack. The three CS topics map directly onto that pipeline: sized data types for sensor readings, logic for rapid protective decisions, and data-driven methods to catch a degrading cell early.
Basic Task: Data Types and Memory:
| Type | Width | Range |
|---|---|---|
| Boolean | 1 bit | โ |
| Short | 16 bits | โ |
| Int | 32 bits | โ |
| Float | 32 bits | ~10ยณโธ |
| Double | 64 bits | ~10ยณโฐโธ |
| String | No fixed width | Any length |
Advanced Task 1: Combinational Logic
AND, OR, NOT gates; truth tables; simplifying an expression once you can trace it through a small circuit.
Advanced Task 2: Linear Transformations (LDA)
Linear Discriminant Analysis finds the directions in a data set that best separate predefined classes, exactly what a cell-diagnostics pipeline needs to distinguish a healthy cell from a degrading one across several variables at once.
How to Solve dMAT Computer Science Questions
Read the passage before you look at the questions, and treat it as your reference sheet. Note where the type-and-width table, the gate definitions, or the description of what LDA optimizes for sits. You will not have your own notes, but the passage gives you nearly everything you need, so look up a stated value range rather than recalling one from your degree.
Work logic questions one gate at a time. A question that chains two or three gates together is not hard if you evaluate it in order: find the output of the first gate for the given inputs, then feed that output into the next. Trying to hold the whole circuit in your head at once is where marks are lost.
For data type and precision questions, anchor on the actual numbers. Compare the magnitude in the question against the ranges given in the passage rather than guessing from memory, since exact widths can vary slightly between passages.
For LDA questions, separate what the technique optimizes for from how it is applied. Many wrong options describe a real but different technique, such as general variance reduction or file compression. Reread what the passage says LDA specifically searches for before choosing it.
dMAT Computer Science Practice Questions with Answers (Free)
The 12 questions below cover data types and bit widths, numeric precision and representation limits, combinational logic and truth tables, and linear discriminant analysis on high-dimensional data. They are original, built to test the same concepts as the official materials with different numbers and wording, and each one includes a full solution path. Work through them without notes and without a calculator, exactly as the real exam requires.
📄 Input 1 · Data Types, Bit Widths and Value Ranges
A variable is a named location in memory. In a typed language, declaring a variable fixes how much memory is reserved for it and what range of values it can hold. Declaring a variable with a value both reserves the memory and initialises it in one step; declaring without a value only reserves the memory. The table below lists representative widths. Questions 1 to 3 refer to this input.
| Type | Width | Approximate range |
|---|---|---|
| boolean | 1 bit | true or false |
| short | 16 bit | integers |
| int | 32 bit | integers |
| float | 32 bit | up to roughly 1038 |
| double | 64 bit | up to roughly 10308 |
| string | variable | depends on character count |
Question 1 Easy
A programmer declares a variable as boolean without assigning it a value. What has happened to memory at that point?
- a) A single bit has been reserved but not yet given a value
- b) 32 bits have been reserved and initialised to false
- c) No memory is reserved until a value is assigned
- d) 16 bits have been reserved, since all variables default to short width
✦View Solution PathHide Solution Path▼
Answer: a. Declaring a variable reserves the memory its type needs, here a single bit for a boolean. Only declaring it together with a value also initialises that memory. Since no value was given, the bit is reserved but not yet set.
Question 2 Medium
Which pair of variables together uses the same total memory as a single double?
- a) Two short variables
- b) One int and one float
- c) One boolean and one int
- d) One short and one int
✦View Solution PathHide Solution Path▼
Answer: b. A double is 64 bits. An int (32 bits) plus a float (32 bits) also totals 64 bits. Two shorts total 32 bits, a boolean plus an int totals 33 bits, and a short plus an int totals 48 bits, so none of the others match.
Question 3 Hard
A developer needs to store a numeric value of approximately 1050 for use in arithmetic. Which type from the table is the smallest one able to hold it, and why?
- a) int, because 32-bit integer types represent unlimited magnitude through overflow wrapping
- b) float, because it reaches roughly 1038, which is close enough to 1050
- c) double, because float tops out near 1038 while double reaches roughly 10308
- d) short, because 16-bit types automatically extend their range for large exponents
✦View Solution PathHide Solution Path▼
Answer: c. A value of 1050 is well beyond the roughly 1038 reach of a float, so a float cannot hold it. A double, reaching roughly 10308, is the smallest listed type that comfortably covers it. Overflow wrapping does not extend range, it corrupts the value, so option a is wrong for the opposite reason it claims to be right.
📄 Input 2 · Numeric Precision and Representation Limits
Floating-point types trade an enormous representable range for limited precision: only a fixed number of significant digits is stored, so a value near the edge of that range is rounded to the nearest representable value. Repeated arithmetic on such approximations accumulates a representation error. Moving from float to double extends both the representable range and the number of significant digits carried, which reduces this error without removing it entirely. Questions 4 to 6 refer to this input.
Question 4 Easy
What is the main trade-off a programmer accepts when choosing a float over a double to save memory?
- a) Faster processing, since float arithmetic is always executed in hardware and double never is
- b) More memory left over for other variables, with no change in precision
- c) A guaranteed error for any value that includes a decimal point
- d) Reduced precision, since fewer significant digits are carried at the same or a lower range
✦View Solution PathHide Solution Path▼
Answer: d. The passage states that floating types trade range for precision. A float carries fewer significant digits than a double, so values are rounded more coarsely. Memory saving is real, but it comes at the cost of precision, not for free.
Question 5 Medium
A long sequence of oscillation readings is repeatedly summed and averaged using float variables, and the final result drifts noticeably from the value obtained by repeating the same calculation with double variables. What best explains the drift?
- a) The representation error from repeated float rounding accumulates enough to be visible in the final average
- b) Float variables cannot store negative oscillation readings
- c) The double variables were declared without being initialised
- d) Boolean variables were silently substituted for the numeric readings
✦View Solution PathHide Solution Path▼
Answer: a. Each float addition rounds to the nearest representable value. Over a long sequence, those small roundings do not cancel out perfectly, and the accumulated representation error becomes large enough to separate the float result from the more precise double result.
Question 6 Medium
Which statement about representable range versus precision is correct?
- a) A wider representable range always means more significant digits are carried
- b) A type can have a wide representable range while still carrying a limited number of significant digits
- c) Precision and range are the same property described in two different ways
- d) Only integer types have a defined precision
✦View Solution PathHide Solution Path▼
Answer: b. A float already illustrates this: it reaches roughly 1038, a wide range, yet still carries only a fixed, limited number of significant digits. Range describes how large or small a value can be; precision describes how many digits of that value are actually stored. They are related but distinct properties.
📄 Input 3 · Combinational Logic and Truth Tables
Combinational logic circuits build outputs directly from the current inputs using logic gates. An AND gate outputs 1 only when every input is 1. An OR gate outputs 1 when at least one input is 1. A NOT gate inverts its single input. Gates can be chained, so that the output of one gate becomes the input to the next, letting simple gates build more complex expressions. Questions 7 to 9 refer to this input.
| A | B | A AND B | A OR B |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 |
| 1 | 0 | 0 | 1 |
| 1 | 1 | 1 | 1 |
Question 7 Easy
A circuit feeds inputs A and B into a single AND gate. For which combination does the output equal 1?
- a) A = 0, B = 0
- b) A = 0, B = 1
- c) A = 1, B = 1
- d) A = 1, B = 0
✦View Solution PathHide Solution Path▼
Answer: c. An AND gate outputs 1 only when both of its inputs are 1. Checking the truth table, that happens only for A = 1 and B = 1; every other combination gives 0.
Question 8 Medium
A circuit computes NOT(A OR B). For A = 0 and B = 0, what is the output?
- a) 0
- b) Undefined, since NOT cannot follow OR in the same circuit
- c) Equal to whatever value A holds
- d) 1
✦View Solution PathHide Solution Path▼
Answer: d. With A = 0 and B = 0, A OR B equals 0 from the truth table. Passing that 0 through the NOT gate inverts it to 1. Gates chain freely, so a NOT gate can follow an OR gate without issue.
Question 9 Hard
A circuit combines two gates in sequence: first A AND B, then the result is passed through a NOT gate, giving output Y = NOT(A AND B). For which combination of A and B does Y equal 0?
- a) A = 1, B = 1
- b) A = 0, B = 0
- c) A = 1, B = 0
- d) A = 0, B = 1
✦View Solution PathHide Solution Path▼
Answer: a. From the truth table, A AND B equals 1 only when A = 1 and B = 1. Passing a 1 through the following NOT gate gives Y = 0. For every other combination A AND B is 0, and NOT of 0 is 1, so A = 1 and B = 1 is the only case where Y drops to 0.
📄 Input 4 · Linear Discriminant Analysis and High-Dimensional Data
Linear Discriminant Analysis, or LDA, is a linear transformation applied to high-dimensional data sets. Rather than only reducing the number of dimensions the way some other transformations do, LDA searches for the directions along which data points belonging to different classes are best separated from each other. A data set with many measured variables per sample is projected onto a smaller number of these directions, and classification is then carried out in that reduced space. In battery diagnostics, each cell can be described by many measured variables such as voltage, temperature and internal impedance, and LDA can help distinguish healthy cells from degrading ones using those measurements together. Questions 10 to 12 refer to this input.
Question 10 Easy
What is the main goal LDA optimises for when it chooses its projection directions?
- a) Minimising the total variance of the data set as a whole
- b) Maximising the separation between predefined classes in the data
- c) Compressing the data to the smallest possible file size
- d) Removing the mean value from every measured variable
✦View Solution PathHide Solution Path▼
Answer: b. The passage states that LDA searches for the directions along which data points belonging to different classes are best separated. That is a class-separation objective, not a general variance-minimising or compression objective.
Question 11 Medium
A battery diagnostics data set records ten variables per cell, including voltage, temperature and impedance, and each cell is labelled as healthy or degrading. Why is LDA a reasonable technique to apply here, rather than treating this purely as unlabelled dimension reduction?
- a) Because LDA requires exactly ten variables to function
- b) Because LDA ignores the labels and only looks at overall variance
- c) Because LDA uses the healthy or degrading labels to find directions that separate the two classes, not just directions of maximum spread
- d) Because LDA can only be applied when there are exactly two measured variables
✦View Solution PathHide Solution Path▼
Answer: c. The labels are exactly what makes LDA useful here: it uses the healthy or degrading label of each cell to pick directions that separate those two groups, which a label-blind dimension reduction technique cannot do. Neither the variable count nor the number of variables restricts LDA the way the other options claim.
Question 12 Hard
After applying LDA to the ten-variable battery data set, classification accuracy in the reduced space is noticeably lower than expected. Which of the following would most directly explain the drop?
- a) The cells were all manufactured in the same production batch
- b) The measured variables were recorded in different physical units before scaling
- c) The number of healthy cells is larger than the number of degrading cells
- d) The healthy and degrading classes overlap heavily in the underlying measurement space, with no direction offering clean separation
✦View Solution PathHide Solution Path▼
Answer: d. LDA can only find a separating direction if one exists in the data. If the healthy and degrading cells genuinely overlap across every combination of the measured variables, no linear projection will separate them well, and classification accuracy in the reduced space will suffer no matter how carefully the transformation is computed.
Who Must Take the dMAT Computer Science Section?
Every candidate answers the Computer Science Basic Task, alongside the other four disciplines’ basic tasks; nobody is shut out of the module by a discipline they never studied.
The real advantage sits in the Advanced Tasks. Choose Computer Science there if your Bachelor’s is in CS, IT, or a related field; that background picks up marks others find harder under time pressure. Otherwise, treat the Basic Task as a fair foundation topic and move on.
dMAT Computer Science Syllabus: Basic and Advanced Tasks
| Task | Topic | What it involves |
|---|---|---|
| Basic Task | Data types and memory | Variable declaration, memory widths, representable ranges, precision |
| Advanced Task 1 | Combinational logic | Boolean AND, OR, NOT; logic gates; truth tables; simplifying expressions |
| Advanced Task 2 | Linear transformations of high-dimensional data sets | Linear Discriminant Analysis; separating classes in multivariate data |
As with the other four disciplines, every question here is passage-based. You are given a short technical passage, sometimes with a table, and the question tests whether you can apply undergraduate-level reasoning to it quickly, not whether you can recall a fact from memory. That distinction matters more for how you prepare than almost anything else in this guide.
dMAT Computer Science Study Plan Before 26 September 2026
Registration for the September 2026 cycle closes on 15 September 2026, with the exam itself on 26 September 2026. A four-week plan that treats Computer Science as one part of a five-discipline subject module works well.
| Week | Focus |
|---|---|
| 1: Diagnose | Attempt the 12 CS practice questions plus a handful from each of the other four disciplines. Note whether data types, combinational logic, or LDA costs the most time |
| 2: Refresh Basic Task | Re-read variable declaration, memory width, and value-range definitions until you can state them without a source |
| 3: Go deep | If your discipline is CS, focus on combinational logic and LDA. If not: your own two Advanced Task areas |
| 4: Rehearse conditions | No notes, no calculator on screen. Watch the official d-mat.de videos |
Frequently Asked Questions About the dMAT Computer Science Section
Do I need real programming experience to answer this section well?
No. The Basic Task tests data types and memory at the first-year level, and the passage supplies the specific widths and ranges you need.
Is the Computer Science section only relevant if I studied computer science?
Not for the Basic Task, which every candidate answers. It matters most if you choose Computer Science as one of your two Advanced Task areas, typically because your Bachelor’s degree is in computer science, IT, or a closely related field.
Why is there a computer science topic in a battery science exam at all?
Because battery management systems are built on exactly these foundations: sized data types for sensor readings, digital logic for protective decisions, and methods like LDA for diagnosing cell health.
Can I use a calculator for the numeric questions?
No. No calculator and no notes are allowed anywhere in the dMAT. Questions are designed to be answerable through reasoning and simple arithmetic.
What if I believe I have been assigned the wrong subject module?
Contact g.a.s.t. at kontakt@gast.de, since they handle registration and module assignment. APS India handles the separate APS procedure and any exemptions.



Have Questions? Get Guidance to reach your Dream University
Connect with India's finest counsellors and biggest study abroad community.
Get Guidance