25.11.2014, 15:22 | #1 (permalink) |
Новичок
Регистрация: 22.11.2014
Сообщений: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Программа на Паскале
Например, если входной файл был таким: 2 13 1 C то результат должен быть следующим: < |
25.11.2014, 15:22 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Советую вам сразу обратить внимание на похожие обсуждения Программа на Паскале Программа в Паскале Программа на Паскале |
25.11.2014, 20:14 | #2 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
А 1000-зачное число - не жирно будет? Откровенно говоря, даже не знаю, как с такими строками управиться в Паскале. Но если устроят максимально 255-значные числа, то, например, так:
Код:
Var S8,S16:String; N8,N16:Byte; R8,R16:Real; f:Text; Function N8to10(L:Byte; S:String):Real; var k:Byte; N10,p,r:Real; begin k:=0; p:=1; N10:=0; Repeat Case S[L-k] of '0': r:=0; '1': r:=1; '2': r:=2; '3': r:=3; '4': r:=4; '5': r:=5; '6': r:=6; '7': r:=7; end; N10:=N10+r*p; Inc(k); p:=p*8; Until k=L; N8to10:=N10; end; Function N16to10(L:Byte; S:String):Real; var k:Byte; N16,p,r:Real; begin k:=0; p:=1; N16:=0; Repeat Case S[L-k] of '0': r:= 0; '1': r:= 1; '2': r:= 2; '3': r:= 3; '4': r:= 4; '5': r:= 5; '6': r:= 6; '7': r:= 7; '8': r:= 8; '9': r:= 9; 'A': r:=10; 'B': r:=11; 'C': r:=12; 'D': r:=13; 'E': r:=14; 'F': r:=15; end; N16:=N16+r*p; Inc(k); p:=p*16; Until k=L; N16to10:=N16; end; Begin Assign(f,'numbers.dat'); Reset(f); Readln(f,N8); Readln(f,S8); Readln(f,N16); Readln(f,S16); Close(f); R8:=N8to10(N8,S8); R16:=N16to10(N16,S16); if R8>R16 then writeln('>') else if R8<R16 then writeln('<') else writeln('='); Readln End. |
26.11.2014, 17:07 | #5 (permalink) |
Новичок
Регистрация: 22.11.2014
Сообщений: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
набираю в нормальном- пишет файл не найден напротив Reset(f);
Не может найти путь? |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
27.11.2014, 18:05 | #7 (permalink) |
Новичок
Регистрация: 22.11.2014
Сообщений: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
БООльшое спасибо! Вы меня спасли)
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Опции темы | |
Опции просмотра | |
|
|