Enemy_vn Опубликовано 29 марта, 2010 Жалоба Поделиться Опубликовано 29 марта, 2010 помогите пожалуста доделать программу что бы она с дробами работала var I:Integer; C:Char; Si,So:String; St:String[3]; const S:array['0'..'7'] of String[3]=('000','001','010','011','100','101','110','111'); begin ReadLn(Si); while Length(Si) mod 3 <> 0 do Si:='0'+Si; { доп. строку влево до длины, кратной 3 } So:=''; for I:=1 to Length(Si) div 3 do begin St:=Copy(Si,3*I-2,3); { 3*I-2 дает числа 1,4,7... - нач. позиции троек дв. цифр } for C:='0' to '7' do if St=S[C] then So:=So+C end; Writeln(So); end. ето прога для перевода из 2СС в 8СС пы. сы. СС - система счисления)))))) Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 30 марта, 2010 Жалоба Поделиться Опубликовано 30 марта, 2010 Enemy_vn: var i:integer; C:char; Fi,Fo,Si,So,Mi,Mo:string; St:string[3]; P:boolean;const S:array['0'..'7']of string[3]=('000','001','010','011','100','101','110','111');beginreadln(Fi); P:=Fi[1]='-'; if P or(Fi[1]='+') then delete(Fi,1,1); i:=pos('.',Fi); if i=0 then begin Fi:=Fi+'.'; i:=length(Fi) end;Si:=copy(Fi,1,i-1); Mi:=copy(Fi,i+1,length(Fi)-i); So:=''; Mo:='';while length(Si) mod 3 <> 0 do Si:='0'+Si; while length(Mi) mod 3 <> 0 do Mi:=Mi+'0';for i:=1 to length(Si) div 3 do begin St:=copy(Si,3*I-2,3); for C:='0' to '7' do if St=S[C] then So:=So+C end;for i:=1 to length(Mi) div 3 do begin St:=copy(Mi,3*I-2,3); for C:='0' to '7' do if St=S[C] then Mo:=Mo+C end;if length(Mo)=0 then Fo:=So else Fo:=So+'.'+Mo; if P then Fo:='-'+Fo; writeln(Fo); readlnend. Разделительный знак - точка. Ссылка на комментарий Поделиться на другие сайты Поделиться
Enemy_vn Опубликовано 30 марта, 2010 Автор Жалоба Поделиться Опубликовано 30 марта, 2010 пасибо огромное)) Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти