0 / 0 / 0
Регистрация: 25.05.2009
Сообщений: 6
|
|
1 | |
прокомментируйте текст программы31.05.2009, 15:42. Показов 721. Ответов 0
Метки нет (Все метки)
задача 1----------------------
uses crt; var n,x:integer; FUNCTION DEC2BIN(DEC: LONGINT): STRING; {в 2-ую сс} VAR BIN : STRING; I, J: LONGINT; BEGIN IF DEC = 0 THEN BIN := '0' ELSE BEGIN BIN := ''; I := 0; WHILE (1 SHL (I + 1)) <=DEC DO I := I + 1; { (1 SHL (I + 1)) = 2^(I + 1) } FOR J := 0 TO I DO BEGIN IF (DEC SHR (I - J)) = 1 THEN BIN := BIN + '1' { (DEC SHR (I - J)) = DEC DIV 2^(I - J) } ELSE BIN := BIN + '0'; DEC := DEC AND ((1 SHL (I - J)) - 1); { DEC AND ((1 SHL (I - J)) - 1) = DEC MOD 2^(I - J) } END; END; DEC2BIN := BIN; END; FUNCTION DEC2HEX(DEC: LONGINT): STRING; {в 16-ую сс} CONST HEXDigts: STRING[16] = '0123456789ABCDEF'; VAR HEX : STRING; I, J: LONGINT; BEGIN IF DEC = 0 THEN HEX := '0' ELSE BEGIN HEX := ''; I := 0; WHILE (1 SHL ((I + 1) * 4)) <=DEC DO I := I + 1; { 16^N = 2^(N * 4) } { (1 SHL ((I + 1) * 4)) = 16^(I + 1) } FOR J := 0 TO I DO BEGIN HEX := HEX + HEXDigts[(DEC SHR ((I - J) * 4)) + 1]; { (DEC SHR ((I - J) * 4)) = DEC DIV 16^(I - J) } DEC := DEC AND ((1 SHL ((I - J) * 4)) - 1); { DEC AND ((1 SHL ((I - J) * 4)) - 1) = DEC MOD 16^(I - J) } END; END; DEC2HEX := HEX; END; FUNCTION DEC2OCT(DEC: LONGINT): STRING; {в 8-ую сс} CONST OCTDigts: STRING[8] = '01234567'; VAR OCT : STRING; I, J: LONGINT; BEGIN IF DEC = 0 THEN OCT := '0' ELSE BEGIN OCT := ''; I := 0; WHILE (1 SHL ((I + 1) * 3)) <=DEC DO I := I + 1; { 8^N = 2^(N * 3) } { (1 SHL (I + 1)) = 8^(I + 1) } FOR J := 0 TO I DO BEGIN OCT := OCT + OCTDigts[(DEC SHR ((I - J) * 3)) + 1]; { (DEC SHR ((I - J) * 3)) = DEC DIV 8^(I - J) } DEC := DEC AND ((1 SHL ((I - J) * 3)) - 1); { DEC AND ((1 SHL ((I - J) * 3)) - 1) = DEC MOD 8^(I - J) } END; END; DEC2OCT := OCT; END; begin clrscr; writeln('vvedite chislo:'); readln(x); writeln('2-naia:',dec2bin(x),' 8-naia:',dec2oct(x),' 16-naia:',dec2hex(x)); readkey; END. задача 2----------- program matrica; uses crt; var n,i,j:integer; a,b:array[1..50,1..50]of integer; begin clrscr; write('n=');readln(n); writeln('ishodnaia matritsha:'); {randoize;} for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=10*i+j; write(a[i,j]:3); end; writeln; end; readln; writeln('povorot na 90 grad:'); for i:=1 to n do for j:=1 to n do b[i,j]:=a[n-j+1,i]; for i:=1 to n do begin for j:=1 to n do write (b[i,j]:3); writeln; end; readln end.
0
|
31.05.2009, 15:42 | |
Ответы с готовыми решениями:
0
Прокомментируйте две программы Прокомментируйте код программы Прокомментируйте, пожалуйста, код программы. Прокомментируйте,пожалуйста, участки программы |
31.05.2009, 15:42 | |
31.05.2009, 15:42 | |
Помогаю со студенческими работами здесь
1
Подскажите. Не компилирует текст программы, запрашивает в коде мол не достающую скобку. Ниже приведен текст программы. Вывести на экран текст программы на Java, которая, в свою очередь, выводит текст программы на Ruby Вывод системного времени (прокомментируйте код программы) Работа со стеком: Прокомментируйте выделенную часть программы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |