Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 24.12.2014
Сообщений: 6
1

В программе определить массив записей Каждая запись определяет геометрическую фигуру: окружность

24.12.2014, 17:39. Просмотров 605. Ответов 3
Метки нет (Все метки)


Лабораторная работа №7. Тема – работа с записями с вари-антами, графикой.
В программе определить массив записей с вариантами. Каждая запись определяет геометрическую фигуру: окружность, тре-угольник, прямоугольник. Общие поля – координаты точки при-вязки фигуры, цвет. Заполнить массив с клавиатуры или при по-мощи генератора случайных чисел, и нарисовать фигуры на экране.

Не по теме:

Здравствуйте. Очень нужна помощь. Совсем запустил Паскаль и теперь нужно в кротчайшие сроки (1 сутки) успеть сделать данные лабы. Буду очень благодарен коду хотя бы одной работы, а если еще и с комментариями, то просто без ума счастлив. Прошу помочь мне с Паскалем, пока я пилю начерталовку(

0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.12.2014, 17:39
Ответы с готовыми решениями:

Дан массив, состоящий из записей. Каждая запись содержит два поля:
Дан массив, состоящий из записей. Каждая запись содержит два поля: 1 - табельный номер (целое...

По заданным целочисленным координатам на плоскости определить какую геометрическую фигуру они образуют
По заданным целочисленным координатам четырех точек на плоскости определить , какую геометрическую...

Нарисовать геометрическую фигуру
Мужики, подскажите как решить вот такую задачу: Нарисовать геометрическую фигуру цвета а на фоне...

Изобразить геометрическую фигуру
требуется через if изобразить геометрическую фигуру как на фото Ссылка удалена.

3
Эксперт Pascal/Delphi
6549 / 4408 / 4712
Регистрация: 05.06.2014
Сообщений: 21,679
27.12.2014, 13:46 2
ПАБЦ отказался кушать такую конструкцию:
Pascal
1
2
3
4
5
6
7
8
9
type
  figure=record
    x,y:integer;
    color:integer;
    case f:figtype of
      circleR: (r:integer);
      triangle: (xb,yb,xc,yc:integer);
      rectangleR: (width,height:integer);
  end;
поэтому сделал в фпц в режиме совместимости с ТП.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
uses
  graph;
const
  n=100;
type
  figtype=(circleR,triangle,rectangleR);
type
  figure=record
    x,y:integer;
    color:integer;
    case f:figtype of
      circleR: (r:integer);
      triangle: (xb,yb,xc,yc:integer);
      rectangleR: (width,height:integer);
  end;
var
  gd,gm : integer;
  PathToDriver : string;
  i: integer;
  figs:array[1..n] of figure;
  flag:byte;
begin
  gd:=detect; { highest possible resolution }
  gm:=0; { not needed, auto detection }
  PathToDriver:='C:\PP\BGI'; { path to BGI fonts,
                               drivers aren't needed }
  InitGraph(gd,gm,PathToDriver);
  if GraphResult<>grok then
      halt;
  { whatever you need }
  randomize;
  {Генерация фигур}
  for i:=1 to n do
    begin
      figs[i].x:=Random(GetMaxX div 2);
      figs[i].y:=Random(GetMaxY div 2);
      figs[i].color:=Random(GetMaxColor);
      flag:=random(3);
      case flag of
        0:
          begin
            figs[i].f:=circleR;
            figs[i].r:=Random(GetMaxX div 6);
          end;
        1:
          begin
            figs[i].f:=triangle;
            figs[i].xc:=Random(GetMaxX div 6);
            figs[i].yc:=Random(GetMaxX div 6);
            figs[i].xb:=Random(GetMaxX div 6);
            figs[i].yb:=Random(GetMaxX div 6);
          end;
        2:
          begin
            figs[i].f:=rectangleR;
            figs[i].width:=Random(GetMaxX div 6);
            figs[i].height:=Random(GetMaxX div 6);
          end;
      end;
    end;
  for i:=1 to n do
    begin
      setcolor(figs[i].color);
      case figs[i].f of
        circleR:
          circle(figs[i].x,figs[i].y,figs[i].r);
        triangle:
          begin
            line(figs[i].x,figs[i].y,figs[i].xc,figs[i].yc);
            line(figs[i].xc,figs[i].yc,figs[i].xb,figs[i].yb);
            line(figs[i].xb,figs[i].yb,figs[i].x,figs[i].y);
          end;
        rectangleR:
          rectangle(figs[i].x,figs[i].y,figs[i].x+figs[i].width,figs[i].y+figs[i].height);
      end;
    end;
  readln;
  CloseGraph; { restores the old graphics mode }
end.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
30861 / 20184 / 7874
Регистрация: 22.10.2011
Сообщений: 35,048
Записей в блоге: 6
27.12.2014, 14:06 3
Цитата Сообщение от ZX Spectrum-128 Посмотреть сообщение
ПАБЦ отказался кушать такую конструкцию:
Естественно:
Отличия языка PascalABC.NET от Delphi
Отсутствует
<...>
4. Записи с вариантами.
1
Puporev
27.12.2014, 14:32     В программе определить массив записей Каждая запись определяет геометрическую фигуру: окружность
  #4

Не по теме:

Дают задачи, написанные давным давно для Турбо Паскаля, а делать нужно в АВС.

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.12.2014, 14:32
Привет! Вот еще темы с ответами:

Нарисовать любую геометрическую фигуру
Здравствуйте! Помогите пожалуйста, как использовать в Turbo C графику с помощью библиотеки #include...

В консоли нарисовать геометрическую фигуру
Разработать программу, которая выводит на экран геометрическую фигуру, заполняя ее символом ‘*’ или...

Сверстать геометрическую фигуру с градиентом
все привет! вопрос, как сверстать такой элемент (см вложение)? Градиент может быть любым как и...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.