Модераторы: volvo877, Snowy, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> столбиковая диаграмма 
:(
    Опции темы
Varant
Дата 22.6.2010, 00:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 3.6.2010

Репутация: нет
Всего: нет



Написать программу, которая выводит на экран столбиковую диаграмму, представляющую оптовые и розничные цены на различные наименования кофе. Исходные данные сформировать в текстовом файле.
Построение диаграммы оформить в виде процедуры. Параметра процедуры: количество наименований; массив значений оптовых цен; массив значений розничных цен; массив наименований. Наименования товаров разместить вертикальной под осью абсцисс.

Подскажите, все ли правильно в задаче? И как понять "Наименования товаров разместить вертикальной под осью абсцисс."?

Код

uses graph;

var    i, j, x0, y0, w:integer;
    s: string;
    f: text;
    mkofe_f: array [1..444] of real;
    n, dc: integer;
    h, max, min: real;


procedure Graphinterface;
var    driver, mode, error:    integer;
        s: string;
begin
    driver:=detect;
    s:=' ';
    Initgraph(driver, mode, s);
    error:=GraphResult;
    if error<>GrOk then
    begin
        writeln(GraphErrorMsg(Error));
        Halt(error);
    end;
end;




begin
    assign(f, 'kofe.txt');
    reset(f);

    readln(f, n);        

    writeln('Vvedite kol-vo tovara: ');    readln(dc); 

    if (dc = 0) then
     exit
    else
    begin

        if (dc > n) then
        begin
        writeln('Ne hvataet dannyh v file!'); 
        readln;
        exit;
        end
         else
        begin

            for i:=1 to dc do
            begin
            read(f, mkofe_f[i]);      
            end;


    {max}
    max:=mkofe_f[1];
    for i:=2 to dc do
        if (max < mkofe_f[i]) then
        max:=mkofe_f[i];

    {min}
    min:=mkofe_f[1];
    for i:=2 to dc do
        if (min > mKurs_f[i]) then
        min:=mkofe_f[i];


    Graphinterface;


    w:=40;            
    x0:=155;        
    y0:=420;        
    h:=(y0-90)/max;        


  randomize;

 
  i:=random(14);
  setcolor(i+1);        
  Setfillstyle(i+1,i+1);    

  Bar3d(x0,y0-round(max*h),x0+2*w,y0, 15,topoff);
  str(max:2:4, s);
  outtextXY(x0+18,y0-round(max*h)-40, s);
  outtextXY(x0+30,y0+20, 'max');


  i:=random(14);
  setcolor(i+1);        
  Setfillstyle(i-1,i+1);    

  Bar3d(x0+3*w,y0-round(min*h),x0+5*w,y0, 15,topoff);
  str(min:2:4, s);
  outtextXY(x0+3*w+18,y0-round(min*h)-40, s);
  outtextXY(x0+3*w+30,y0+20, 'min');

 end;

 end;

readln;
end.


PM MAIL   Вверх
Ozzя
Дата 25.6.2010, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 86
Регистрация: 19.7.2004

Репутация: нет
Всего: 1



Цитата

Подскажите, все ли правильно в задаче?

Нет.

Цитата

Построение диаграммы оформить в виде процедуры.

Не сделано.
Остальное - не проверялось. Ибо, "assign(f, 'kofe.txt');". Файл 'kofe.txt' проверяющий должен сам набирать? Не дождетесь (С)
Цитата

 И как понять "Наименования товаров разместить вертикальной под осью абсцисс."?

Легко.

Это сообщение отредактировал(а) Ozzя - 25.6.2010, 10:35
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

1. Обсуждать и делится взломанными компонентами или программным обеспечением

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема »


 




[ Время генерации скрипта: 0.0792 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.