Функция для перевода целого числа в 16-ую систему счисления - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Добрый день! Кто-то встречал или имеет функцию для перевода целого числа в 16-ую систему счисления?

Решение задачи: «Функция для перевода целого числа в 16-ую систему счисления»

textual
Листинг программы
void function(int a) {
    int mas[6];
    int counter = 0;
    while(a > 0) {
        mas[counter] = a%16;
        a/=16;
        counter++;
    }
    for(int i=counter-1; i>=0; i--) {
        if(mas[i] == 10) printf("A");
        else if(mas[i] == 11) printf("B");
        else if(mas[i] == 12) printf("C");
        else if(mas[i] == 13) printf("D");
        else if(mas[i] == 14) printf("E");
        else if(mas[i] == 15) printf("F");
        else printf("%d", mas[i]);
    }
    printf("\n");
}

Объяснение кода листинга программы

  1. Создается массив целых чисел mas[6]
  2. Инициализируется переменная counter = 0
  3. Запускается цикл while, который выполняется до тех пор, пока a больше 0
  4. В каждой итерации цикла значение a делится на 16 и записывается в массив mas[counter] остаток от деления
  5. Переменная a обновляется, путем деления на 16
  6. Переменная counter увеличивается на 1
  7. После окончания цикла while, запускается цикл for, который выполняется от counter-1 до 0, включительно
  8. В каждой итерации цикла проверяется значение mas[i] и выводится соответствующая буква
  9. Значение mas[i] равно 10 - выводится A
  10. Значение mas[i] равно 11 - выводится B
  11. Значение mas[i] равно 12 - выводится C
  12. Значение mas[i] равно 13 - выводится D
  13. Значение mas[i] равно 14 - выводится E
  14. Значение mas[i] равно 15 - выводится F
  15. Значение mas[i] не равно 10, 11, 12, 13, 14 или 15 - выводится значение mas[i]
  16. Цикл for завершается
  17. Выводится символ новой строки \n
  18. Функция заканчивается

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.909 из 5
Похожие ответы