Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2011, 23:33   #1
DesignFootball.Ru
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 57
По умолчанию Как построить такой график (что бы точки были соеденены)

Не знал, как объяснить задание, поэтому прилагаю рисунок.



т.е. от пользователя требуется ввести лишь оценки по предметам, а компьютер должен нарисовать график, как на рисунке.

Если такое задание уже было, дайте, пожалуйста, ссылку. Я не нашёл.

Средний бал сам нашёл, а с графиком не знаю как.
DesignFootball.Ru - Первый русскоязычный сайт о футбольной экипировке.
DesignFootball.Ru вне форума Ответить с цитированием
Старый 15.03.2011, 01:40   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Переключайтесь в графический режим ( см. InitGraph(...) )
рисуйте линии...

Если предметов (и оценок по ним) будет фиксированное число, то задача просто элементарная!! Четыре линии нарисовать!!
я бы ещё и горизонтальной линией среднюю оценку провёл на графике - это просто и выглядело бы хорошо!

Гораздно интереснее вопрос с выводом кирилицы через векторные CHR шрифты. Если с этим будут проблемы - обращайтесь. Есть у меня такие шрифты...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.03.2011, 16:20   #3
DesignFootball.Ru
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 57
По умолчанию

названия предметов врятли буду делать, а как сделать вывод средней оценки?
DesignFootball.Ru - Первый русскоязычный сайт о футбольной экипировке.
DesignFootball.Ru вне форума Ответить с цитированием
Старый 15.03.2011, 16:56   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

через LINE
установить другой цвет (можно и другой тип линии) и нарисовать горизонтальную линию..

Получился график?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.03.2011, 17:16   #5
DesignFootball.Ru
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 57
По умолчанию

Нет, мне нужно сделать через Pascal ABC, а такого модуля (InitGraph) в нём нет
DesignFootball.Ru - Первый русскоязычный сайт о футбольной экипировке.
DesignFootball.Ru вне форума Ответить с цитированием
Старый 15.03.2011, 18:05   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ну, так сразу бы и написал!

там есть:
Код:
uses GraphABC;
вот готовая программа.
Код:
uses GraphABC;
const
  CountOfSubject = 5;
  Marks : array[1..CountOfSubject] of integer = (8,9,6,10,7);
  SubjectName : array[1..CountOfSubject] of string[10] =
    ('МАТ', 'АНГЛ', 'ХИМ','ИНФ','БИО');

  X0 = 120;
  stepMarks = 25;
  stepSubject = 70;
  CircleRadius = 3;
  CircleColor = clRed;
  ColorLine = clOlive;
  

var
   i : integer;
   Y0 : integer;
begin
  Y0 := (WindowHeight div 2)+100;
  Line(X0, 0, X0, Y0);
  Line(X0, Y0, WindowWidth, Y0);
  SetFontName('Arial');
  SetFontSize(11);
  TextOut(X0-25, Y0-(StepMarks div 2), '0');
  for i:= 1 to 10 do begin
    if i<10 then
      TextOut(X0-25, Y0 - (i*StepMarks + (StepMarks div 2)) , IntToStr(i))
    else
      TextOut(X0-35, Y0 - (i*StepMarks + (StepMarks div 2)) , IntToStr(i));
    Line(X0-10, Y0 - i*StepMarks,
       X0, Y0 - i*StepMarks);
  end;

  SetFontName('Arial');
  SetFontSize(10);
  for i:= 1 to CountOfSubject do begin
    Line(X0+i*stepSubject, Y0, X0+i*stepSubject, Y0+10);
    TextOut(X0+i*stepSubject-15, Y0+10,
           SubjectName[i]);
  end;

  for i:= 1 to CountOfSubject do begin
    SetPenColor(CircleColor);
    Circle(X0+i*stepSubject, Y0 - Marks[i]* StepMarks, CircleRadius);
    if i>1 then begin
      SetPenColor(ColorLine);
      Line(X0+(i-1)*stepSubject, Y0 - Marks[i-1]* StepMarks,
           X0+i*stepSubject, Y0 - Marks[i]* StepMarks);
    end;
    
  end;

  
end.
нарисовать среднюю оценку - оставляю Вам в качестве домашнего задания!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.03.2011, 18:58   #7
DesignFootball.Ru
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 57
По умолчанию

а среднюю оценку я уже сделал) Спасибо!
DesignFootball.Ru - Первый русскоязычный сайт о футбольной экипировке.
DesignFootball.Ru вне форума Ответить с цитированием
Старый 15.03.2011, 19:04   #8
DesignFootball.Ru
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 57
По умолчанию

может ещё подскажите, как сделать из чисел константы переменную.
т.е. что бы оценки по предметам водились с клавиатуры.
обозначить каждый предмет за переменную, и потом через writeln -> readln ?
или как?
DesignFootball.Ru - Первый русскоязычный сайт о футбольной экипировке.
DesignFootball.Ru вне форума Ответить с цитированием
Старый 17.03.2011, 01:51   #9
DesignFootball.Ru
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 57
По умолчанию

Спасибо, уже не надо. Сам сделал
DesignFootball.Ru - Первый русскоязычный сайт о футбольной экипировке.
DesignFootball.Ru вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как построить график Nijaz Общие вопросы Delphi 5 09.06.2014 11:25
КАК из этого построить график?? VB Vitek.i Помощь студентам 0 23.12.2010 05:38
как построить график программно woodman Microsoft Office Excel 1 03.08.2010 16:16
Как построить 3-х мерный график? Mikhail Bakurov Общие вопросы Delphi 3 01.12.2008 05:37
как построить график в паскале? Vitas1234 Паскаль, Turbo Pascal, PascalABC.NET 1 11.06.2008 16:53