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)

Sloth 28.11.2010 22:26

Помогите новичку! Пожалста
 
Требуется написать программу. В программировании я 0. Но хочу научиться.
1)Как сделать ввод чисел, чтобы впоследствии их использовать?
2)Как использовать встроенный в телефон таймер, или как его написать?(Требуется нажать старт, потом подождать, нажать стоп, и чтобы время показывалось в секундах, можно в интегере))
3)Все полученные числа включая время в секундах подставить в энную формулу и посчитать, и полученные данные использовать для еще одной формулы.

Помогите пожалуйста :)

GRAY_WOLF 28.11.2010 23:15

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

Сообщение от Sloth (Сообщение 170225)
Требуется написать программу. В программировании я 0. Но хочу научиться.
1)Как сделать ввод чисел, чтобы впоследствии их использовать?
2)Как использовать встроенный в телефон таймер, или как его написать?(Требуется нажать старт, потом подождать, нажать стоп, и чтобы время показывалось в секундах, можно в интегере))
3)Все полученные числа включая время в секундах подставить в энную формулу и посчитать, и полученные данные использовать для еще одной формулы.

Помогите пожалуйста :)

Уж больно смахивает на отправку СМС на короткий номер через определенное время...

odd 28.11.2010 23:33

Ответ: Помогите новичку! Пожалста
 
Да ладно там, может обычный секундомер. Правда зачем его писать если он и так встроен почти в 95% телефонов?
Хотя, насчет SMS "вирусов" ты прав. Количество программ типа RedBrowser уже насчитывает около 50 разновидностей.

IDOL 1234 29.11.2010 00:30

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

Trazzy 30.11.2010 14:57

Ответ: Помогите новичку! Пожалста
 
булко уже бредит всякими там вирусами (алармами),.. :)
но автору все же не помешало бы написать для каких целей это ему надо,
чтобы успокоить народ! хД

impersonalis 30.11.2010 15:41

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

odd 30.11.2010 16:07

Ответ: Помогите новичку! Пожалста
 
Вот программа которую хотел автор. Дальше уже пусть пляшет на основе её.

PHP код:

Program Timer;
Var 
btnOKcommand;
itimerresinteger;
Begin
    ShowForm
// Включаем режим форм
    
i:=FormAddTextField('Константа''123',  8TF_NUMERIC); // Добавляем поле ввода
    
btnOK:=CreateCommand('ДАЛЬШЕ'CM_OK1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
res:=StringToInteger(FormGetText(i)); // Считываем введенное значение и запоминаем его
    
ClearForm// Очистка формы
    
    
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); // Ждем нажатия на кнопку
    
    
timer:=GetRelativeTimeMs timer// Тут содержится прошедшее время в милиисекундах (1 с = 1000 мс)
    
res:=res timer 1000// Типа какое-то вычисление
    
    
ClearForm;
    
i:=FormAddString('Результат = ' res);
    
btnOK:=CreateCommand('ВЫХОД'CM_EXIT1); // Создаем кнопку
    
AddCommand(btnOK); // добавляем кнопку на форму
    
while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку
    
End


GRAY_WOLF 30.11.2010 18:38

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

Сообщение от 2Fake (Сообщение 170354)
булко уже бредит всякими там вирусами (алармами),.. :)
но автору все же не помешало бы написать для каких целей это ему надо,
чтобы успокоить народ! хД

Так он с момента написания своего единственного поста более и не появлялся...(Последняя активность: 28.11.2010 22:13 )
Вот еще один был такой...

Sloth 01.12.2010 23:50

Ответ: Помогите новичку! Пожалста
 
я здесь ^_^
мне надо написать: Java -программа загруженная в мобильный телефон
по расчету погрешностей счетчика электроэнергии.

odd 02.12.2010 00:10

Ответ: Помогите новичку! Пожалста
 
Смотри исходник чуть выше и переделывай его под свои нужды.

Sloth 05.12.2010 23:12

Ответ: Помогите новичку! Пожалста
 
да, я заметил, буду пытаца ;)

Sloth 06.12.2010 21:21

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

Nuprahtor 06.12.2010 21:32

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

odd 06.12.2010 23:36

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

Сообщение от Sloth (Сообщение 171177)
спасибо тебе дорогой друг. но мне не понятно, что за переменная "i" я в этом почти ничего не смыслю, обьясни пожалуйста

В переменную i записывается идентификатор (номер) элемента формы. Просто на форму можно добавлять одновременно сразу много различных элементов и чтобы их потом различать и считывать информацию из них и используется этот номер.

Sloth 07.12.2010 16:29

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

Сообщение от Nuprahtor (Сообщение 171180)
Ник говорит сам за себя

ну хоть ктото перевел :3
Цитата:

В переменную i записывается идентификатор (номер) элемента формы. Просто на форму можно добавлять одновременно сразу много различных элементов и чтобы их потом различать и считывать информацию из них и используется этот номер.

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

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

cherepets 22.12.2010 21:37

Ответ: Помогите новичку! Пожалста
 
так же как ты сделал первую (все что связанно с command)

Sloth 22.12.2010 21:53

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

cherepets 23.12.2010 00:46

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

while (Cmd EmptyCommand) do Cmd := GetClickedCommand;
if (
Cmd btnOKthen ...
if (
Cmd btnBACKthen ... 

Я обычно делаю примерно так.

Sloth 23.12.2010 14:26

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

cherepets 23.12.2010 18:47

Ответ: Помогите новичку! Пожалста
 
Никакой не пиши.
И вообще этот if убери (который btnOK)
А в другой впихни оставшуюся часть проги.

Sloth 25.12.2010 22:19

Ответ: Помогите новичку! Пожалста
 
при вычислении больших чисел получается 0, почему?

odd 27.12.2010 15:36

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

Сообщение от Sloth (Сообщение 173156)
при вычислении больших чисел получается 0, почему?

Число int может принимать значения только до 4 миллиардов примерно.
Если у вас числа больше, то лучше использовать вещественные числа.


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

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