Функция: вычислить значение числа по записи этого числа в двоичной системе счисления - C (СИ)
Формулировка задачи:
Назначение: вычисляет десятичное значение целого числа по заданной строке символов s, который является записью этого числа в двоичной системе счисления.
Постановка задачи
В соответствии с вариантом задания составить функцию для обработки символьных строк и программу для проверки работоспособности функции. За образец можно брать библиотечные функции обработки строк языка С, но не использовать их в своей функции.
При выполнении 1-го задания необходимо:
1. Строки для тестирования функции вводить в главной программе с клавиатуры.
2. Предусмотреть обработку ошибок в задании параметров и особые случаи.
3. Разработать два варианта заданной функции с использованием:
а) индексированных массивов;
б) указателей.
Решение задачи: «Функция: вычислить значение числа по записи этого числа в двоичной системе счисления»
textual
Листинг программы
#include<stdio.h> #include<conio.h> long bin_to_dec(char *s, int *err) { short i; long res = 0; *err = 0; for (i = 0; i < sizeof(long) * 8 && s[i]; ++i) { if (s[i] != '0' && s[i]!='1') { *err = 1; return 0; } res <<= 1; res |= (s[i] - '0'); } return res; } int main(void) { char s[100]; int err; long res; printf("Введи двоичное число\n"); scanf("%s", s); res = bin_to_dec(s, &err); if (err) printf("Ошибочный ввод:%s\n", s); else printf("Bin = %s Dec = %ld\n", s, res); _getch(); return 0; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д