Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: ПРИКОЛЫ С SINGL'АМИ Добавлено: 30.11.05 18:17  

Автор вопроса:  RomK aka Куций
Народ, помогите с такой проблемой:
есть массив lambda (as single), формат такой: ####.#
Юзер вводит по такому же формату и типу данных число [users].
Задачей программы является найти БЛИЖАЙШЕЕ значение из массива с приближением 2 в обе стороны с шагом 1 [если проще, то -1,-2,+1,+2]. Ну, а если юзер ввёл значение совпавшее с значением в масиве по целой части, то поздравить его мессаджем. :-)
Пробовал такое:
IF lambda(i) + 1.1 >= users AND lambda(i) + 2.0 <= users THEN PRINT "+2"
ELSEIF lambda(i) + 0.1 >= users AND lambda(i) + 1.0 <= users THEN PRINT "+1"
ELSEIF lambda(i) - 1.0 >= users AND lambda(i) - 0.1 <= users THEN PRINT "-1"
ELSEIF lambda(i) - 2.0 >= users AND lambda(i) - 1.1 <= users THEN PRINT "-2"
END IF

Не работает... Просто цирк... :-)
Может у меня где-то ошибка?
Только не отвечайте: "В ДНК" :-)

Язык программирования: QBasic
Компилятор: Microsoft QBasic v4.5

Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #1 Добавлено: 30.11.05 18:31
Только не отвечайте: "В ДНК" :-)
У тебя, судя по синтаксическому построению текста, профилю, и т.п., ЭТО в РНК ;))

Язык программирования: QBasic
Мда... постиснялся бы такое тут говорить ;)

А вобще, твой текст, я тут посмотрел... вроде бы должен работать :=)

Ответить

Номер ответа: 2
Автор ответа:
 RomK aka Куций



Вопросов: 6
Ответов: 13
 Профиль | | #2 Добавлено: 30.11.05 18:41
QBasic - потому что мне нужно запускать ЭТО не на Athlon'е 4,6GHz... :-)
Можно и на PowerBasic'е, но как-то QB ближе к телу :-)

Ответить

Номер ответа: 3
Автор ответа:
 GreatLion



Вопросов: 2
Ответов: 27
 Профиль | | #3 Добавлено: 01.12.05 08:42
Для начала попробуй в IF все логические выражения обвести (), иногда у меня из-за этого были проблемы. Т.е.
IF (lambda(i) + 1.1 >= users) AND (lambda(i) + 2.0 <= users) THEN PRINT "+2"
А потом и все сложения:
IF ((lambda(i) + 1.1) >= users) AND ((lambda(i) + 2.0) <= users) THEN PRINT "+2"
И еще, плиз, не убивай меня этим ElseIf. Как по мне, то уже лучше еще раз написать IF, чем elseif.
Далее, если у тя слабый комп, ну напиши ты на Си, на Паскаль, ну не мучайся!

Ответить

Номер ответа: 4
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #4 Добавлено: 01.12.05 17:01
QBasic - потому что мне нужно запускать ЭТО не на Athlon'е 4,6GHz
Не первом пне VB спокойно идет! Не надо мне тут ;)))))

Ответить

Номер ответа: 5
Автор ответа:
 RomK aka Куций



Вопросов: 6
Ответов: 13
 Профиль | | #5 Добавлено: 01.12.05 18:35
Я попробовал преобразовать в integer, хоть так работает.
Т.е. код немного изменился:
IF CINT(users) + 1 = CINT(lambda(i)) THEN
PRINT " [+1]"
ESEIF CINT(users) + 2 = CINT(lambda(i)) THEN
PRINT " [+2]"
ELSEIF CINT(users) - 1 = CINT(lambda(i)) THEN
PRINT " [-1]"
ELSEIF CINT(users) - 2 = CINT(lambda(i)) THEN
PRINT " [-2]"
END IF


Так я немного послал (по url) точность :-),
зато хоть есть какие-то намёки на работоспособноть.

А Паскаль я вообще за язык не считаю. На нём только можно ламеров
программить учить, но не больше. И то, после обучения на данном языке, нормальным программистом стать сложно.

Да мне ... на первый пень. На той машине, где ЭТО будет запускатся голый ДОССССССССС... Какой ещё к чёрту VB? VB можно и из Windows 3.11 запустить на "четвёрке" (имеется ввиду не Pentium 4).

Ответить

Номер ответа: 6
Автор ответа:
 GreatLion



Вопросов: 2
Ответов: 27
 Профиль | | #6 Добавлено: 02.12.05 00:02
Насчет Паскаля согласен на всю катушку! ЗА! Только все же его надо знать, хотя бы основы, т.к. иногда надо где-то на другой машине(не своей, а совсем чужой) написать прогу. И тогда, даже Си отходит, т.к. в Си должен быть отлаженый компилятор. Приходишь, садишься, пишешь, запускаешь - и обнаруживаешь, что какой-то добрый чел. урезал тебе библы. Вот поэтому, очень много хороших програмистов должны учить это ПАСКАЛЬ!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам