Как Вывести на экран фрагмент англ. алфавита, если заданы начальная и конечная буквы фрагмента?

Мне нужно взять и вывести в консоль строчные буквы английского алфавита. Например, в консоль вводят b и h. На экран выводит b, c, d, ..., g, h.


Ответы (2 шт):

Автор решения: user393903
#include <array>
#include <cstddef>
#include <iostream>

int main() {
    const std::size_t first = 3;
    const std::size_t last = 12;

    const std::array alphabet = {'a','b','c','d','e','f',
                                 'g','h','i','j','k','l',
                                 'm','n','o','p','q','r',
                                 's','t','u','v','w','x',
                                 'y','z'};

    for (std::size_t i = first; i <= last; ++i) {
        std::cout << alphabet[i] << '\n';
    }
}
→ Ссылка
Автор решения: return

Всё просто. Символ – это число. Мы можем проиндексировать любой символ вот так: char sym = 'a' + index. Да, так просто. А так же для него работает инкремент, а значит:

int main() {
    char start, end;

    scanf("%c %c", &start, &end);

    <валидация, чтоб `start` и `end` были символами английского алфавита>

    for (register char i = start; i <= end; ++i)
        printf("%c ", i);
}

Вместо printf можно использовать другие, более эффективные функции вывода.

→ Ссылка