11111(2)=1+2+4+8+16=31(10) =3*8+7=37(8)=16+15=1F(16)
111(8)=1+8+64=73(10)=4*16+9=49(16)=1+2^3+2^6=1+8+64=1001001(2)
256(10)=2^8=100000000(2)=4*8^2=400(8)=16^2=100(16)
AA(16)=10*16+10=170(10)=2*64+5*8+2=252(8)=2+2^3+2^5+2^7=2+8+32+128=10101010(2)
<u>PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018</u>
<u>Внимание! Если программа не работает, обновите версию!</u>
procedure RedFrac(a,b:integer; var c,d:integer); // сокращение дроби
function Gcd(a,b:integer):integer; // НОД
begin
while b<>0 do begin a:=a mod b; Swap(a,b) end;
Result:=a
end;
begin
var sgnc:=Sign(a); // мы должны учитывать знак!
var sgnd:=Sign(b); // мы должны учитывать знак!
c:=Abs(a); d:=Abs(b);
var g:=Gcd(c,d);
c:=(c div g)*sgnc; d:=(d div g)*sgnd
end;
begin
var p,q,r,s:integer;
Write('Введите числитель и знаменатель: '); Read(p,q);
RedFrac(p,q,r,s);
Writeln(p,' / ',q,' = ',r, ' / ',s)
end.
<u>Пример</u>
Введите числитель и знаменатель: 384 4096
384 / 4096 = 3 / 32
Единичная система счисления Необходимость в записи чисел стала возникать у людей еще в древности после того, как они научились считать. Свидетельством этого являются археологические находки в местах стойбищ первобытных людей, которые относятся к периоду палеолита (10-11 тыс. лет до н.э.). Изначально количество предметов изображали, используя определенные знаки: черточки, насечки, кружочки, нанесенные на камни, дерево или глину, а также узлы на веревках. Рисунок 1. Ученые эту систему записи чисел называют единичной (унарной), поскольку число в ней образовано повторением одного знака, который символизирует единицу.
Информация взята с сайта биржи Автор24: https://spravochnick.ru/informatika/sistemy_schisleniya/nepozicionnye_sistemy_schisleniya/ .
Для генерации такой матрицы, где строки/столбцы нумеруются на побочной диалонали, нужно знать условие, которому соответствует элемент побочной диалонали.
Aij - элемент побочной диагонали квадратной матрицы А тогда и только тогда, когда i = N - j, где N - размерность матрицы А.
Код на рисунке 1.
<em>// PascalABC.NET 3.2, сборка 1425 от 22.04.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var a:=ArrFill(ReadInteger('n='),0);
a[0]:=1; a[a.Length-1]:=1; a.Println;
end.
<u>Пример</u>
n= 10
1 0 0 0 0 0 0 0 0 1