0 / 0 / 0
Регистрация: 28.08.2016
Сообщений: 67

Процедуры и функции: определение центра тяжести плоских геометрических фигур (VB 6.0)

30.08.2016, 17:58. Показов 2706. Ответов 44
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Разработать приложение, назначением которого является определение центра тяжести плоских геометрических фигур (равностороннего треугольника, квадрата, прямоугольника, круга, ромба). Вывести изображение перечисленных фигур и провести через центры тяжести лини.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.08.2016, 17:58
Ответы с готовыми решениями:

Построение системы классов плоских геометрических фигур
Доброго времени суток, уважаемые пользователи, модераторы и администраторы форума! Очень нуждаюсь в Вашей помощи, осталось последнее...

Вычисление инерционных и геометрических характеристик плоских фигур
http://s019.***********/i635/1405/a9/0e20dfae0753.jpg - задание Как без знания координат можно провести вычисления? Просьба вставить...

Построить систему классов для описания плоских геометрических фигур
Ребята смотрите дана така задача: Построить систему классов для описания плоских геометрических фигур: круга, квадрата, прямоугольника....

44
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
31.08.2016, 09:20
Центр тяжести ваших пяти фигур лежит в центре их симметрии.
Собственно говоря, вам надо нарисовать эти фигуры и отметить
местонахождение центра симметрии (тяжести). Или я не правильно
понял вашу задачу?
0
0 / 0 / 0
Регистрация: 28.08.2016
Сообщений: 67
31.08.2016, 16:41  [ТС]
правильно
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
31.08.2016, 18:21
neokrom
Я вот что хотел у вас уточнить. Вам нужно 5 рисунков в
виде графических файлов? Или ваше задание нарисовать
графические примитивы? Есть еще вариант, который
позволяет сделать VB6. Использовать объекты Line и Shape.
Это ваше задание. И во всех трех случаях код будет разным.
Самый простой - нарисовать 5 графических рисунков и
поместить их например в объект типа Image.
1
0 / 0 / 0
Регистрация: 28.08.2016
Сообщений: 67
01.09.2016, 01:58  [ТС]
Добавлено через 5 минут
Программный код процедур и функций нужно разместите в стандартных модулях!
чем полегче сделать !!
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
01.09.2016, 08:52
neokrom
Давайте ближе к делу. Если что не так, то вы меня поправите.
1. Задается форма
2. На форму устанавливается 5 кнопок с надписями (квадрат,
треугольник, прямоугольник, ромб, круг)
3. На форму устанавливаются 5 объектов Image. В каждом
будет своя картинка. Они устанавливаются друг на друга.
Все 5 будут невидимы.
4. Нажатие кнопки, например "квадрат" сделает Image, в
котором рисунок квадрат, видимым. Все остальное будет
невидимым. (Так будет работать каждая кнопка). То есть
нужные изображения будут появляться, а остальные исчезать.
5. Для проведения линий можно использовать два объекта
Line. (Этого достаточно?). Надо ли чтобы объекты Line тоже
были невидимыми?
6. Над их местоположением голову ломать не надо - центр Image
7. Дополнительно можно поставить кнопку, которая будет
закрывать программу.

Добавлено через 4 минуты
Чуть не забыл...
Все кнопки могут иметь (если вы захотите) одно имя и
отличаться друг от друга только индексом. При этом
код получится короче. Объекты Image тоже будут иметь
одно имя.
1
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
01.09.2016, 11:09
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Option Explicit
Dim Index2 As Integer
 
Private Sub cmdD_Click(Index As Integer)
    Image1(Index2).Visible = False
    Image1(Index).Visible = True
    Index2 = Index
End Sub
 
Private Sub Command1_Click()
    End
End Sub
Миниатюры
Процедуры и функции: определение центра тяжести плоских геометрических фигур (VB 6.0)  
1
01.09.2016, 11:14

Не по теме:

Да это же geh. А я думаю: "Откуда взялся такой умный парень?" :D

0
01.09.2016, 11:34

Не по теме:


SoftIce,
Спасибо за комплимент. А я считал, что меня тут никто не помнит.

0
0 / 0 / 0
Регистрация: 28.08.2016
Сообщений: 67
01.09.2016, 17:44  [ТС]
в Принципе Line пускай будут видимыми ..главное что все фигуры были проведены через центры тяжести лини и код соответствовал теме ПРОЦЕДУРЫ И ФУНКЦИИ !!!
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
01.09.2016, 17:51
neokrom
Да рисунки несложно нарисовать. Я их сделал
в виндовском пайнте. Вы сами легко это сделаете.
А если что не так, то и перерисовать нетрудно.
0
0 / 0 / 0
Регистрация: 28.08.2016
Сообщений: 67
01.09.2016, 22:05  [ТС]
код это полнастью?
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
02.09.2016, 08:53
neokrom
Да, этот код написан полностью. Я понимаю ваше удивление.
Вы ожидали большего количества кода. И я бы мог вам его
предоставить. Но тогда надо каждой кнопке дать свое имя и
для каждой кнопки будет своя процедура. То есть 5 процедур
вместо одной и код в них будет один и тот же (имена разные)
Решайте сами.
Если вам нужно много кода, то это легко сделать.

Добавлено через 36 минут
Предлагаю более длинный код (он работает)
Можно написать еще больше. Вы только скажите.

Что можно.

1. Можно при загрузке программы написать приветствие
2. Потом через несколько секунд появится одна кнопка с
надписью "Нажми меня"
3. Вы нажимаете. Эта кнопка пропадает и появляются 5
уже известных вам кнопок.
4. Можно также сделать, что при нажатии кнопки, она будет
делать запрос "Вы уверены, что хотите меня нажать" либо
можно еще так "Черт, вы меня нажимаете уже 5-ый раз"
5. Можно также ввести пароль
6. Можно... в общем много чего можно...

Visual Basic
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
Option Explicit
Dim ix As Integer
 
Private Sub cmdKrug_Click()
    Image1(ix).Visible = False
    Image1(3).Visible = True
    ix = 3
End Sub
 
Private Sub cmdKvad_Click()
    Image1(ix).Visible = False
    Image1(1).Visible = True
    ix = 1
End Sub
 
Private Sub cmdPram_Click()
    Image1(ix).Visible = False
    Image1(4).Visible = True
    ix = 4
End Sub
 
Private Sub cmdRomb_Click()
    Image1(ix).Visible = False
    Image1(0).Visible = True
    ix = 0
End Sub
 
Private Sub cmdTreu_Click()
    Image1(ix).Visible = False
    Image1(2).Visible = True
    ix = 2
End Sub
 
Private Sub Command1_Click()
    End
End Sub
1
0 / 0 / 0
Регистрация: 28.08.2016
Сообщений: 67
02.09.2016, 16:36  [ТС]
спасибо большое ..я думаю .не надо придумывать колесо оно и так хорошо ездит )))
эти фигуры создаются ..в паинте!! а в Visual Basic --- нельзя ?
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
02.09.2016, 17:01
neokrom
По моему в Visual Basic нет графического редактора?
Но если есть, то можно. Вообще можно в любом
графическом редакторе, если он рисует линии и окружности.
1
0 / 0 / 0
Регистрация: 28.08.2016
Сообщений: 67
02.09.2016, 20:04  [ТС]
ну тогда это хорошо

Добавлено через 51 секунду
а можно добавить Коментарии ?
0
Заблокирован
02.09.2016, 20:29
Цитата Сообщение от echs Посмотреть сообщение
Visual Basic нет графического редактора
А в кубэйсике был?
В VB есть операторы Line, Circle и т.д.
Ничего большего в этой задаче и не нужно.
1
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
02.09.2016, 20:50
Все комментарии одинаковы. Я прокомментирую одну из
пяти процедур.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub cmdKvad_Click() ' заголовок процедуры cmdKvad_Click. 
                             '(cmd - префикс, он часто используется для кнопки) 
                              '(Kvad - сокращение слова Kvadrat - чтобы знать, 
                             'что эта кнопка показывает картинку где нарисован квадрат)
   Image1(ix).Visible = False    ' ix -  индекс. Все картинки имеют индекс
                                               ' ix=0 - ромб
                                               ' ix=1 - квадрат
                                               ' ix=2 - треугольник
                                               ' ix=3 - круг
                                               ' ix=4 - прямоугольник
                                               ' код выше означает, что картинка становится невидимой
   Image1(1).Visible = True  ' Этот код означает, что картинка 1 (квадрат) стан. видимой
   ix = 1                     ' индекс получает значение видимой картинки 
                                  ' То есть при нажатии следующей кнопки уже 
                                   ' эта картинка станет невидимой
                                   ' То есть индекс передает очередь "невидимости"
End Sub        ' конец процедуры.
Добавлено через 5 минут
Shersh
В VB есть операторы Line, Circle и т.д.
Ничего большего в этой задаче и не нужно.
..............
Shersh
Это будет совершенно другой код.
Кстати есть и еще вариант решения этой задачи.
Но нужен только ОДИН вариант, а не несколько.
1
0 / 0 / 0
Регистрация: 28.08.2016
Сообщений: 67
02.09.2016, 23:52  [ТС]
спасибо большое очень помогли выручили!)

Добавлено через 12 минут
А КАК БУДЕТ ВЫГЛЯДЕТЬ С ЭТИМИ ОПЕРАТОРАМИ Line, Circle ?
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
03.09.2016, 09:20
neokrom
При использовании операторов Line и Circle есть свои
особенности.
1. Можно рисовать прямо на форме, а можно на объекте
Picture (специально для этого предназначенном)
2. Чтобы программа поняла где рисовать надо указать объект.
Пример
Picture.Line (запись условная, я еще поясню)
Form.Line (для формы можно написать просто Line)
3. Прежде всего необходимо задать систему координат
Пример
Picture.Scale(x1, y1)-(x2, y2)
x1,y1 - координаты левого верхнего угла
x2, y2 - координаты нижнего правого угла
Мало этого. Надо указать единицу измерения. Чаще всего
используют пиксели.
Пример
Picture.ScaleMode = 3
А также следует указать принудительную перезарисовку
Пример
Picture.AutoRedraw = True
Теперь разберемся с Line
Picture.Line(x1, y1)-(x2, y2), "цвет"
x1, y1; x2, y2 - координаты концов отрезка
Цвет задается многими способами. Могу посоветовать константы
VbBlack - черный цвет
VbWhite, VbBlue, VbRed, VbGreen и другие
Теперь Circle
Picture.Circle(x, y), r, "цвет"
x, y - координаты центра окружности
r - радиус окружности

Да, вот чуть не забыл
Для задания толщины линии надо использовать оператор
DrawWidth
Пример
Picture.DrawWidth = 2 (чем больше число, тем толще линия)
...
Вы понимаете, что изложить весь курс Visual Basic
мне не удастся. Этот форум стал моим Университетом.
Чего и вам желаю!
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.09.2016, 09:20
Помогаю со студенческими работами здесь

Построить систему классов для описания плоских геометрических фигур
C++ Построить систему классов для описания плоских геометрических фигур: круга, квадрата, прямоугольника. Предусмотреть методы для...

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

Построить систему классов для описания плоских геометрических фигур
Здравствуйте. Прошу помощи) Вот сама задача Построить систему классов для описания плоских геометрических фигур: круг, квадрат,...

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

Построить систему классов для описания плоских геометрических фигур
ПОЖАЛУЙСТА ПОМОГИТЕ ИСПРАВИТЬ ПРОГРАММУ НА ПАСКАЛЕ!!!!! Var a of Real; n,ax,ay,axn,ayn,axn1,an2,ayn1,ayn2,cx,cy,i,r:Real; ...


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

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

Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru