Перейти из форума на сайт.


Система IP-видеонаблюдения "Линия". Скачать бесплатную демо-версию для 16 камер. НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи на Visual Basic (VB).

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

Открыть новую тему     Написать ответ в эту тему

NEOMATRIX



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору


Данный топик предназначен только для обсуждения типовых задач на Visual Basic.
Обсуждение задач на VBA (а именно, Excel, Word, Access) строго запрещено!
Пишите в соответствующих топиках.

 
Родственные топики:
  • Excel VBA - часть 1, часть 2 - все вопросы по Excel VBA туда
  • Word VBA все вопросы по Word VBA туда
  • Access все вопросы по программированию в Access туда
  • VBScript - программирование "удобняшек" на VBScript
  • QBasic - типовые задачи на QBasic
     
  • Date Time Functions In Visual Basic
  • VB6's Trig, Math, Financial, Boolean, and Random functions
  • Visual Basic 6 String Functions
  • VB6 Number System Functions (Hex, Oct, Etc)
  • VB6's DateAdd function
     
  • Functions (Visual Basic)
  • Keywords and Members by Task
  • Visual Basic Reference
     
  • Visual Basic String Manipulation Tutorials
     
  • Top 10 Visual Basic Sins

     
    Учебники:
    Visual Basic для студентов и школьников. Культин Н. (2010)
    Занимательное программирование на Visual Basic.NET. Климов А. (2005)
    Visual Basic в задачах и примерах. Сафронов (2009)
    Visual Basic 2012 на примерах. Зиборов В. (2012)

  • Всего записей: 202 | Зарегистр. 29-12-2004 | Отправлено: 19:30 16-11-2005 | Исправлено: XPerformer, 10:07 28-10-2014
    NEOMATRIX



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Тема: Разработать процедуру.
    Задача: Из заданного на плоскости множества точек выбрать три такие, которые составляют треугольник наименьшей площади.
     
    Идея мне в принципе понятна, нужно задать данные точки, затем найти наименьшее расстоянийе к ближайшим 2 точкам и высчитать площадь. Вопрос в том как бы это реализовать в коде.

    Всего записей: 202 | Зарегистр. 29-12-2004 | Отправлено: 19:40 11-02-2006
    Anatolij2005

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ура, спасибо от нашего немногочисленного отдела, все прекрасно работает!!!!

    Всего записей: 26 | Зарегистр. 04-10-2005 | Отправлено: 12:18 13-02-2006
    NEOMATRIX



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Есть идеи ? по поводу задачи.

    Всего записей: 202 | Зарегистр. 29-12-2004 | Отправлено: 22:37 15-02-2006
    respite



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    NEOMATRIX

    Цитата:
    Есть идеи ? по поводу задачи.

    Опиши подробнее входные данные (двумерный массив?).
     
    Пока вырисовывается такой вариант: перебрать все точки, найти две, расстояние между которыми минимально. После этого найти ближайшую точку к ним. Хотя тут тоже могут быть ошибки, например, когда две точки стоят рядом, но очень далеко от остальных.

    Всего записей: 201 | Зарегистр. 26-08-2003 | Отправлено: 11:52 16-02-2006 | Исправлено: respite, 11:54 16-02-2006
    NEOMATRIX



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    respite
    Да двумерный массив. Я больше сказать не могу.

    Всего записей: 202 | Зарегистр. 29-12-2004 | Отправлено: 20:04 16-02-2006
    gerrCrazzy



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    NEOMATRIX
    Собственно respite предлагал  

    Цитата:
    перебрать все точки, найти две, ...

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

    Цитата:
    Да двумерный массив. Я больше сказать не могу.  

    Отчего такая секретнось? Модель захвата проекции звездного неба строишь?

    Всего записей: 63 | Зарегистр. 27-12-2002 | Отправлено: 19:34 22-02-2006 | Исправлено: gerrCrazzy, 19:35 22-02-2006
    Troitsky



    Водник Водкин
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    NEOMATRIX
    gerrCrazzy
    Не силен я в алгоритмах, но как то долго получится все возможные тройки точек перебирать и площадь находить - это решение в лоб. Упростить, думаю, можно как то.
     
    А вот можно ли утверждать, что наименьшую площадь будет иметь такой треугольник, двумя вершинами которого являются две самые близкорасположенные точки? Кажется, да (интересно как это доказать ). Если да, то задача упрощается и после нахождения двух таких точек остается сравнить площади только треугольников построенных на этой стороне.
     
    Добавлено:
    Хотя нет, утверждение неверное

    ----------
    Мы в хорошем настроении гуляем по лесам.
    Кто обидеть нас захочет – сам получит по усам.
    Сам полу- получит по усам. Сам полу- получит по усам!

    Всего записей: 794 | Зарегистр. 13-12-2003 | Отправлено: 20:05 22-02-2006
    NEOMATRIX



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    gerrCrazzy

    Цитата:
    Отчего такая секретнось? Модель захвата проекции звездного неба строишь?

    Какая еще секретность ? Это я от незнания сказать не могу т.е нечего сказать ))

    Всего записей: 202 | Зарегистр. 29-12-2004 | Отправлено: 21:25 22-02-2006
    wInuX

    Junior Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Troitsky

    Цитата:
    А вот можно ли утверждать, что наименьшую площадь будет иметь такой треугольник, двумя вершинами которого являются две самые близкорасположенные точки?

    точно нет. Пример: в одной части плоскости две точки на наименьшем растоянии. в другой три точки на небольших растояниях (на большем чем первые две). у треугольника на трех точках площадь будет наименьшей.
     
     
    NEOMATRIX
    Алгоритм такой:
     
    [deleted] здесь был не правильный алгоритм
     
     
    Добавлено:
    хотя.. что-тоя уже сам в алгоритме не уверен. сейчас еще подумаю...

    Всего записей: 155 | Зарегистр. 19-05-2005 | Отправлено: 16:49 23-02-2006 | Исправлено: wInuX, 17:07 23-02-2006
    Atec

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Troitsky
    wInuX
     
    сильно не пинайте если ерунду предлагаю.
     
    как идея:
    1. найти тройки точек, максимально близко расположенных по Х
    2. то же самое по У
    3. из этих двух наборов найти совпадающие тройки
    4. из найденых совпадений выбрать треугольник с наименьшей площадью.
     
    ЗЫ. тоже как то коряво ... практически в лоб ... но мне кажецца тут другова варианта, кроме как "в лоб" трудно придумать. хотя ...

    Всего записей: 37 | Зарегистр. 27-05-2005 | Отправлено: 19:01 24-02-2006 | Исправлено: Atec, 19:09 24-02-2006
    respite



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Конечно, можно работать в лоб. Например, создать несколько вспомогательных массивов, в которых будут находиться расстояния между точек, затем перебирать несколько точек, у которых расстояние будет минимальным.... Наверно, не то.
     
    А если зайти с другой стороны?  
    1. Находим границы области со всеми точками.  
    2. Разбиваем это пространство на N-ное количество частей с равной площадью, затем ищем ту часть, в которой точек будет больше.  
    3. Затем найденную часть разбиваем на следующие несколько частей.
    4. Затем уже среди найденных точек выбираем три для треугольника.
     
    NEOMATRIX
    Сроки решения задачи когда заканчиваются?

    Всего записей: 201 | Зарегистр. 26-08-2003 | Отправлено: 13:12 26-02-2006 | Исправлено: respite, 13:14 26-02-2006
    NEOMATRIX



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    respite
    Еще 4 дня.

    Всего записей: 202 | Зарегистр. 29-12-2004 | Отправлено: 13:40 04-03-2006
    alin



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, пожалуйста, можно ли в Excel-e операцию «ПОИСК РЕШЕНИЯ» оформить как макрос.
     
    Добавлено:

    Цитата:
    Подскажите, пожалуйста, можно ли в Excel-e операцию «ПОИСК РЕШЕНИЯ» оформить как макрос.

    Разобрался, вопрос снят!

    Всего записей: 683 | Зарегистр. 05-08-2004 | Отправлено: 19:59 13-03-2006
    Fanat Andrew



    Junior Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Помогите кто знает VB и матрицы, определители и всё такое.
     
    Пример: Определители второго порядка.
    Создана форма, на ней 5 textbox - 4 элемента матрицы (A, B, C, D) и 5-й соответственно сам определитель (E).
    Методом простейших вычислений заставил считать и выводить ответ в 5 textbox.
     
    Я хотел бы сделать так чтобы при нажать на кнопку, выводился весь ход решения в Word'е.
    Например:
              |A  B|
    det A=|      |=A*D-B*C=AD-BC= E
              | C D|
     
    Насколько знаю, это надо делать через OLE.
    Формулы набраны в Microsoft Equition 3.0.
     

    Всего записей: 75 | Зарегистр. 14-03-2006 | Отправлено: 20:43 14-03-2006
    Viital

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ребят нужна срочная помощь зделать одномерный массив в QBASIC, очень очень нужно помогите пожайлуста!!!
    ЗАРАНИЕ ОЧЕНЬ БОЛЬШОЕ СПСИБО!!!
    Вот задание:
     
    7.1. Дан одномерный массив размерностью в K элементов. Найти количество элементов массива, попадающих в интервал [A ; B], вывести на экран все ненулевые элементы.  
    7.2. Дан одномерный массив Zn. Все элементы с нечетными значениями заменить на сумму элементов с четными номерами.
    7.3. Даны два одномерных массива Xm и Yn. Сформировать новый массив Zn, состоящий из первых пяти положительных элементов массива Xm и последних пяти отрицательных элементов массива Yn. Отсортировать исходный массив Xm по возрастанию.
     
    17.1. Дан одномерный массив размерностью в N элементов. Найти количество положительных элементов массива. Вывести на экран компьютера номера и значение всех элементов, содержащих дробную часть
    17.2. Дан одномерный массив Ym. Заменить все отрицательные элементы с четными номерами на значение среднего арифметического элементов массива Ym.
    17.3. Дан одномерный массив Zm. Сформировать массив Yn, состоящий из нечетных значений элементов массива Zm. Полученный массив отсортировать по возрастанию.

    Всего записей: 1 | Зарегистр. 24-03-2006 | Отправлено: 20:52 24-03-2006
    AlexS8m5Sa



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    В общем проблема у маня достаточно легко решаемая ( для тех, кто с VB знаком давно, а я с этим зверем столкнулся совсем недавно (VB 2005 Express Edition) ):
    нужно чтобы при нажатии определённой кнопки, программка соединялась с сервером и отправляла ему данные ( оправлял запрос типа: _http://www.mysite.ru/index.php?u=038561957...001740034858692 )
     
    как это можно реализовать?
    и/или где об этом можно прочитать?

    Всего записей: 22 | Зарегистр. 15-01-2006 | Отправлено: 22:44 07-04-2006 | Исправлено: AlexS8m5Sa, 12:35 08-04-2006
    vasiliy74



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Вопрос такой: как заставить Excel печать только чётные либо нечётные страницы, (для двусторонней печати на принтере без реверса)? Вопрос то уже был такой может я не туда пишу

    Всего записей: 289 | Зарегистр. 21-02-2006 | Отправлено: 11:47 10-04-2006 | Исправлено: vasiliy74, 07:51 11-04-2006
    sky4au

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Приветик всем! Я учусь в 11 классе,срочно надо сдать работу по информатике.Задание такое:составить программу решения тригонометрических уравнений. Мы вводим правую часть уравнения(лэйбл sin x=...) и программа должна подсчитывать х по формуле х=arcsin(введенное число)+2Пn.У меня есть программка,ошибок не выдает,но и не выполняет ее.Пожалуйста,если не трудно,помогите написать,уже устала спрашивать у всех.
    Имена полей и кнопок:
    поле ввода числа - "P1"
    поле целого числа - "P2"
    кнопка вычисляй x - "B1"
    поле ответа - "P3"
     
    On Error GoTo Err_
    Dim Pi As Double
    Dim P1 As Integer
    Dim P2 As Integer
    Dim P3 As Integer
    Pi = 3.14
     
    If P1 > 1 Or P1 < -1 Then
    P3 = "Решений нет"
    Exit Sub
    End If
     
    If P1 = -1 Then
    P3 = -Pi / 2 + 2 * P2 * Pi
    Exit Sub
    End If
     
    If P1 = 1 Then
    P3 = Pi / 2 + 2 * P2 * Pi
    Exit Sub
    End If
     
    'P3 = Atn(P1 / Sqr(-P1 * P1 + 1)
     
    Exit Sub
    Err_:
    P3 = Err.Description
     
    Заранее спасибо

    Всего записей: 2 | Зарегистр. 17-04-2006 | Отправлено: 16:42 17-04-2006
    Troitsky



    Водник Водкин
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    sky4au
    Если в формулах не напутал то:
    Код:
    Private Sub B1_Click()
      Const Pi = 3.141592
       
      Dim dblY As Double
      Dim intN As Integer
      Dim dblX As Double
       
      dblY = CDbl(Val(P1.Text))
      intN = CInt(Val(P2.Text))
       
      If Abs(dblY) > 1 Then
        MsgBox "Bla-bla-bla", vbExclamation
        Exit Sub
      ElseIf Abs(dblY) = 1 Then
        dblX = dblY * Pi / 2 + 2 * Pi * intN
      Else
        dblX = ArcSin(dblY) + 2 * Pi * intN
      End If
       
      P3.Text = dblX
    End Sub
     
    Function ArcSin(X As Double)
      ArcSin = Atn(X / Sqr(-X * X + 1))
    End Function

     
     
    Добавлено:
    Забыл сказать, что результат в радианах. Для преобразования радиан в градусы нужно умножить радианы на 180/Pi.


    ----------
    Мы в хорошем настроении гуляем по лесам.
    Кто обидеть нас захочет – сам получит по усам.
    Сам полу- получит по усам. Сам полу- получит по усам!

    Всего записей: 794 | Зарегистр. 13-12-2003 | Отправлено: 19:34 17-04-2006 | Исправлено: Troitsky, 19:44 17-04-2006
    sky4au

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ошибки выводит....не знает,что такое Abs и Atn с Scr не читает,хотя раньше такого не было....

    Всего записей: 2 | Зарегистр. 17-04-2006 | Отправлено: 20:54 17-04-2006
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 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

    Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи на Visual Basic (VB).

    Имя:
    Пароль:
    Сообщение

    Для вставки имени, кликните на нем.

    Опции сообщенияДобавить свою подпись
    Подписаться на получение ответов по e-mail
    Добавить тему в личные закладки
    Разрешить смайлики?
    Запретить коды


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.Board
    © Ru.Board 2000-2018

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru