Ребята, подскажите где ошибка в этом элементарном коде

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Чудогосподня
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 03.02.2010 (Ср) 10:31

Ребята, подскажите где ошибка в этом элементарном коде

Сообщение Чудогосподня » 03.02.2010 (Ср) 10:58

Суть программки- калькулятор, расчитивающий математические функции, в частности Sin X
В text1 вбиваем градусы, text2 минуты, text3 секунды. Получаем результат в text4.
И так в form1 вводим переменные

FORM1
const pi = 3.14
dim grad as single
dim min as single
dim sec as single
dim angle as single

в commandbutton1 Sin вбиваем
1 grad = text1
2 min = text2
3 sec = text3
4 angle = (grad+min/60*100 + sec/60*100)*Pi/180
5 Text4 = sin(angle)

При исполнении такого кода прога должна высчитывать синус из угла.
Но не хочет. Если вбить градусы, минуты, секунды, то при любом результате ответ будет 0.
Если вбить только градусы, а остальные поля оставить пустыми - прога выдаст ошибку в 4й строке. Я так подозреваю, из-за того, что алгоритмом четко прописана формула по расчету угла. Но, даже если эти поля забивать- все равно ничего не выходит.

Где косяк ?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16489
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Ребята, подскажите где ошибка в этом элементарном коде

Сообщение Хакер » 03.02.2010 (Ср) 11:01

Увы и ах: косяк в голове и подходе к миру.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Александр Дмитриев
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 296
Зарегистрирован: 05.01.2005 (Ср) 3:39
Откуда: Санкт-Петербург    Куда: /dev/null

Re: Ребята, подскажите где ошибка в этом элементарном коде

Сообщение Александр Дмитриев » 03.02.2010 (Ср) 11:50

У меня всё работает. Единственное - это умножать на 100 в 4 строчке не нужно (в обоих случаях). И ошибка при пустых полях выводится не в 4, а во 2 строке.
Ты наверно что-то не туда "вбиваешь".

Чудогосподня
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 03.02.2010 (Ср) 10:31

Re: Ребята, подскажите где ошибка в этом элементарном коде

Сообщение Чудогосподня » 03.02.2010 (Ср) 12:53

Хакер, ну хоть предыдущие 9000 ответов были более полезными ? =)) НЛ.
Александр, спасибо, попробую. Осталось выяснить как мне заставить программу не обращать внимание на пустые поля.

Чудогосподня
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 03.02.2010 (Ср) 10:31

Re: Ребята, подскажите где ошибка в этом элементарном коде

Сообщение Чудогосподня » 03.02.2010 (Ср) 12:56

Почему на аватаре симпатичная девушка ? О_о

Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Re: Ребята, подскажите где ошибка в этом элементарном коде

Сообщение Twister » 04.02.2010 (Чт) 12:32

dim grad as single

grad = text1

А на Хакера вы зря наехали. Покажите мне такой учебник/статью, где говорится, что так надо писать? :shock:
Подсказка: зачем у текстовых полей сделали свойство Text? ;)
А я все практикую лечение травами...

alex77755
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 97
Зарегистрирован: 24.03.2009 (Вт) 11:40

Re: Ребята, подскажите где ошибка в этом элементарном коде

Сообщение alex77755 » 04.02.2010 (Чт) 16:10

min/60*100 + sec/60*100)

Здесь однозначно - получается min = sec
хотя бы sec/3600*100 - так мне кааажется.
Ну и "*100" что-то мне подсказывает не нужно ни где.

FFOX
Новичок
Новичок
 
Сообщения: 44
Зарегистрирован: 04.02.2010 (Чт) 12:42

Re: Ребята, подскажите где ошибка в этом элементарном коде

Сообщение FFOX » 08.02.2010 (Пн) 16:25

Twister писал(а):А на Хакера вы зря наехали. Покажите мне такой учебник/статью, где говорится, что так надо писать? :shock:
Подсказка: зачем у текстовых полей сделали свойство Text? ;)

И еще, как-то проверять и приводить значения в текстбоксах к числовым тоже не помешает
:)


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot и гости: 16

    TopList