YuREVICh646
?>

Вкакой системе счисления записано арифметическое выражение : 122+41=213

Информатика

Ответы

alisapavlushina
В5ричной системе счисления)
espectr-m

не пользуйся одной таблицей, это не безопасно. : ) я советую создавать отдельную таблицу для каждой сессии.

извини, если код будет плохо читаться. этот сайт не поддерживает табуляцию и не умеет обрабатывать код.

/* only for windows */

#include < stdio.h>

#include < stdlib.h>

#include < stdbool.h>

#include < string.h>

#include < time.h>

#include < conio.h>

#include < windows.h>

#define alph_size 67

#define str_size_max 256

#define random_min 33

#define random_max 126

int main(void) {

handle handle = getstdhandle(std_output_handle);

 

setconsolecp(1251);

setconsoleoutputcp(1251);

srand(time(null)); /* for "visible" random */

char str[str_size_max];

printf("введите строку: ");

scanf("%[^\n]s", str);

printf("\n");

/* encode only these symbols */

char alph[alph_size] = "абвгежзиклмнопрстуфхцчшщъыьэюя" \

  "абвгдежзиклмнопрстуфхцчшщъыьэюя ";

 

char genalph[alph_size];

 

int i;

for (i = 0; i < alph_size; i++) {

  /* for beauty */

  if ((i % 5 == 0) & & (i ! = 0)) {  

  printf("\n");  

  }

 

  genalph[i] = random_min + rand() % (random_max - random_min + 1);

 

  /* that don't use goto */

  if (i > 0) {

  if (genalph[i - 1] == genalph[i]) {

    while (genalph[i - 1] == genalph[i]) {

    genalph[i] = random_min + rand() % (random_max - random_min + 1);

    }

  }

  }

 

  setconsoletextattribute(handle, 10 | 0); /* set symbol color to green */

  printf("%c", alph[i]);

  setconsoletextattribute(handle, 7 | 0); /* set symbol color to white */

 

  printf(" = %c; ", genalph[i]);

}

 

printf("\n\n");

 

char buf[str_size_max] = "";

 

for (i = 0; i < (int) strlen(str); i++) {

  bool coded = false;

 

  int j;

  for (j = 0; j < alph_size; j++) {

  if (str[i] == alph[j]) {

    buf[i] = genalph[j];

    coded = true;

  }

  }

 

  if (! coded) {

  buf[i] = str[i];

  }

}

 

printf("закодированная строка: %s", buf);

 

getch();

return 0;

}

пример из программы:

введите строку: носит сеня в сени сено,спать на сене будет сеня.

а = }; б = `; в = ~; г = 8; д = ^;

е = q; ж = 6; з = > ; и = m; к = *;

л = ? ; м = v; н = m; о = s; п = };

р = & ; с = p; т = s; у = \; ф = $;

х = h; ц = ]; ч = g; ш = n; щ = 0;

ъ = y; ы = [; ь = i; э = 5; ю = i;

я = u; а = n; б = \; в = s; г = _;

д = k; е = 5; ж = #; з = c; и = g;

к = ~; л = < ; м = /; н = t; о = 6;

п = t; р = '; с = i; т = d; у = e;

ф = 0; х = o; ц = w; ч = q; ш = ';

щ = 6; ъ = h; ы = /; ь = h; э = a;

ю = [; я = ';   = h; . = j; , = w;

! = }; ? = @;

закодированная строка: tspmshiqmuh~hpqmmhpqmswp}}sihm}hpqmqh`\^qshiqmuj

таблица даётся только на время сессии и теряет свой смысл после завершения программы. : )

Natakarpova75732

переводим число 54 (отбросив знак) в двоичную систему счисления. получаем число 110110₂. допустим, для представления числа отведен один байт, тогда 54₁₀ = 0011 0110₂. это прямой код числа.

отрицательное число может быть представлено в обратном или дополнительном коде. в обратном коде старший (левый) разряд отрицательного числа равен единице, а остальные семь разрядов прямого кода инвертируются. получаем 1100 1001₂ в дополнительном коде еще нужно арифметически прибавить единицу. получим 1100 1010₂

запись в естественной форме:

10.00761 • 10⁶ = 10007610

3218.9 • 10⁻³ = 3.2189

23,66100е+3 = 23661

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Вкакой системе счисления записано арифметическое выражение : 122+41=213
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

alexfold
сузанна_Людмила
И.Д.1065
astenSA
ilplakhotin8734
skrepka397412
anna-leonova
vasilyevjob6
romasmart9
naromanova
xarchopuri22
grebish2002
droshchupkin
SERGEI124
maslprod