Skip to content

Level 389 of 415

C++: A vector in C++

Indentation is part of the exercise. Press Enter at the end of each line and use spaces, never Tab.

Target
28 WPM
Accuracy
94.6%
XP
96
WPM0
Accuracy0.0%
Time0:00
Raw0
Consistency0%
std::vector<int> values = {4, 8, 15, 16, 23, 42};
int total = 0;
for (const int& value : values) {
total += value;
}

Click here or press Tab to start typing

Notes on this level

Which finger types each key

A browser can only report which character was typed, never which finger pressed it. That is why this lesson blocks on the wrong key rather than claiming to detect the wrong finger — the finger is something you have to build the habit for, and the table below is the habit to build.

<
Right middle finger, bottom row — reaching down from K, with Shift held by the opposite hand's little finger.
>
Right ring finger, bottom row — reaching down from L, with Shift held by the opposite hand's little finger.
{
Right pinky finger, top row — reaching up from ;, with Shift held by the opposite hand's little finger.
}
Right pinky finger, top row — reaching up from ;, with Shift held by the opposite hand's little finger.
:
Right pinky finger, home row — where the right pinky finger already rests, with Shift held by the opposite hand's little finger.
&
Right index finger, number row — reaching up from J, with Shift held by the opposite hand's little finger.
;
Right pinky finger, home row — where the right pinky finger already rests.

What these symbols are for

Punctuation and symbols are where most typists slow down, because they combine the weakest fingers with the Shift key and appear too rarely for the habit to form by accident.

<
means “less than”, and opens an HTML tag.
>
means “greater than”, and closes an HTML tag.
{
opens a block of code or an object.
}
closes a block of code or an object.
:
introduces a list, a definition, or a value in JSON and YAML.
&
means “and”, and joins conditions in most programming languages.
;
separates clauses, and ends a statement in many programming languages.

Where the mistakes come from

Errors are rarely random. A wrong key is usually the right finger travelling the wrong distance in its own column, which is why the fix is control rather than slowing down everywhere.

<
Most often mistyped as 8, i, k — the other keys the right middle finger is responsible for.
>
Most often mistyped as 9, o, l — the other keys the right ring finger is responsible for.
{
Most often mistyped as 0, -, =, p, ], \, ;, ', / — the other keys the right pinky finger is responsible for.
}
Most often mistyped as 0, -, =, p, [, \, ;, ', / — the other keys the right pinky finger is responsible for.
:
Most often mistyped as 0, -, =, p, [, ], \, ', / — the other keys the right pinky finger is responsible for.
&
Most often mistyped as 6, y, u, h, j, n, m — the other keys the right index finger is responsible for.
;
Most often mistyped as 0, -, =, p, [, ], \, ', / — the other keys the right pinky finger is responsible for.

Most difficulty at this stage is technique rather than effort. These explain the technique.