Потому что соединение не идеально, оно прерывается, некоторые данные по пути теряются. Допустим, я хочу передать файл по интернету. Если файл небольшой, то велика вероятность, что он не пострадает. В противном случае можно потратить много времени на передачу части файла, после чего данные передадутся с ошибкой, которую мы обнаружим только после передачи всего файла. Передавая информацию пакетами же можно этого избежать, так как любая потеря данных будет сразу видна по плохому пакету. После этого можно эту ошибку сразу и обработать и, допустим запросить повтор предыдущего пакета или попытаться починить пакет, прибывший с ошибкой.
Program ZvonPOBEDITEL;var i,n,k,i_1,i_2,d_1,d_2: integer;c: char;s,s_1,s_2: string;begin i_1:=0; i_2:=0; d_1:=1; d_2:=1; readln(n); for i:=1 to n do begin c:='a'; s:=''; while c<>' ' do begin read(c); s:=s+c; end; read(c); while c<>' ' do begin s:=s+c; read(c); end; read(c); while c<>' ' do begin read(c); end; readln(k); if (k=i_1) and (i<>1) then d_1:=d_1+1; if k>i_1 then begin i_2:=i_1; i_1:=k; s_2:=s_1; s_1:=s; d_2:=d_1; d_1:=1; end; if (k=i_2) and (i<>1) then d_2:=d_2+1; if (k>i_2) and (k<i_1) then begin i_2:=k; s_2:=s; d_2:=1; end; end; if (i_1<=200) and (d_1=1) then writeln(s_1); if (i_1<=200) and (d_1<>1)then writeln(d_1); if (i_1>200) and (d_2=1) then writeln(s_2); if (i_1>200) and (d_2<>1) then writeln (d_2);end. Это сугубо мое решение за копирайтинг отвешу люлей. И к тому же сдесь есть одна ошибка о которой знаю только я, так сказать один из частных случаев здесь не прощитывается, по этому поломайте голову, Ха-Ха-Ха...
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку