![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 04.10.2012
Сообщений: 4
|
![]()
В вузе задали написать программу на паскале, которая определяет в каких байтах расположена мантисса, а в каких порядок. Условия задачи: тип:single, число:5,8E10. Основываясь на похожей программе написала свою. Но мне кажется, что в ней есть ошибка, потому-что у меня возникают 2 байта порядка, а ведь он должен быть только 1 вроде бы. Подскажите, как исправить?
uses crt; var s:single; m:array[1..4] of byte absolute s; pm:array[1..4] of byte; i:integer; mb,pb:byte; begin clrscr; s:= 1.0; Writeln('s= ',s); Writeln('Значения 4 байт вещественного числа:'); for i:=1 to 4 do begin Write(m[i],' '); pm[i]:= m[i]; end; Writeln; s:= 2.0; Writeln('Новое значение s = ',s); for i:=1 to 4 do begin Write(m[i],' '); end; Writeln; for i:=1 to 4 do begin if m[i] = pm[i] then begin Writeln(i,' байт числа - мантисса'); mb:=mb+1; {количество байт в мантиссе} end else begin pb:=i; {байт,в котором лежит порядок} Writeln(i,' байт числа - порядок'); end; end; Writeln; Writeln('введите ',mb, ' байт мантиссы'); if pb = 1 then begin for i:=pb+1 to mb+1 do Read(m[i]); end else begin for i:=1 to mb do Read(m[i]); end; Writeln('введите значение порядка'); Readln(m[pb]); Writeln('Конечное значение s= ',s); end. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа нахождения суммы. | maris | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 01.12.2011 19:45 |
Программа нахождения суммы (Pascal) | Forgotten | Помощь студентам | 1 | 24.10.2011 14:14 |
программа нахождения суммы | Pchelka1992 | Помощь студентам | 8 | 05.04.2011 19:18 |
Программа нахождения | kolega007 | Фриланс | 3 | 16.06.2010 11:15 |
Программа нахождения последовательностей | Влад-mego | Общие вопросы C/C++ | 4 | 21.12.2008 22:40 |