1)
2004 1002 501 250 125 62 31 15 7 3 1
0 0 1 0 1 0 1 1 1 1 1 <=
проверка
10.9.8.7.6.5.4.3.2.1.0
1 1 1 1 1 0 1 0 1 0 0(2 сист.)=1*2^2+1*2^4+1*2^6+1*2^7+1*2^8+1*2^9+1*2^10=
4+16+64+128+256+512+1024=2004
2)
2020 1010 505 252 126 63 31 15 7 3 1
0 0 1 0 0 1 1 1 1 1 1 <=
проверка
10.9.8.7.6.5.4.3.2.1.0
1 1 1 1 1 1 0 0 1 0 0(2 сист.)=1*2^2+1*2^5+1*2^6+1*2^7+1*2^8+1*2^9+1*2^10=
4+32+64+128+256+512+1024=2020
uses crt;
const raz=[' ','.',',','?','!'];{/разделители слов, можно добавить}
var s,sl:string;
i,k:byte;
begin
clrscr;
writeln('Строка:');
readln(s);
writeln('Слово:');
readln(sl);
k:=0;
for i:=1 to length(s) do{идем по строке}
if(s[i]=sl[1])and((s[i-1] in raz)or(i=1)){если символ равен первому символу слова
а перед ним разделитель или начало строки}
and((s[i+length(sl)] in raz)or(i+length(sl)=length(s))){и после слова разделитетль или конец строки}
and(copy(s,i,length(sl))=sl){и все буквы на интервале равны слову}
then k:=k+1;{считаем}
write('Слово ',sl,' встречается ',k,' рз.');
readln
end.
Объяснение:
на каком языке? (В ответе паскаль)
Поделитесь своими знаниями, ответьте на вопрос:
Вычислите выражения: а) (11111012 + af16)/368; б) 1258 + 111012*a216 - 14178;
а) (11111012 + af16)/368
переведем числа в одну систему счисления
1111101 = 1*2^6 + 1*2^5 + 1*2^4 + 1*2^3 +1*2^2 +0*2^1 +1*2^0 = 125 (10 cc)
af = a*16^1 +f*16^0 = 160 +15 =175 (10 cc)
36 = 3*8^1 + 6*8^0 = 24 +6 = 30 (10 сс)
считаем:
(125 +75) / 30 = 300 / 30 = 10 (10 сс)
б) 1258 + 111012*a216 - 14178
переведем числа в одну систему счисления
125 = 1*8^2 + 2*8^1 + 5*8^0 = 64 +16 + 5 = 85 (10 cc)
11101 = 1*2^4 + 1*2^3 +1*2^2 +0*2^1 +1*2^0 = 16 + 8 + 4 + 0 + 1 = 29 (10 cc)
a2 = a*16^1 + 2*16^0 = 160 + 2 = 162 (10 cc)
1417 = 1*8^3 + 4*8^2 + 1*8^1 + 7*8^0 = 512 + 256 + 8 + 7 = 783 (10 cc)
85 + 29*162 - 783 = 4000 (10 cc)