Рассматриваем однобайтное представление целых чисел. Старший (левый) разряд знаковый, остальные семь хранят число в дополнительном двоичном коде. У положительного числа в знаковом разряде 0, у отрицательного единица. Для положительного числа прямой, обратный и дополнительный коды совпадают. У отрицательного числа в обратном коде все биты, кроме знакового, инвертируются. Для получения дополнительного кoда число в обратном коде арифметически увеличивается на 1. Чтобы получить для отрицательного числа прямой код, нужно инвертировать все его биты, кроме знакового, а затем арифметически увеличить код на 1.
begin ClrScr; Write('Введите 3-х значное число: '); Read(a); Write('Введите 2-х значное число: '); Read(b); s1:=a div 100+(a div 10) mod 10+a mod 10; s2:=b div 10+b mod 10; if s1>s2 then Writeln('Сумма цифр 3-х значного числа больше') else if s2>s1 then Writeln('Сумма цифр 2-х значного числа больше') else Writeln('Суммы цифр обоих чисел одинаковы'); ReadKey end.
Пример Введите 3-х значное число: 513 Введите 2-х значное число: 97 Сумма цифр 2-х значного числа больше
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку