Search on the forums:
 

Advanced search
 
back to forums :: back to web-site :: music archive
 
register :: login
add release :: f.a.q. :: на русском
Нужна помощь в VB6.0
Board index » Обсуждения » Неформат
Всё, что не железо
#24750 29.05.2011 00:16
ddx1

User avatar
Posts: 10500
Has thanked: 2816 times
Have thanks: 5038 times

Для начала: как через одно текстовое поле ввести шесть чисел и запихнуть их в массив?
жижа
 
 
#24752 29.05.2011 00:21
Fenih

User avatar
Posts: 5734
Has thanked: 781 times
Have thanks: 789 times
   
Алгоритмически, или кодом? VB не знаю просто.
Ты сам выбрал такой путь - сам и вывози, и не жалуйся. И не говори даже, что тебе это все не нравится.
 
 
#24753 29.05.2011 00:25
ddx1

User avatar
Posts: 10500
Has thanked: 2816 times
Have thanks: 5038 times

Fenih wrote:Алгоритмически, или кодом?

Алгоритмически — циклом? Это понятно. Я вообще VB впервые вижу (когда-то изучал бейсик и паскаль), жене контрольную помогаю сделать. Мне непонятны поведение и возможности этих полей/кнопок/форм :-(
жижа
 
 
#24754 29.05.2011 00:32
Low_Pressure

User avatar
Posts: 2808
Has thanked: 645 times
Have thanks: 273 times
 
Я к сожалению с синтаксисом совершенно не знаком, хотя алогоритмы в делфи писал.

Я уж думал ребенку в школе задали - ни хрена себе задачка :)
 
 
#24756 29.05.2011 00:36
ddx1

User avatar
Posts: 10500
Has thanked: 2816 times
Have thanks: 5038 times

Low_Pressure wrote:ребенку в школе

мой пока ещё в садике. по сабжу — решил пока сделать ввод через шесть текстовых полей O_o, в условии задачи это не оговаривается
жижа
 
 
#24758 29.05.2011 00:39
Fenih

User avatar
Posts: 5734
Has thanked: 781 times
Have thanks: 789 times
   
А в каком пункте загвоздка? Выдрать строку из поля (походу не в этом), распилить строку на шесть строк с разделителем в запятой, перевести строку в число, прочее, другое?
Ты сам выбрал такой путь - сам и вывози, и не жалуйся. И не говори даже, что тебе это все не нравится.
 
 
#24759 29.05.2011 00:40
ddx1

User avatar
Posts: 10500
Has thanked: 2816 times
Have thanks: 5038 times

Fenih wrote:распилить строку на шесть строк с разделителем в запятой

было бы здорово, а ещё лучше — пробелом, т.к. числа могут быть с десятичной частью
жижа
 
 
#24762 29.05.2011 00:50
Low_Pressure

User avatar
Posts: 2808
Has thanked: 645 times
Have thanks: 273 times
 
ddx1 wrote:было бы здорово, а ещё лучше — пробелом, т.к. числа могут быть с десятичной частью

Это по условию задачи? Тогда как-то так:
x="первый символ"
if x="." then следующая итерация цикла
x=x+"второй символ"/10
if x=" " then конец вложенного цикла, начало внешнего, переходим к элементу y массива.

Ну это на правах КО. Если серьезно, я бы погуглил в поисках готового решения.
 
 
#24763 29.05.2011 00:51
Fenih

User avatar
Posts: 5734
Has thanked: 781 times
Have thanks: 789 times
   
ddx1 wrote:было бы здорово, а ещё лучше — пробелом, т.к. числа могут быть с десятичной частью


Сравниваешь каждый символ с пробелом, записываешь номера в массив или просто в 6 переменных. После этого командой типа "bString = aString.Substring(2, 6)" распиливаешь на строки.
Строки в числа конвертируются командой Val.
Ты сам выбрал такой путь - сам и вывози, и не жалуйся. И не говори даже, что тебе это все не нравится.
 
 
#24764 29.05.2011 00:55
Low_Pressure

User avatar
Posts: 2808
Has thanked: 645 times
Have thanks: 273 times
 
Случайно не оно: клик?
 
 
#24766 29.05.2011 01:01
Fenih

User avatar
Posts: 5734
Has thanked: 781 times
Have thanks: 789 times
   
j = 1 //счётчик
for i = 1 to (длина строки) do
if (aString = Mid(aString, i, i) = (пробелу)) and (j <5)
then begin (или нет бегинов?)
massiv(j) = i
j = j + 1
end
\\нашли все номера, надо выйти из цикла как-то
1string = aString.Substring(0, massiv(1))
2string = aString.Substring(massiv(1), massiv(2))
3string = aString.Substring(massiv(2), massiv(3))
......

