forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Основной форум (http://forum.boolean.name/forumdisplay.php?f=49)
-   -   Помогите новичку! Пожалста (http://forum.boolean.name/showthread.php?t=13797)

GRAY_WOLF 07.12.2010 17:06

Ответ: Помогите новичку! Пожалста
 
Цитата:

Сообщение от Sloth (Сообщение 171257)
ну хоть ктото перевел :3


ага - ЛЕНЬ

Sloth 07.12.2010 19:54

Ответ: Помогите новичку! Пожалста
 
Скомпилил, проверил, радостный.
Но как сделать повтор этих действий. Типа в конце алгоритма кнопочка "Заново"? И возможно ли сделать, автоматом последнее введенное значение?

Sloth 07.12.2010 23:02

Ответ: Помогите новичку! Пожалста
 
при вычислениях результат 0, не при любых значениях. Если реальные значение брать то 0.
PHP код:

timer:=GetRelativeTimeMs timer
    
res:=(3600*N)/(A*(timer*1000)); 
    
  
i:=FormAddString('Нажмите ДАЛЕЕ для вычисления погрешности');
    
btnOK:=CreateCommand('Далее'CM_OK1); 
    
AddCommand(btnOK);
    while(
GetClickedCommand <> btnOK) do Delay(20); 
  
S:=(res-P)/P;
    
ClearForm

формулу я правильно написал, может он меня просто не понимает?

odd 08.12.2010 02:23

Ответ: Помогите новичку! Пожалста
 
Ничего не понятно из приведенного куска кода. Напиши код полностью, не стесняйся. Никому кроме тебя он тут не нужен.

Sloth 08.12.2010 16:48

Ответ: Помогите новичку! Пожалста
 
0 видимо получаеться из за того что числа надо в real переделать. Как это сделать?
вот код, со всеми твоими подписями :)
PHP код:

Program Timer;
Var 
btnOKcommand;
ANresSPtimeriinteger;
Begin
    ShowForm
// Включаем режим форм
    
i:=FormAddTextField('Введите передаточное число счетчика''',  8TF_NUMERIC); // Добавляем поле ввода
    
btnOK:=CreateCommand('ДАЛЬШЕ'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
A:=StringToInteger(FormGetText(A)); // Считываем введенное значение и запоминаем его
    
ClearForm// Очистка формы
    
    
ShowForm// Включаем режим форм
    
i:=FormAddTextField('Мощность нагрузки Рн Ватт''',  8TF_NUMERIC); // Добавляем поле ввода
    
btnOK:=CreateCommand('ДАЛЬШЕ'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
P:=StringToInteger(FormGetText(P)); // Считываем введенное значение и запоминаем его
    
ClearForm// Очистка формы
    
    
ShowForm// Включаем режим форм
    
i:=FormAddTextField('Количество импульсов''',  8TF_NUMERIC); // Добавляем поле ввода
    
btnOK:=CreateCommand('ДАЛЬШЕ'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
N:=StringToInteger(FormGetText(N)); // Считываем введенное значение и запоминаем его
    
ClearForm// Очистка формы
    //dsa
    
    
i:=FormAddString('Нажмите ПУСК для старта таймера.');
    
btnOK:=CreateCommand('ПУСК'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
timer:=GetRelativeTimeMs// Запоминаем текущее время
    
ClearForm// Очистка формы
    
    
i:=FormAddString('Нажмите СТОП для остановки таймера.');
    
btnOK:=CreateCommand('СТОП'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
        
ClearForm// Очистка формы
        
       
    
timer:=GetRelativeTimeMs timer// Тут содержится прошедшее время в милиисекундах (1 с = 1000 мс)
    
res:=(3600*N)/(A*timer); // Типа какое-то вычисление
    
  
i:=FormAddString('Нажмите ДАЛЕЕ для вычисления погрешности');
    
btnOK:=CreateCommand('Далее'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
  
S:=100*(res-P)/P;
    
ClearForm// Очистка формы


    
    
    
ClearForm;
    
i:=FormAddString('Результат = ' res);
    
btnOK:=CreateCommand('ВЫХОД'CM_EXIT1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
End


GRAY_WOLF 08.12.2010 22:51

Ответ: Помогите новичку! Пожалста
 
Цитата:

Сообщение от Sloth (Сообщение 171367)
0 видимо получаеться из за того что числа надо в real переделать. Как это сделать?
вот код, со всеми твоими подписями :)
PHP код:

Program Timer;
Var 
btnOKcommand;
ANresSPtimeriinteger;
Begin
    ShowForm
// Включаем режим форм
    
i:=FormAddTextField('Введите передаточное число счетчика''',  8TF_NUMERIC); // Добавляем поле ввода
    
btnOK:=CreateCommand('ДАЛЬШЕ'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
A:=StringToInteger(FormGetText(A)); // Считываем введенное значение и запоминаем его
    
ClearForm// Очистка формы
    
    
ShowForm// Включаем режим форм
    
i:=FormAddTextField('Мощность нагрузки Рн Ватт''',  8TF_NUMERIC); // Добавляем поле ввода
    
btnOK:=CreateCommand('ДАЛЬШЕ'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
P:=StringToInteger(FormGetText(P)); // Считываем введенное значение и запоминаем его
    
ClearForm// Очистка формы
    
    
ShowForm// Включаем режим форм
    
i:=FormAddTextField('Количество импульсов''',  8TF_NUMERIC); // Добавляем поле ввода
    
btnOK:=CreateCommand('ДАЛЬШЕ'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
N:=StringToInteger(FormGetText(N)); // Считываем введенное значение и запоминаем его
    
ClearForm// Очистка формы
    //dsa
    
    
i:=FormAddString('Нажмите ПУСК для старта таймера.');
    
btnOK:=CreateCommand('ПУСК'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
timer:=GetRelativeTimeMs// Запоминаем текущее время
    
ClearForm// Очистка формы
    
    
i:=FormAddString('Нажмите СТОП для остановки таймера.');
    
btnOK:=CreateCommand('СТОП'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
        
ClearForm// Очистка формы
        
       
    
timer:=GetRelativeTimeMs timer// Тут содержится прошедшее время в милиисекундах (1 с = 1000 мс)
    
res:=(3600*N)/(A*timer); // Типа какое-то вычисление
    
  
i:=FormAddString('Нажмите ДАЛЕЕ для вычисления погрешности');
    
btnOK:=CreateCommand('Далее'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
  
S:=100*(res-P)/P;
    
ClearForm// Очистка формы


    
    
    
ClearForm;
    
i:=FormAddString('Результат = ' res);
    
btnOK:=CreateCommand('ВЫХОД'CM_EXIT1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
End


var
a:real;
c: string;

function StringToReal(str:string; base:integer):real;
a:=StringToReal(c,10);

Sloth 12.12.2010 21:05

Ответ: Помогите новичку! Пожалста
 
как сделать переход на нужную строку?
типа: if A:=0 then перейти туда то туда то

odd 12.12.2010 23:47

Ответ: Помогите новичку! Пожалста
 
Цитата:

Сообщение от Sloth (Сообщение 171735)
как сделать переход на нужную строку?
типа: if A:=0 then перейти туда то туда то

Увы, Паскаль это тебе не Бейсик. Переходов на строку тут нет.

Sloth 13.12.2010 19:20

Ответ: Помогите новичку! Пожалста
 
тоесть возврат сделать нельзя?

cherepets 14.12.2010 12:36

Ответ: Помогите новичку! Пожалста
 
Нет. Делай циклы.

Sloth 14.12.2010 19:43

Ответ: Помогите новичку! Пожалста
 
поясните

FighteR 14.12.2010 21:14

Ответ: Помогите новичку! Пожалста
 
Цитата:

Сообщение от Sloth (Сообщение 171952)
поясните

открой справку и читай о циклах благо их только 3 типа так что не тяжело будет их понять

Sloth 21.12.2010 19:09

Ответ: Помогите новичку! Пожалста
 
как сделать повтор на правую софт клавишу? тоесть повтор с самого начала

cherepets 21.12.2010 19:18

Ответ: Помогите новичку! Пожалста
 
В самом начале repeat, в самом конце - until false.

Sloth 22.12.2010 14:51

Ответ: Помогите новичку! Пожалста
 
помогите пожалуйста
PHP код:

Program Schetchik;
Var 
btnOKcommand;
ANPiinteger;
resStimert,Breal;
Begin  
ShowForm
// Включаем режим форм
    
repeat 
    i
:=FormAddTextField('Введите передаточное число счетчика''',  8TF_NUMERIC); // Добавляем поле ввода
    
btnOK:=CreateCommand('ДАЛЬШЕ'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
A:=StringToInteger(FormGetText(A)); // Считываем введенное значение и запоминаем его
        
ClearForm// Очистка формы
      
until(A>0);
    
    
repeat            
    ShowForm
// Включаем режим форм
    
i:=FormAddTextField('Мощность нагрузки Рн Ватт''',  8TF_NUMERIC); // Добавляем поле ввода
    
btnOK:=CreateCommand('ДАЛЬШЕ'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
P:=StringToInteger(FormGetText(P)); // Считываем введенное значение и запоминаем его
    
ClearForm// Очистка формы
     
until(P>0);
     
repeat   
    ShowForm
// Включаем режим форм
    
i:=FormAddTextField('Количество импульсов''',  8TF_NUMERIC); // Добавляем поле ввода
    
btnOK:=CreateCommand('ДАЛЬШЕ'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
N:=StringToInteger(FormGetText(N)); // Считываем введенное значение и запоминаем его
    
ClearForm// Очистка формы
     
until(N>0);
    
    
i:=FormAddString('Нажмите ПУСК для старта таймера.');
    
btnOK:=CreateCommand('ПУСК'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
timer:=GetRelativeTimeMs// Запоминаем текущее время
    
ClearForm// Очистка формы
    
    
i:=FormAddString('Нажмите СТОП для остановки таймера.');
    
btnOK:=CreateCommand('СТОП'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
        
ClearForm// Очистка формы
        
       
    
timer:=GetRelativeTimeMs timer// Тут содержится прошедшее время в милиисекундах (1 с = 1000 мс)
   
t:=timer/1000;
   
B:=3600/A;
res:=(B*1000*N)/t// Типа какое-то вычисление
  
S:=((res-P)/P)*100;
    
ClearForm// Очистка формы
      
i:=FormAddString('t,сек =' t);
  
i:=FormAddString('Pизм = ' res);    
i:=FormAddString('Погрешность,% =' S);
    
btnOK:=CreateCommand('ЗАНОГО'CM_BACK1);
     
AddCommand(btnOK);
    
btnOK:=CreateCommand('ВЫХОД'CM_EXIT1);// Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
clearform;    
End

ну не понимаю я :(


Часовой пояс GMT +4, время: 07:35.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot