Запишите в тетрадь программу без ошибок. Исправьте ошибки в программе var t: string; k,i: interger; begin; redaln (t) k:=0 for i:=1 to lenthg(t) do if copy(t,i,1)=‘н’ then k:=k+1; writenl (‘количество букв н= ’, k) readln; end
№1. Тысячи путей ведут к заблуждению, к истине - только один. Для начала надо посчитать, сколько всего символов в данном предложении, следует считать знаки препинания и пробелы. Посчитав все знаки (Итого:57), мы получаем, что вес предложения 57 байт, переводим в биты, то есть умножаем на 8 (1 байт = 8 бит): 57*8=456.
№2. Кодировка Unicode - это кодировка, каждый символ которой весит 16 бит. Итак, я посчитала количество знаков в предложении (Итого:32). Дальше: 16*32=512 бит.
№3. Итак, мы видим, что из 16-битной кодировки получилась 8-битная, а это значит, что она уменьшилась вдвое. 8x=800 x=100 (у тебя ошибка, я посмотрела аналогичные задания, отличающиеся только значениями)
Var f,s:text; st,sp:string; i:integer; c:char; begin assign(s,'text1.txt'); reset(s); while not Eof(s) do begin; readln(s,sp); st:=st+sp+chr(10)+chr(13); end; close(s); for i:=1 to length(st) div 2 do begin c:=st[i]; st[i]:=st[length(st)-i+1]; st[length(st)-i+1]:=c; end; assign(f,'text.txt'); rewrite(f); write(f,st); close(f); end.
Текст в файле text1.txt:
Simple text 1And another simple text 2New text
Текст в файле text.txt: txet weN2 txet elpmis rehtona dnA1 txet elpmiS
var s:string; k, i:integer;
begin
readln(t);
k:=0;
for i:=1 to N do lenthg(t)
if copy(t,i,1)='.' then
k:=k+1;
writeln ('количество букв=',k);
readln;
end.
Объяснение: