
Во введённой строке определите количество слов, являющихся корректной запи сью шестнадцатеричных
чисел (то есть слова вида «10», «F» и т.п.) Переведитеэти числа в десятичную систему и выведите преобразованную строку.

Ответы на вопрос

Ответ:
program setof;
var
n16: set of Char;
s, w: string;
i, n: Integer;
c: Char;
Is16: Boolean;
begin
n16 := ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'];
Write ('Введите строку: ');
ReadLn (s);
w := '';
Is16 := True;
n := 0;
for i := 1 to Length (s) do begin
c := s [i];
if (c = ' ') or (i = Length (s)) then begin
if Is16 then begin
Inc (n);
WriteLn (w);
end;
w := '';
Is16 := True;
Continue;
end;
if Is16 and (c in n16) then
w := w + c
else begin
Is16 := False;
w := '';
end;
end;
WriteLn ('Количество 16-ричных чисел = ', n);
ReadLn;
end.
Объяснение:
В вводимой строке символ разделитель - пробел



Ответ:
ВОТ
Объяснение:
const cf:string[16]='0123456789ABCDEF'; //цифры в СС 16
tt:array[1..16] of string[4]= ('0000','0001','0010','0011', //тетрады в СС16
'0100','0101','0110','0111',
'1000','1001','1010','1011',
'1100','1101','1110','1111');
var s16,s2,s:string;
f:boolean;
i,j:byte;
begin
repeat
writeln('Введите число в СС 16');
readln(s16);
s16:=uppercase(s16);//переводим в верхний регистр
if s16[1]='-' then i:=2 else i:=1;
while(i<=length(s16))and(pos(s16[i],cf)>0) do inc(i);
if i<=length(s16) then writeln('Число введено неверно, повторите');
until i>length(s16);
f:=s16[1]='-'; //отрицательное
s2:=''; //переводим в СС 2
if f then delete(s16,1,1);
for i:=1 to length(s16) do
s2:=s2+tt[pos(s16[i],cf)];
if f then s2:='-'+s2;
writeln('Число в СС 2=',s2)
end.





Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili