Модераторы: Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> помогите решить задачку по VB, заранее спасибо 
V
    Опции темы
zenkaman
  Дата 31.3.2006, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 31.3.2006

Репутация: нет
Всего: нет



Создать файл, содержащий сведения об отправлении поездов дальнего следования с вокзала. Каждая запись содержит поля: номер поезда, станция назначения, время отправления, время в пути, наличие билетов.
Написать программу, которая позволяет получить следующую информацию:
- время отправления поездов в город Х во временном интервале от А до В часов;
- наличие билетов на поезд с номером ХХХ.


PM MAIL   Вверх
Akina
Дата 31.3.2006, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 17
Всего: 454



Это Центр помощи. Давай код - поможем доработать.
Или топай в раздел "Поиск специалистов" и заказывай.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
zenkaman
Дата 1.4.2006, 19:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 31.3.2006

Репутация: нет
Всего: нет



...

Это сообщение отредактировал(а) zenkaman - 4.4.2006, 09:50
PM MAIL   Вверх
cardinal
Дата 1.4.2006, 20:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Примеры тут:
http://forum.vingrad.ru/index.php?showtopic=87195
http://forum.vingrad.ru/index.php?showtopic=87207
http://forum.vingrad.ru/index.php?showtopic=26403
...
То есть пользуйся поиском!
Добавлено @ 20:01
И транслитом!


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
zenkaman
Дата 4.4.2006, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 31.3.2006

Репутация: нет
Всего: нет



Пожалуста помогите исправить, у меня последний день остался.

Код

Private Sub Command1_Click()
Dim StrPerem As String
Dim StrTemp As String
Open "c:\test.txt" For Input As #1
Do While Not (EOF(1))
Input #1, StrTemp
StrPerem = StrPerem & StrTemp
Loop
Close #1
arr = Split(StrPerem, "")
MsgBox arr(0)
End Sub


С:\test.txt
245 Город1 10.50
456 Город2 11.40
722 Город3 12.35
Надо чтоб прога выташила из файла только столбик с временем и потом его выдала

Мне выкидывает в MsgBox все вместе :
245 Город1 10.50456 Город2 11.40722 Город3 12.35 smile

Это сообщение отредактировал(а) zenkaman - 4.4.2006, 11:56
PM MAIL   Вверх
zenkaman
Дата 4.4.2006, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 31.3.2006

Репутация: нет
Всего: нет



А можно ли с помощью Split разделить строку во время чтения файла и каждый элемент записать не в один StrTemp, а каждый отдельно? Например: 245 в StrНомер, Город1 в StrКуда, 10.50 в StrВремя.
PM MAIL   Вверх
cardinal
Дата 4.4.2006, 14:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Самое простое это заменить
Код

StrPerem = StrPerem & StrTemp

на
Код

StrPerem = StrPerem & Right(StrTemp, 5) & vbCrLf

Добавлено @ 14:07
Цитата(zenkaman @ 4.4.2006, 11:39 Найти цитируемый пост)
А можно ли с помощью Split разделить строку во время чтения файла и каждый элемент записать не в один StrTemp, а каждый отдельно?

Можно. Осталось только придумать как... smile Попробуй, не получится - подскажем...


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
zenkaman
Дата 4.4.2006, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 31.3.2006

Репутация: нет
Всего: нет



Код

StrPerem = StrPerem & Left(StrTemp, 3) & vbCrLf


Код

StrPerem = StrPerem & Right(StrTemp, 2) & vbCrLf


Класс! Спасибо большое

Если нетрудно напишите пожалуста как сумировать числа находящиеся внутри String.
PM MAIL   Вверх
cardinal
Дата 4.4.2006, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Цитата(zenkaman @ 4.4.2006, 12:55 Найти цитируемый пост)
Если нетрудно напишите пожалуста как сумировать числа находящиеся внутри String.

А на примере?


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
zenkaman
Дата 4.4.2006, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 31.3.2006

Репутация: нет
Всего: нет



Например:У меня в StrPerem 245 456 722 .Как их сложить? Надо сначало их вынести для обработки или можно складывать внутри StrPerem?

PM MAIL   Вверх
cardinal
Дата 4.4.2006, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Цитата(zenkaman @ 4.4.2006, 13:21 Найти цитируемый пост)
Надо сначало их вынести для обработки или можно складывать внутри StrPerem?

Сначала "вынести", то есть разбить строку на части (при помощи тех же Left, Mid и Right). А потом сложить см. тут:
http://forum.vingrad.ru/index.php?showtopi...st&p=104816


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
zenkaman
Дата 4.4.2006, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 31.3.2006

Репутация: нет
Всего: нет



smile Спасибо товарищ cardinal ,выручил smile
PM MAIL   Вверх
zenkaman
Дата 5.4.2006, 10:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 31.3.2006

Репутация: нет
Всего: нет



Код

Private Sub Command1_Click()
Dim StrPerem As String
Dim StrTemp As String
Open "c:\test.txt" For Input As #1
Do While Not (EOF(1))
Input #1, StrTemp
StrPerem = Left(StrTemp, 3)
Text1 = Val(Text1) + Val(StrPerem)
Loop
Close #1
End Sub


Вот прога берущая данные первого столбика в "c:\test.txt и складывающая их. Ответ вдает в TextBox1. smile Tnx again

PM MAIL   Вверх
sergejzr
Дата 5.4.2006, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 11
Всего: 360



Модератор: Название темы должно отражать ее суть!
Это на следующий раз smile


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
zenkaman
  Дата 5.4.2006, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 31.3.2006

Репутация: нет
Всего: нет



Все исправил smile Respect cardinal'у

smile Ответ на задачу:
Создать файл, содержащий сведения об отправлении поездов дальнего следования с вокзала. Каждая запись содержит поля: номер поезда, станция назначения, время отправления, время в пути, наличие билетов.
Написать программу, которая позволяет получить следующую информацию:
- время отправления поездов в город Х во временном интервале от А до В часов;
- наличие билетов на поезд с номером ХХХ.

user posted image

Код


Private Sub Command1_Click()
Dim StrPerem1, StrPerem2 As String
Dim StrTemp As String
Dim n, m As Integer
n = Text2
m = Text3
Text1 = ""
Open "test.txt" For Input As #1
Do While Not (EOF(1))
Input #1, StrTemp
StrPerem2 = Split(StrTemp)(1)
StrPerem1 = Split(StrTemp)(2)
If n <= Val(StrPerem1) And m >= Val(StrPerem1) And Text5 = StrPerem2 Then Text1 = Text1 + StrTemp
Loop
Close #1
End Sub

Private Sub Command2_Click()
Dim StrTemp As String
Dim n, m As Integer
Open "test.txt" For Input As #2
Text6 = 0
n = Val(Text4)
Do While Not (EOF(2))
Input #2, StrTemp
m = Left(StrTemp, 3)
If m = n Then Text6 = Right(StrTemp, 2)
Loop
Close #2
End Sub



Содержимое test.txt. ТХТ нужно поместить в папку вместе с Файл.ЕХЕ
Код

112 City1 10.50 3.00 06
456 City22 16.40 0.45 12
245 City333 12.35 4.10 45
678 City4444 12.00 0.50 34
331 City55555 15.40 3.20 55
958 City666666 12.55 0.35 45
664 City7777777 19.00 2.50 11


Это сообщение отредактировал(а) zenkaman - 5.4.2006, 15:52

Присоединённый файл ( Кол-во скачиваний: 4 )
Присоединённый файл  Ishodnik.zip 1,78 Kb
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0626 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.