Объяснение:
clrscr;
s:=0;
writeln('Vvedite tovarooborot po vidam:');
for i:=1 to 4 do
begin
write(x[i],'=');
readln(y[i]);
s:=s+y[i];
end;
for i:=1 to 4 do
y[i]:=y[i]*100/s;
dr:=detect;
initgraph(dr,mode,'');
xc:=GetMaxX div 2;
yc:=GetMaxY div 2;
outtextxy(Xc-80,20,'Tovarooborot po vidam, %');
b:=round(360*y[1]/100);
r:=150;
setcolor(10);
setfillstyle(1,11);
pieslice(xc,yc,0,b,r);
for i:=2 to 3 do
begin
a:=round(360*y[i]/100)+b;
setcolor(10+i);
setfillstyle(1,10+i);
pieslice(xc,yc,a,b,r);
b:=a;
end;
setcolor(14);
setfillstyle(1,14);
pieslice(xc,yc,b,360,r);
for i:=1 to 4 do
begin
setcolor(i+10);
setfillstyle(1,i+10);
bar(xc+150,i*40,xc+180,i*40+20);
setcolor(15);
str(y[i]:0:2,st);
outtextXY(xc+190,i*40+5,x[i]+'-'+s
если к примеру у тебя есть цикл:
while True (он будет длиться бесконечно, то тут чтобы программа не вылетела стоит писать break)
во всех других случаях по ситуации
к примеру есть такая программа (язык программирования python):
import random as r
secret_messages = ['секретное сообщение №1', 'секретное сообщение №2', 'секретное сообщение №3']
while True:
name = input('Введите свое имя: ')
if name == 'Иван':
print(secret_messages[r.randint(0,2)])
else:
print('Неправильное имя, доступ запрещен!')
break
тут программа запрашивает имя пользователя, если он ввел 'Иван', то ему выводится случайное секретное сообщение, если ввел неправильно то программа перестает работать выходя из цикла
есть простое условие, при выполнении которого неравномерный код допускает однозначное декодирование.
код называется префиксным, если в нем нет ни одного кодового слова, которое было бы началом (по-научному, - префиксом) другого кодового слова.
код из примера 1 – не префиксный, так как, например, код буквы а (т.е. кодовое слово 1) – префикс кода буквы к (т.е. кодового слова 12, префикс выделен жирным шрифтом).