Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
3 / 0 / 1
Регистрация: 15.03.2010
Сообщений: 7

Фигура процедурами

15.03.2010, 17:01. Показов 1876. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста с контрольной, я пропустил тему с процедурами, а в среду сдавать
1) Составьте процедуру, выводящую представленную фигуру по заданным:
• координатам центра фигуры;
• размеру минимальной единицы фигуры;
• цвету линии.
Выведите на экран несколько таких фигур разного размера и цвета. И Составьте блок-схему программы из задания.
Изображения
 
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.03.2010, 17:01
Ответы с готовыми решениями:

Код с процедурами
Задание: Определить максимальные значения для каждого столбца каждой из трех матриц A(4x5) B(5x7) C(3x4) Код у меня получился такой: ...

Работа с процедурами
Вроде сделал всё правильно, но выдаёт ошибку при компиляции Type masInt=array of integer; Var a:array of integer; ...

Матрицы с процедурами
В матрице А (3 строки,4 столбца)поменять местами наименьшие элементы в ее левой и правой половинах. Для поиска индексов наименьшего...

5
3 / 0 / 1
Регистрация: 15.03.2010
Сообщений: 7
15.03.2010, 20:23  [ТС]
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
PROGRAM vetoshev2;
USES Graph;
VAR
  gd,gm:integer;
  Procedure figure(x,y:integer);
  Begin
   MoveTo(x,y);
   LineRel(20,0);
   LineRel(10,-10);
   LineRel(10,10);
   LineRel(-10,10);
   LineRel(0,20);
   LineRel(10,10);
   LineRel(-10,10);
   LineRel(-10,-10);
   LineRel(-20,0);
   LineRel(-10,10);
   LineRel(-10,-10);
   LineRel(10,-10);
   LineRel(0,-20);
   LineRel(-10,-10);
   LineRel(10,-10);
   LineRel(10,10);
  End;
BEGIN
  gm:=2;
  gd:=VGA;
  InitGraph(gd,gm,'C:\TP7\BGI');
  setColor(2);
  Figure(50,50);
  setColor(4);
  Figure(120,280);
  setColor(12);
  Figure(300,70);
  setColor(3);
  Figure(480,260);
  ReadLn;
  CloseGraph;
END.
Вот я так составил программу, добился нескольких фигур на экране разнога цвета. А как сделать разного размера, не меняя процедуру???
0
 Аватар для kentaw
421 / 130 / 33
Регистрация: 24.02.2009
Сообщений: 1,122
15.03.2010, 23:08
Pascal
1
2
3
4
5
6
7
Procedure figure(x,y,koeficient:integer)
begin
 moveto(x,y);
linerel(10*koeficient, 20*koeficient);
linerel(-10*koeficient, 5*koeficient);
и.т.п
end;
например, при koeficent:=1, тогда будет твои фигуры. Если koeficent:=2, тогда два раза больше, и.т.д
1
3 / 0 / 1
Регистрация: 15.03.2010
Сообщений: 7
15.03.2010, 23:30  [ТС]
а куда вписать koeficent:=1???

Добавлено через 2 минуты
Все огромное спасибо, понял =))))))
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
16.03.2010, 07:38
Я бы так написал.
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
uses graph;
type Point=record//точка
           x,y:integer;//с координатами
           end;
procedure Draw(t:Point;d,c:integer);//рисование фигуры, 
//входные параметры - центр, длина ед.линии, цвет 
 procedure P1(kx,ky,p:integer);//вспомогательная процедура-рисуем 1 четверть фмигуры
  begin
   line(t.x+kx*2*d,t.y,t.x+kx*2*d,t.y+ky*d);
   line(t.x+kx*2*d,t.y+ky*d,t.x+kx*3*d,t.y+ky*2*d);
   line(t.x+kx*3*d,t.y+ky*2*d,t.x+kx*2*d,t.y+ky*3*d);
   line(t.x+kx*2*d,t.y+ky*3*d,t.x+kx*d,t.y+ky*2*d);
   line(t.x+kx*d,t.y+ky*2*d,t.x,t.y+p*d);
  end;
begin
setcolor(c);//уст.цвета
P1(-1,1,2);//рисуем 4 раза, поворачивая на 90 градусов
P1(-1,-1,-2);
P1(1,-1,-2);
P1(1,1,2);
end;
var t:point;
    x,y,ed,cv:integer;
begin
x:=0;
initgraph(x,y,'');
t.x:=getmaxX div 2;//одна фигура в центре, дальше сам
t.y:=GetmaxY div 2;
Draw(t,30,14);
readln
end.
1
3318 / 1380 / 110
Регистрация: 28.04.2009
Сообщений: 4,822
16.03.2010, 15:11
к программе Puporev,

основная программаНазвание: 1.gif
Просмотров: 57

Размер: 2.2 Кб
процедура Название: 2.gif
Просмотров: 56

Размер: 1.9 Кб
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.03.2010, 15:11
Помогаю со студенческими работами здесь

Программа с процедурами
Всем привет, есть программа без процедур, нужно ее сделать с процедурами, помогите пожалуйста. Срочно надо Вот сама программа: ...

сортировка с процедурами
Уф.. что-то не ладится у меня с этими процедурами.. помогите пожалуйста - завтра лабу сдавать - въехать никак не могу. Переписать...

Программа с процедурами
Дан массив чисел. Составить программу вычисления (вычисления минимального элемента о)суммы положительных элементов одномерного массива...

Работа с процедурами и функциями
Помогите решить двумя способами в pascal: F=g(1.7t,s)+g(3.7,s)-g(3s-1,st) g(a,b)=(3a*a-b)/(модуль(a)-(b*b-a) s=12.3 t=7.1

Работа с процедурами и функциями
Составить программу с использованием процедуры или функции: const LIM=2; W=8; D=2; n=5; m=5; { n строк, m столбцов } var a:...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru