Показать сообщение отдельно
Старый 10.09.2008, 04:32   #3
anton_obuhov
Оператор ЭВМ
 
Регистрация: 25.10.2007
Сообщений: 30
Написано одно полезное сообщение
(для 2 участников)
Re: Работа нескольких программ в одной

program Geodezia;
var 
Prgeod,Obrgeod,KBYravnenie,Uclon:integer//Название Геодезических задач
     
Oshcibki:integer;
     
textField_id:integer;        //Едит для ввода информации во всех задачах
     
L1,L23,B2pr:integer;                     //Переменные для решения задачи
     
show,okcommand,clicked:command//Здесь будут все команды для приложения 
     
Perema,Peremb,Peremc,Discrim,x1,x2:integer;           //Для кв.Уравнения 
     
Ha,Hb,Dab,I,hab:integer;//Решение задачи для рассчета уклона в процентах
     
Ha1,Hb1,Dab1,I1,hab1:real;
     
Formirovanie_otveta:string;                          //Обработка ответов
     
Perema1,Peremb1,Peremc1,Discrim1:real;
     {&
#1044;оработка всех переменных в будуещем используемых в решении}
begin
ShowMenu
('Выберите задачу',CH_Implicit);
Prgeod := menuAppendString('Прямая геодезическая');
Obrgeod := menuAppendString('Обратная геодезическая');
KBYravnenie := menuAppendString('Квадратное уравнение');
Uclon := menuAppendString('Рассчет уклона');
Oshcibki := menuAppendString('Теория ошибок');
{&
#1044;оработка меню}
// Начало Создания функций выбора в программе по геодезии
show:=createCommand('Выбрать',CM_SCREEN,1);
addcommand(show);
repeat
 delay
(100);
 
Clicked:=getclickedcommand;
until clicked=show;
// Начало программы решения квадратного уравнения 
if menugetselectedindex KBYravnenie then
Begin
ShowForm
;
 
     while 
true do //запускаем бесконечный цикл 
     
begin 
     okCommand 
:= createCommand('OK'CM_OK1);    
     
showForm;    
     
addCommand(okCommand);   
Perema:=formaddtextfield('Введите a','',20,TF_Numeric);
Peremb:=formaddtextField('Введите b','',20,TF_Numeric);
Peremc:=formaddtextField('Введите c','',20,TF_Numeric);
//Ожидание нажатия ок
While(getclickedCommand<>okcommand) do
delay (100);
   
//Создаем дополнительные переменные для результата REAL
Perema1:=StringtoReal(formgettext(Perema),10);
Peremb1:=StringToReal(formgettext(Peremb),10);
Peremc1:=StringToReal(formgettext(Peremc),10);
Discrim1:=Stringtoreal(formgettext(Discrim),10);
   
//Само решение квадатного уравнения,используя переменные типа REAL 
Discrim1:=(Peremb1*Peremb1)-(4*Perema1*Peremc1);
Formirovanie_otveta := 'D ='+Peremb1+'*'+peremb1+'(4 *'+Perema1+' *'+Peremc1+')';
Formirovanie_otveta := 'ответ'+Discrim1+'';
showCanvas
drawtext(Formirovanie_otveta0,0);
repaint;
delay(20000);
if 
Discrim1 <0 then
Drawtext
('Корней в уравнении НЕМА',0,0);
repaint;
delay(20000);
 

{&
#1058;ут будет завершено создание квадратного уравнения}

     
{&#1058;ело программы}
     
end;
     
if 
menugetselectedindex Uclon then
begin
ShowForm
;
     while 
true do //запускаем бесконечный цикл 
     
begin 
     okCommand 
:= createCommand('OK'CM_OK1);    
     
showForm;    
     
addCommand(okCommand); 
Ha:=formaddtextField('Введите HA','',20,TF_Numeric);
Hb:=formaddtextField('Введите HB','',20,TF_Numeric);
Dab:=formaddtextField('Введите Dab','',10,TF_Numeric);
While(
getclickedCommand<>okcommand) do
delay (100);
Ha1:=StringToREal(formgettext(Ha),10);
Hb1:=StringToReal(formgettext(Hb),10);
Dab1:=StringToReal(formgettext(Dab),10);
I1:=StringTOReal(formgettext(I),10);
hab1:=StringToReal(formgettext(hab),10);
hab1:=Hb-Ha;
I1:=(hab1/Dab1)*100;
end;
end;
end;
end

То что выделено красным даже не появляется помогите
(Offline)
 
Ответить с цитированием