Свежие обсуждения
Компьютеры

Пара задачек на visual basic

1 2

Nintashi: Это чисто математическая, точнее математико-геометрическая задача и если три точки зафиксированы, то очень сомневаюсь, что ось кольца (на самом деле центр окружности, т.к. имеем дело с плоскостью на что указывает размерность элементов массива) пройдет через начало координат - это будет лишь частный случай.

На самом деле всё проще. Надо вычислить расстояние от начала координат до каждой точки (надеюсь не надо рассказывать, как это сделать?), Минимальное и максимальное из расстояний и будут радиусами кольца, построенного из НК, в котором будут все точки.

Программа в десяток строк. На С по крайней мере.

PS. А суть работы программиста как раз в том и состоит, чтоб задачи из плоскостей иных наук в алгоритм перевести. А реализация алгоритма на каком-то языке - кодерство, к программированию имеет отношение постольку поскольку.

 

rfc: На самом деле всё проще
Если так сформулировать задачу, то да... на самом деле просто... Я ни разу не слышал термин "Определить кольцо" по этому интерпретировал по своему.
rfc: суть работы программиста
согласен... сам почти каждый божий день такими вещами занимаюсь. Раньше считал, что перевести задачу в алгоритм - достаточно просто, но столкнувшись с тем, что выпускники институтов пришедшие на работу, в частности в мое подчинение, не смотря на специальность программиста и отличные оценки в дипломе, не могут не то, чтобы алгоритм написать, готовый даже закодировать не могут по человечески. Выходит, не такая уж и простая это задача...

 

Пришлось самому изучать синтаксис. Кое как нашел боле менее понятный учебник. Не ясно несколько моментов. Например как в строковых переменных идет нумерация элементов? Если я хочу выбрать из строки произвольный элемент пользуясь функцией Mid(str_m, номер, 1) что писать в "номере"?

 

Вот только непонятно, почему это всё брат не может сдлать сам а напрягает Вас? Что он делает в замен? Ладно, если Вы потом разобравшись, научите его вместо препода. Но,скорее всего, он возьмёт готовое и не вникая "сдаст" предмет. А потом гидроэлектростанции и поезда с самолётами взрываются

 

Это наша проблема, я учу или брат. Попросил помощи, реально откликнулось только двое, остальное флуд. Если пойму как делать я, то поймёт и брат.

 


Sub ДваЧисла()

Dim int_m, int_n As Integer 'Задаются переменные
Dim str_m, str_n As String
Dim y, x As Byte
Dim a As Boolean

'Вводятся или задаются значения чисел. В зависимости от требований
int_m = 1234 'InputBox("Введите первое четырёхзначное число число:")
int_n = 5671 'InputBox("Введите второе четырёхзначное число число:")

a = False

str_m = Str(int_m) 'Преобразование численных значений в строки
str_n = Str(int_n)

For y = 2 To 5 Step 1 'Циклы перебора значений
For x = 2 To 5 Step 1
If Mid(str_m, y, 1) = Mid(str_n, x, 1) Then 'Сравнение каждого элемента первой строки с каждым элементом второй строки
a = True 'Если хоть один совпал, то "a" присваивается "правда"
End If 'Конец сравнения
Next 'Конец внутреннего цикла
Next 'Конец Внешнего цикла

If a = True Then 'Проверить a = "правда"
MsgBox "Совпадающие цифры есть" 'Если "правда"
Else
MsgBox "Совпадающих цифр нет" 'Если "НЕправда"
End If 'Конец проверки условия

End Sub

Вот работающая программа. Вопрос. Почему работает так:
For y = 2 To 5 Step 1 'Циклы перебора значений
Почему не от единицы? Если сделать от 1, то первое значение "пустышка"

 

Всё я напрограммировал, всё работает, но вопрос, что выше, остался. С номерами элементов в строке я не понимаю...

 
1 2