|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.06.2013, 16:10 | #1 |
Регистрация: 02.06.2013
Сообщений: 7
|
Pascal
Написал программу, но в диаграмме не отображает процентную составляющую в цифрах, показывает 0% не пойму в чём дело, не подскажете?....
составить программу отображающую значения трех величин - две из них генерируются по закону случайных чисел в диапазоне от 10 до 40, а третья дополняет сумму двух первых до 100. Значения полученных трёх величин отобразить в виде цветной круговой диаграммы.... uses crt,graph; var z:array [1..10] of integer; n,i,x,y,r,a,b,s: integer; st:string; Begin randomize; clrscr; n:=3; for i:=1 to 2 do z[i]:=random(40); z[3]:=100-z[1]-z[2]; x:=0; initgraph(x,y,''); s:=0; for i:=1 to n do s:=s+z[i]; x:=getmaxX div 2; y:=getmaxY div 2; r:=150; b:=round(360*z[1]/s); setcolor(1); setfillstyle(1,1); pieslice(x,y,0,b,r); str(100*z[1]/s:0:2,st); outtextXY(x+round((r+20)*cos(pi*b/360)),y-round((r+20)*sin(pi*b/360)),st+''); for i:=2 to n-1 do begin a:=round(360*z[i]/s)+b; setcolor(i); setfillstyle(1,i); pieslice(x,y,a,b,r); str(100*z[i]/s:0:2,st); if (a<=90)or(a>=270) then outtextXY(x+round((r+20)*cos(pi*(a+ b)/360)),y-round((r+20)*sin(pi*(a+b)/360)),st+'') else outtextXY(x+round((r+20)*cos(pi*(a+ b)/360))-40,y-round((r+20)*sin(pi*(a+b)/360)),st+''); b:=a; end; setcolor(n); setfillstyle(1,n); pieslice(x,y,b,360,r); str(100*z[n]/s:0:2,st); outtextXY(x+round((r+20)*cos(pi*(36 0+b)/360)),y-round((r+20)*sin(pi*(360+b)/360)),st+''); readln end. |
04.06.2013, 21:00 | #2 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,312
|
Выдели введенный код и нажми на символ # в меню окна.
Это позволяет форматировать код и представлять его в более читабельном виде. У меня FPC. Программа рисует 3-и сектора трех цветов и подписывает данные в процентах. Цвет надписей соответствует цвету секторов. Дело видимо не в программе. Вроде так ...
Как-то так, ...
|
05.06.2013, 21:26 | #3 |
Регистрация: 02.06.2013
Сообщений: 7
|
Какой код
что то я не понял какой код надо выделить?
|
05.06.2013, 21:31 | #4 |
Регистрация: 02.06.2013
Сообщений: 7
|
Borland
у меня старый borland pascal и что то он эту программу вообще показывает не как в free. Не пойму что сделать чтобы нормально открывалось без проблем.
|
05.06.2013, 22:01 | #5 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
Косяк не в программе. Я проверил на Free и откопал у себя Turbo : Всё работает!!
Поэтому советую Вам поступить так : надо поклониться в ножки Турбо и прибить его гвоздиком на стенку, а самому использовать FP или еще что-то в том же роде (с) TinMan |
05.06.2013, 22:13 | #6 |
Регистрация: 02.06.2013
Сообщений: 7
|
суть в том что эта программа универа, там же не заменишь, и там этот борланд, поэтому и не знаю как сделать чтобы всё работало там
|
05.06.2013, 22:15 | #7 | |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
Цитата:
|
|
05.06.2013, 22:29 | #8 |
Регистрация: 02.06.2013
Сообщений: 7
|
вроде это как раз Borland Turbo но почему то дома во Free она читается нормально, а вот в универе никак
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
pascal abc, pascal turbo. выборка данных из одного .txt в другой | ТипичныйСтудент | Помощь студентам | 6 | 27.04.2013 15:29 |
Задача turbo pascal на тему: файлы с произвольным доступом в Pascal | ExCiTeC | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 28.01.2013 20:36 |
Программы в Pascal, среда pascal ABC. Лабораторные работы | Одинокая Волчица | Фриланс | 8 | 10.02.2012 20:09 |
Turbo Pascal и Free Pascal , в чем разница? | antoxann | Паскаль, Turbo Pascal, PascalABC.NET | 31 | 09.11.2011 07:52 |
а free pascal не читает задачи которые написаны на turbo pascal? | demonara | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 25.05.2009 16:28 |