Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 13.05.2018
Сообщений: 3
GraphABC

Программа на Pascal по изменению величины круга

13.05.2018, 21:51. Показов 1409. Ответов 4
Метки g (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго вечера!
Помогите пожалуйста, тут нашел программу по изменению величины круга ссылка-> Увеличение круга при нажатии клавиши

Код:
Кликните здесь для просмотра всего текста
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
uses graphABC;
var f:boolean;//переменная для выхода из программы 
    r:integer;//радиус круга
procedure KeyDown(Key:integer);
begin
case Key of
VK_Up:r:=r+5;
VK_Down:r:=r-5;
VK_Escape:f:=false
end;
end;
var xc,yc,x,y,r1:integer;
    u:real;
begin
xc:=Window.Width div 2;
yc:=Window.Height div 2;
r:=20;
r1:=110;//радиус вращения круга
f:=true;
Pen.Color:=clred;
Brush.Color:=clRed;
lockdrawing;
u:=0;
repeat
clearwindow;
Brush.Style:=bsClear;
TextOut(100,10,'Стрелка вверх увеличить радиус, стрелка вниз-уменьшить, Esc-выход');
Brush.Style:=bsHatch;
x:=xc+round(r1*cos(u));
y:=yc-round(r1*sin(u));
if(x>xc)and(y<yc)then Brush.Hatch:=bhCross
else if(x<=xc)and(y<yc)then Brush.Hatch:=bhBackwardDiagonal
else if(x<=xc)and(y>=yc)then Brush.Hatch:=bhForwardDiagonal
else Brush.Hatch:=bhPercent40;
Circle(x,y,r);
sleep(50);
u:=u+0.05;
redraw;
OnKeyDown:=KeyDown;
until f=false;
CloseWindow;
end.


Можете написать что обознает каждая из строк?
(Задание по инфе в колледже, пришлось выбирать на скорую руку, сам описать все не смогу)
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.05.2018, 21:51
Ответы с готовыми решениями:

Программа по изменению определенного элемента в каждой строке данного файла
В 17 строке пишет,что индекс выходит за границы массива;не пойму в чем дело/// Var x,y:integer; f:text; stel,fnel:char; ...

создание фигуры любой( кроме круга) в borland pascal!
помогите создать фигуру(кроме круга) что бы она передвигалась и оставлял инверсионный след(необязательно только кто сможет)!!

Даны радиус круга и сторона квадрата. У какой фигуры площадь больше? (Pascal -> C++)
Даны радиус круга и сторона квадрата. У какой фигуры площадь больше? uses crt; var a,r:real; begin clrscr; write('Введите...

4
 Аватар для JuriiMW
5095 / 2661 / 2355
Регистрация: 10.12.2014
Сообщений: 10,060
14.05.2018, 06:34
Конечно можем ;–)
Каждая строка программы, как это ни странно, означает код программы!
0
0 / 0 / 0
Регистрация: 13.05.2018
Сообщений: 3
14.05.2018, 15:26  [ТС]
JuriiMW, как будто в mail ответы зашел))0)
0
Aimez-vous les baguettes?
193 / 26 / 27
Регистрация: 25.10.2017
Сообщений: 165
14.05.2018, 20:36
Лучший ответ Сообщение было отмечено Lonus как решение

Решение

Цитата Сообщение от Lonus Посмотреть сообщение
JuriiMW, как будто в mail ответы зашел))0)
Ну что вы сразу про mail начинаете... У нас тутошние люди ого-го какие программеры, богатыри, не Вы. А коль понять изволите код свой окоянный, требо Вам, мусье, тонкости языка Паскалистого вывучить, методы ГрафаАБЦ осмотреть по документации, только толи и буде результат. Колежд... С Европы дуют ветра эти... Навывучают.

Добавлено через 25 минут
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
uses graphABC; //Подключать ГрафАБэЦэ
var f:boolean;//переменная для выхода из программы 
    r:integer;//радиус круга
procedure KeyDown(Key:integer); //Процедура КейДавн( принимает Кей : целое число )
begin
case Key of
VK_Up:r:=r+5; Если вверх, то r += 5
VK_Down:r:=r-5; если вниз, то r -= 5
VK_Escape:f:=false; если esc, то f:= false
end;
end;
var xc,yc,x,y,r1:integer; //Какие-то нужные переменные
    u:real; //Тоже нужна
begin
xc:=Window.Width div 2; //Икс выбираем по центру высоты экрана
yc:=Window.Height div 2; //Игрик выбираем по центру ширины экрана
r:=20; //Радиусу присвоить 20?
r1:=110;//радиус вращения круга
f:=true; //Этой самой f присвоить Истину
Pen.Color:=clred; //Цвет карандаша - красный
Brush.Color:=clRed; //Цвет кисти - красный
lockdrawing; //блокируем отрисовку в графическом окне
u:=0; //Какой-то переменной присвоим 0; позже узнаем, для чего она
repeat //типо начало тела цикла repeat/until
clearwindow; //Чистим окошко
Brush.Style:=bsClear; //Ну, brush clear - прозрачная кисть
TextOut(100,10,'Стрелка вверх увеличить радиус, стрелка вниз-уменьшить, Esc-выход'); //Выводим текст по координатам...
Brush.Style:=bsHatch; //Типо сплошная кисть
x:=xc+round(r1*cos(u)); //Рассчитаем икс
y:=yc-round(r1*sin(u)); //И игрик
if(x>xc)and(y<yc)then Brush.Hatch:=bhCross //Стиль штриховки кисти - в клеточку если условие = true
else if(x<=xc)and(y<yc)then Brush.Hatch:=bhBackwardDiagonal //Если условие = true , то штриховка - наклонные назад  линии
else if(x<=xc)and(y>=yc)then Brush.Hatch:=bhForwardDiagonal //Если условие = true, то штриховка - наклонные вперед линии
else Brush.Hatch:=bhPercent40; //Иначе какие-то точки в определенном порядке в качестве штриховки
Circle(x,y,r); //И рисуем окружность полученной кистью Brush с заданной штриховкой, цветом и стилем...
sleep(50); //Ждем 50 секунд.
u:=u+0.05; //Увеличиваем эту переменную
redraw; //Выводим результат на экран (отрисовываем/перерисовываем)
OnKeyDown:=KeyDown; //Процедуру подключаем к ивенту нажатия мыши
until f=false; //Ну, если f = false, выходим из цикла
CloseWindow; //Закрываем окно
end.
Открывайте встроенную справку и забивайте черным по белому , латиницей по кириллическому неизвестные вам поля, методы и прочее...
1
0 / 0 / 0
Регистрация: 13.05.2018
Сообщений: 3
14.05.2018, 23:58  [ТС]
alex5code, спасибо большое
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.05.2018, 23:58
Помогаю со студенческими работами здесь

Программа на Turbo Pascal не запускается на Free Pascal
В теории должен быть симулятор перекрестка, приведенный ниже код работает через Turbo Pascal, во Free Pascal выдает ошибку 201 в районе 750...

Программа if-else (координаты и радиус круга)
Здравствуйте! Необходимо написать программу: пользоатель вводит 2 координаты и радиус круга, программа их высчитывает и в зависимости от...

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

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

Программа вычисления площади секторов круга
Собсна, вот код программы вычисляющей площадь 3х секторов круга по заданным радиусам R1, R2, R3 и трем углам Альфа, Бета, Гамма. Структура...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru