Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

22.09.2007, 21:10
|
|
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме: 1892597
Репутация:
836
|
|
3 дня на калькулятор
не думал что написание калькулятора займет 3 дня... ну если принть во внимание что в день уделял часа 2, то мб норм.
кстати... C# 
[IMG]
http://w1z.netsec.ru/sources/c_sharp/screen.jpg
[/IMG]
кто сможет исправить глюк буду благодарен.
суть:
не перезватывается клавиша BackSpace, т.е. брейк срабатывает... но нет ее функциональности (не удаляется символ слева  )
PHP код:
private void CheckDown(KeyEventArgs e)
{
if (e.KeyCode == Keys.Oemcomma)
{
if (textBox1.Focused)
{
if (textBox1.Text.IndexOf(",") == -1)
{
textBox1.Text += ",";
}
}
else
{
if (textBox2.Text.IndexOf(",") == -1)
{
textBox2.Text += ",";
}
}
}
ValidKey = false;
if (e.KeyCode < Keys.D0 || e.KeyCode > Keys.D9)
{
ValidKey = true;
}
if (e.KeyCode == Keys.Back || e.KeyCode == Keys.Delete)
{
ValidKey = true;
}
}
вот событие
PHP код:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
/*if (e.KeyChar == (char)Keys.Back)
{
e.Handled = true;
}*/
if (ValidKey)
{
e.Handled = true;
}
}
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
CheckDown(e);
}
исходник и бинарник
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...
Последний раз редактировалось W!z@rD; 22.09.2007 в 21:20..
|
|
|

23.09.2007, 07:18
|
|
Новичок
Регистрация: 26.08.2007
Сообщений: 22
Провел на форуме: 210350
Репутация:
10
|
|
Добавь туду степени и корни квадратные (:
|
|
|

23.09.2007, 08:51
|
|
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме: 5339610
Репутация:
4360
|
|
А еще синусы, косинусы (желательно вручную разложением в ряд Тейлора), экспоненту, логарифмы, приближенное вычисление определенных интегралов, причем разными методами, так же не отказался бы, чтобы он автоматически решал криволинейные интегралы 1,2 рода, поверхностные, двойные, тройные, m-кратные. Еще было бы неплохо добавить дифференциальное исчисление скалярных и векторных полей - градиент, ротор, дивергенция.
Тогда я возьму твою прогу с собой на зачёт 
|
|
|

23.09.2007, 08:56
|
|
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме: 4172659
Репутация:
646
|
|
Кстати, ни в одном из калькуляторов не встречал перевод из Dec в Bin дробных чисел. Там алгоритм то простой...
|
|
|

23.09.2007, 10:02
|
|
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме: 1892597
Репутация:
836
|
|
эмм...
не все сразу) вы что... я только начинаю изучать, а вы меня уже =( бррр...
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...
|
|
|

23.09.2007, 10:51
|
|
Участник форума
Регистрация: 05.08.2007
Сообщений: 236
Провел на форуме: 4625160
Репутация:
457
|
|
Как-то давно тоже тренировался и сделал калькулятор,тока на Делфи,если нужно могу поискать сорсы )))
http://lsass.us/fl/calc.jpg
ТС продолжай добавлять функции 
Последний раз редактировалось lsass.exe; 29.09.2007 в 16:07..
|
|
|

23.09.2007, 10:53
|
|
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме: 5339610
Репутация:
4360
|
|
Сообщение от Joker-jar
Кстати, ни в одном из калькуляторов не встречал перевод из Dec в Bin дробных чисел. Там алгоритм то простой...
Ну вообщем да.
Стандартом IEEE 754 описываются форматы представления вещественных чисел с плавающей запятой, известные в языке Си как float и double.
float занимает 32 бита, самый старший (31-й) бит - знаковый, дальше 8 бит экспонента (в смещенном виде по базе 127) и 23 бита мантиссы.
Число с плавающей запятой равно s*m*2^e, где s - знаковый бит, m - мантисса, e - экспонента.
В числе float экспонента хранится сложенной со 127 (так называемый смещенный вид). Чтобы получить реальную степень двойки, нужно вычесть 127 из значения экспоненты в числе.
Мантисса с логической точки зрения представляет собой число на промежутке [1;2), которое умножается на 2 в степени с показателем, равному экспоненте.
Представляется оно в виде числа с фиксированной запятой - один бит на целую часть и 23 бита на дробную. Поскольку целая часть всегда =1 в этом промежутке, то целая часть мантиссы в числе не хранится, все 23 бита занимает ее дробная часть.
Дробная часть представляет собой биты с отрицательными степенями двойки, например
10000000000000000000000 это 0.5, поскольку еденица в старшем бите представляет собой 2 ^ -1 = 1/2 = 0.5
01000000000000000000000 это 0.25, поскольку еденица в 21м разряде представляет собой 2 ^ -2 = 1/4 = 0.25
В этом нужно добавить еденицу (1.0) и получится значение мантиссы.
Например, число 0 10000000 10000000000000000000000:
знак = 0 (плюс)
экспонента = 10000000b - 127 = 128 - 127 = 1
мантисса:
1000000000000000000000 это 0.5
Соответственно мантисса равна 0.5 + 1.0 = 1.5
Число равно +1.5 *2^1 = 3.0
Формат double аналогичен лишь с той разницей, что там 1 бит знаковый, 11 бит экспонента и 52 бита мантисса (суммарно 8 байт)
|
|
|

27.09.2007, 16:06
|
|
Постоянный
Регистрация: 05.01.2007
Сообщений: 508
Провел на форуме: 2360904
Репутация:
1393
|
|
Сообщение от Joker-jar
Кстати, ни в одном из калькуляторов не встречал перевод из Dec в Bin дробных чисел. Там алгоритм то простой...
В calc.exe есть )
|
|
|

27.09.2007, 16:23
|
|
[Лишённый самовыражени
Регистрация: 16.01.2005
Сообщений: 1,787
Провел на форуме: 9751379
Репутация:
3812
|
|
Сообщение от _Great_
А еще синусы, косинусы (желательно вручную разложением в ряд Тейлора)....
Ну это ж ужас на самом деле)
У нас не один препод не смог объяснить зачем нам это надо ^^
__________________
|
|
|

27.09.2007, 19:59
|
|
Banned
Регистрация: 20.06.2005
Сообщений: 880
Провел на форуме: 4610226
Репутация:
1332
|
|
>>У нас не один препод не смог объяснить зачем нам это надо ^^
как так? хотя для получения конкретного значения синуса и косинуса в стандартных реализациях применяются более быстрее методы.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|