Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.11.2021, 14:19   #1
Vladix1
Пользователь
 
Регистрация: 27.10.2021
Сообщений: 13
По умолчанию ASCII in C

Как из 'A' путём выполнения программы я должен получить 01000001 за счёт массива с True и False, где true = 0, false = 1.
Vladix1 вне форума Ответить с цитированием
Старый 23.11.2021, 15:39   #2
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,728
По умолчанию

Как простейшую задачу описать ещё более запутанно, чтоб вообще ничего не понять? Что за массив, и каким боком к нему True и False ?
Изображения
Тип файла: jpg TF.jpg (18.2 Кб, 14 просмотров)

Последний раз редактировалось digitalis; 23.11.2021 в 15:45.
digitalis вне форума Ответить с цитированием
Старый 23.11.2021, 15:57   #3
ForenLi
Форумчанин
 
Регистрация: 02.06.2021
Сообщений: 515
По умолчанию

Может быть типа:
Код:
#include <iostream>

int main(int argc, char** argv)
{
    bool Mas[]{ false, true };
    unsigned char A = 'A';
    unsigned char Mask = 0x80;
    for (size_t i = 0; i < 8; ++i)
    {
        std::cout << Mas[(A & Mask) >> (7-i)];
        Mask >>= 1;
    }
}
Только непонятно зачем тут массив...
ForenLi вне форума Ответить с цитированием
Старый 23.11.2021, 16:06   #4
Vladix1
Пользователь
 
Регистрация: 27.10.2021
Сообщений: 13
По умолчанию

ForenLi, Спасибо. Просто задание такого типа, и я не совсем понимаю как оно должно работать без команды такого типа encoding.ASCII.GetBytes. На основе ASCII значения символа высчитать значение символа в двоичном формате. Пример:

Код:
bool bits1[8];
encode_char('A', bits1);
for(int i = 0; i < 8; i++){
    printf("%d", bits1[i]);
}
printf("\n");
// prints: 01000001

bool bits2[8] = {0,1,0,0,0,0,0,1};
printf("%c\n", decode_byte(bits2));
// prints: A
Vladix1 вне форума Ответить с цитированием
Старый 23.11.2021, 16:11   #5
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,728
По умолчанию

Ему же вроде Си нужен не приплюснутый... А в нём булей нет.
Может, так:

Код:
char a,key,bits[8] ;
a = 'A' ;
key = 1 ;
for(int i = 0; i < 8; i++)
{
    if ((key && a) == 0) bits[7-i] = '0'; else bits[7-i] = '1' ;
    key += key ;
}
puts(bits);

Последний раз редактировалось digitalis; 23.11.2021 в 16:25.
digitalis вне форума Ответить с цитированием
Старый 23.11.2021, 16:11   #6
ForenLi
Форумчанин
 
Регистрация: 02.06.2021
Сообщений: 515
По умолчанию

Цитата:
Сообщение от Vladix1 Посмотреть сообщение
На основе ASCII значения символа высчитать значение символа в двоичном формате.
Так это совсем другая задача... Выкиньте массив из кода выше и готово.
ForenLi вне форума Ответить с цитированием
Старый 23.11.2021, 16:14   #7
ForenLi
Форумчанин
 
Регистрация: 02.06.2021
Сообщений: 515
По умолчанию

Цитата:
Сообщение от digitalis Посмотреть сообщение
Ему же вроде Си нужен не приплюснутый...
Так там только cout на принтф заменить.

Цитата:
Сообщение от digitalis Посмотреть сообщение
А в нём булей нет.
C C99 есть stdbool.h
ForenLi вне форума Ответить с цитированием
Старый 23.11.2021, 16:27   #8
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,728
По умолчанию

Ну в моей версии буль-буль не понадобился ( в явном виде )
digitalis вне форума Ответить с цитированием
Старый 23.11.2021, 16:33   #9
Vladix1
Пользователь
 
Регистрация: 27.10.2021
Сообщений: 13
По умолчанию

digitalis, Большое спасибо за помощь всем
Vladix1 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ASCII 3D Kostia JavaScript, Ajax 5 31.12.2013 12:42
ascii в си++ Bonne Помощь студентам 0 09.04.2010 19:22
C++ ASCII #26 budulaj-ua Общие вопросы C/C++ 4 14.10.2009 16:54
ASCII Dimarik Общие вопросы C/C++ 27 28.08.2009 14:50
ASCII коды Strogg Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 03.04.2009 17:09