P.s. Это всего лишь импровизация с гуглом.
Ты сам выбрал такой путь - сам и вывози, и не жалуйся. И не говори даже, что тебе это все не нравится.
 
 
#24767 29.05.2011 01:09
ddx1

User avatar
Posts: 10500
Has thanked: 2816 times
Have thanks: 5038 times

Low_Pressure wrote:оно

нет, но там есть полезная инфа :-)

Fenih wrote:j = 1 //счётчик
for i = 1 to (длина строки) do
if (aString = Mid(aString, i, i) = (пробелу)) and (j <5)
then begin (или нет бегинов?)
massiv(j) = i
j = j + 1
end
\\нашли все номера, надо выйти из цикла как-то
1string = aString.Substring(0, massiv(1))
2string = aString.Substring(massiv(1), massiv(2))
3string = aString.Substring(massiv(2), massiv(3))

мне это будет сниться сегодня О_О
жижа
 
 
#24768 29.05.2011 01:19
Fenih

User avatar
Posts: 5734
Has thanked: 781 times
Have thanks: 789 times
   
Почему? о_0
Ты сам выбрал такой путь - сам и вывози, и не жалуйся. И не говори даже, что тебе это все не нравится.
 
 
#24769 29.05.2011 01:23
ddx1

User avatar
Posts: 10500
Has thanked: 2816 times
Have thanks: 5038 times

Fenih wrote:Почему?

Потому, что я ни разу не программист и меня вносящие неопределённость комментарии, типа «как-то», подавляют, я уже даже с Атомик Рустер на Тыр перешёл, чтобы взбодриться
жижа
 
 
#24770 29.05.2011 01:36
Fenih

User avatar
Posts: 5734
Has thanked: 781 times
Have thanks: 789 times
   
глобал фикс и каменты:

j = 1 //счётчик для счёта числа найденных пробелов.
for i = 1 to (Len(aString)) do \\начинаем перебирать все символы строки
if (aString = Mid(aString, i, i) = (пробелу)) and (j <5) \\Если символ равен пробелу и число найденнх пробелов меньше пяти
then \\тогда
massiv(j) = i \\записываем номер найденного пробела
j = j + 1 \\увеличиваем счётчик наденных пробелов
End If \\заканчиваем if
Next \\Выход из цикла
\\нашли все номера

Щас догуглю продолжение.
Ты сам выбрал такой путь - сам и вывози, и не жалуйся. И не говори даже, что тебе это все не нравится.
 
 
#24772 29.05.2011 01:43
ddx1

User avatar
Posts: 10500
Has thanked: 2816 times
Have thanks: 5038 times

тут вот уже решали мою задачку, но мне нужно ещё и оболочку сделать (ввод/вывод/график), а не только саму реализацию МНК
жижа
 
 
#24775 29.05.2011 01:49
Fenih

User avatar
Posts: 5734
Has thanked: 781 times
Have thanks: 789 times
   
Продолжение видимо такое:
1string = aString.Substring(1, (massiv(1)-1)) \\первая строка - от первого символа, до символа перед первым пробелом.
2string = aString.Substring((massiv(1)+1), (massiv(2)-1))) \\Вторая строка - от символа после первого пробела, до символа перед вторым пробелом
3string = aString.Substring((massiv(2)+1), (massiv(3)-1))) \\Третья строка - от символа после второго пробела, до символа перед треьтим пробелом
Оставшиеся строки аналогично.
Единственное, я не уврен, что в первой строке надо всё-таки с первого символа, а не нулевого — я так и не нагуглил, как строка заносится.
Ты сам выбрал такой путь - сам и вывози, и не жалуйся. И не говори даже, что тебе это все не нравится.
 
 
#24779 29.05.2011 02:00
DrakarD

User avatar
Posts: 6300
Has thanked: 895 times
Have thanks: 759 times

ddx1 wrote:мой пока ещё в садике


Ну так, нынче есть и продвинутые садики для детишек-индиго. VB и теорию бозонных струн в ясельках проходят.
 
 
#24851 29.05.2011 16:10
qpMM

User avatar
Posts: 1987
Has thanked: 886 times
Have thanks: 892 times

Можно еще раз конкретное задание с деталями и прочим? И пожелания, и замечания, и прочие плюшки. VB не знаю, но алгоритм, вероятно, на Паскале смогу написать, а уж трансформировать, я думаю, нетрудно будет.
 
 
#24854 29.05.2011 16:35
ddx1

User avatar
Posts: 10500
Has thanked: 2816 times
Have thanks: 5038 times

qpMM wrote:Можно еще раз конкретное задание с деталями и прочим?

Чуть выше есть.
жижа
 
 
Powered by Heavy Music Archive Engine
Browsing and using our web-site confirms your full agreement with all the terms and conditions.