// PascalABC.NET
var gl:='кпстфхцчшщ';
zv:='бвгджзлмнр';
zi: array [1..2,1..10] of integer; //для отметок о выполнении условий для звонких
s: string;
i,n:integer;
chet:boolean; //признак четности слова
begin
chet:=false;
writeln('введите строку из русских слов, разделенные пробелом');
readln(s);
for i:=1 to length(s) do
begin
n:=Pos(s[i],zv);
if (chet=false) then
begin
delete(gl,Pos(s[i],gl),1);
if n>0 then zi[1,n]:=1 //первый признак выполнен
end
else if n>0 then zi[2,n]:=-1; //второй признак не выполнен
if s[i]=' ' then chet:=not(chet);
end;
writeln('глухие согласные, которых нет в нечетных словах: ',gl);
write('звонкие согласные, которых нет в четных словах и которые входят хотя бы в одно нечетное: ');
for i:=1 to 10 do
if zi[1,i]+zi[2,i]=1 then write(zv[i]);
end.
Можно представить в стандартном виде 3,64 •10 ^8
Ну, во-первых, за тем, чтобы придерживаться сути инкапсуляции: Людям свойственны ошибки. Например, будь у нас прямой доступ к полю, мы бы могли ошибочно изменить значение. При использовании методов, мы, разумеется, 5 раз подумаем, прежде чем взаимодействовать с ним.
Во-вторых, для простоты. Нам не нужно подробно изучать все внутреннее устройство, достаточно начать взаимодействовать с методом, который сделает всю внутреннюю работу за вас.
В кодировке вин-1251 один символ весит 8 бит или 1 байт
Общий вес текста/сообщения
I = K * i (K - кол-во символов, i - вес одного символа/бит на символ)
K = 1536 шт
Вес текста I = 1536 * 8 бит = 12288.0 бит =
= 1536.0 байт = 1.5 Кбайт = 0.00146484375 Mбайт
<h3>// PascalABC.NET 3.4.2, сборка 1814 от 02.10.2018</h3><h3>// Внимание! Если программа не работает, обновите версию!</h3>
begin
var x := ReadReal('x=');
var n := ReadInteger('n=');
var (k, p, q, s) := (x * x, 1.0, 1.0, 0.0);
for var i := 1 to n do
begin
p *= k;
q *= 2 * i * (2 * i - 1);
s += p / q
end;
Println('Сумма =', s)
end.