Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.06.20;
Скачать: [xml.tar.bz2];

Вниз

Как сделать компьютерный экзамен на Delphi 6.0   Найти похожие ветки 

 
Игорь   (2004-06-03 20:10) [0]

Я сделал программу на Delphi 6.0. Для сдачи экзамена на компьютере. Но встала проблема. При вводе результата в Edit возникает ошибка(так как результаты дробные, например: 2,24). Как мне спавиться с этой бедой?


 
Vlad ©   (2004-06-03 20:28) [1]


> Игорь   (03.06.04 20:10)  


> возникает ошибка

Какая ? Небось к Integer пытаешься преобразовать ?


 
Подкрадуха ©   (2004-06-03 20:54) [2]

Глупый совет, но своевременный...
Юзай типа Variant.
Людей мало, время овета не критично, преобразование свободное (в рамках доступного, ессно).


 
TUser ©   (2004-06-03 21:05) [3]


> Я сделал программу на Delphi 6.0. Для сдачи экзамена на
> компьютере. Но встала проблема. При вводе результата в Edit
> возникает ошибка(так как результаты дробные, например: 2,24).
> Как мне спавиться с этой бедой?

Это один из самых "понятных" вопросов, которые я читал. Пржде всего - пользователь сдает экзамен или прогу ты написал, чтобы экзамен сдать? Как в Edit может вводиться результат - в моих прогах, например, туда вводятся исходные данные. Если уж ты решил результат выводить через Edit1.Text:="...", то какая нафиг разница будет это "2,24", "1024" или "полная_карацупа". Или может у тебя есть переменная (double/single), а ты хочешь ее значение в эдит написать. Скажи, что надо - преобразовать float value to the string или округлить их до целого? Или еще чего-то? Или я после пива мозгой не ворочаю?


 
Vlad ©   (2004-06-03 21:08) [4]

Еще раз попробовал включить свой телепатический модуль...
Возможно товарищ и пытаеся как раз преобразовать строку в Float, да только DecimalSeparator не тот установлен, тут и будет ошибка.
Хотя что гадать...


 
YurikGL ©   (2004-06-03 21:19) [5]


> Как в Edit может вводиться результат - в моих прогах, например,
> туда вводятся исходные данные.


В StaticText написано задание "Решите задачу. В озеро упала ветка. Пробегавший мимо олень заметил, что.... Полученный результат введите в Edit чуть ниже"


 
Подкрадуха ©   (2004-06-03 21:56) [6]

Вот не знаю...
Учился я давно в ТУСУР (Томский Государственный Универ Систем Управления и Радиоэлектроники)...
Так там наверное моя курсовая (программа для зачета по С++) наверное еще сохранилась. Хотя писал эту программу на делфи.
Я просто файнридером осканил вопросы и забил ответы на радиобатоны. Главное, побольше вариантов.
А по поводу преобразования... Что-бы не заморачиваться чего там выводить в Edit1.Text, используй это:
var
 v: Variant;
begin
 v := InputData();
 Edit1.Text := v;
end;

...А лучше, забей варианты ответов, чтобы не писать алгоритм проверки ответа, что сложнее...


 
nikkie ©   (2004-06-03 22:21) [7]

...А лучше, забей варианты ответов, чтобы не писать алгоритм проверки ответа, что сложнее...
LOL :))
а еще лучше забить на эту программу. бо сложная она очень :))


 
Подкрадуха ©   (2004-06-03 22:57) [8]

[7]
не издевайся, жестоко так =)


 
lyeh ©   (2004-06-04 00:31) [9]

Если данные дробные, то из TEdit получай их в переменную типа Float функцией StrToFloat:

var tmp: float;
tmp:=strtofloat(edit1.text);

а если наоборот, то и название функции наоборот :)
edit1.text:=floattostr(tmp);

Только там еще нужно указывать формат вывода числа в строку, читай о нем в Help - F1 нажми над floattostr :)


 
KilkennyCat ©   (2004-06-04 01:14) [10]

А можно про оленя, озеро и ветку продолжить? Заинтересовало, как там 2,24 получается...


 
lyeh ©   (2004-06-04 01:51) [11]

А DecimalSeparator вроде бы не причем, если региональные настройки Windows русские, то запятая. Поправлюсь: в сообщении [9] конечно же, надо не var tmp: float;, а var tmp: single (или double);


 
Palladin ©   (2004-06-04 02:25) [12]


> Я сделал программу на Delphi 6.0.

вот именно, сделал... это тебе не Lego... прежде чем тесты для других писать неплохо бы самому подучиться...


 
lyeh ©   (2004-06-04 02:28) [13]


> вот именно, сделал... это тебе не Lego... прежде чем тесты
> для других писать неплохо бы самому подучиться...

Верно!


 
Immortal_Death ©   (2004-06-04 05:11) [14]

Подкрадуха ©
вообще-то TVariant медленный, и если нет острой необходимости...


 
Immortal_Death ©   (2004-06-04 05:11) [15]

Подкрадуха ©
вообще-то TVariant медленный, и если нет острой необходимости...


 
Immortal_Death ©   (2004-06-04 06:37) [16]

дурной инстинкт T полставлять :)


 
KSergey ©   (2004-06-04 08:59) [17]

Эта, а код проблемный глянуть можно? У меня никогда при вводе в Edit проблем не возникало... Да хоть и 2,24 - легко! Эдиту всяко по барабану... (типа я не понимаю в чем проблема; впрочем телепатировали уже многие, но, похоже, не очень успешно ;)


 
Gennadiy   (2004-06-04 12:25) [18]

Надо делать что-то типа этого
var
b:Currency //можно использовать финансовую переменную
begin
b:=StrToFloat(Edit1.Text)
end;



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.06.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 1.631 c
14-1086167010
arbin
2004-06-02 13:03
2004.06.20
Как вам это


1-1086392866
rtf
2004-06-05 03:47
2004.06.20
Прозрачный Combobox


1-1086448251
Kostya
2004-06-05 19:10
2004.06.20
Progress Bar


14-1086286082
Константинов
2004-06-03 22:08
2004.06.20
Word и немецкий язык


1-1086343013
RoadStar
2004-06-04 13:56
2004.06.20
проTStringGrid





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский