|
Основной форум Сюда все проблемы связанные с программированием. |
07.12.2010, 17:06
|
#16
|
Разработчик
Регистрация: 16.08.2008
Адрес: Нижегородская провинция
Сообщений: 389
Написано 48 полезных сообщений (для 93 пользователей)
|
Ответ: Помогите новичку! Пожалста
Сообщение от Sloth
ну хоть ктото перевел :3
|
ага - ЛЕНЬ
__________________
- Это мы накодили WINDOWS,
- Это мы надкусили APPLE,
- Нам играют живые The Beatles
- И нестареющий Вова Высоцкий...
|
(Offline)
|
|
07.12.2010, 19:54
|
#17
|
Оператор ЭВМ
Регистрация: 28.11.2010
Сообщений: 32
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Помогите новичку! Пожалста
Скомпилил, проверил, радостный.
Но как сделать повтор этих действий. Типа в конце алгоритма кнопочка "Заново"? И возможно ли сделать, автоматом последнее введенное значение?
|
(Offline)
|
|
07.12.2010, 23:02
|
#18
|
Оператор ЭВМ
Регистрация: 28.11.2010
Сообщений: 32
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Помогите новичку! Пожалста
при вычислениях результат 0, не при любых значениях. Если реальные значение брать то 0.
timer:=GetRelativeTimeMs - timer; res:=(3600*N)/(A*(timer*1000)); i:=FormAddString('Нажмите ДАЛЕЕ для вычисления погрешности'); btnOK:=CreateCommand('Далее', CM_OK, 1); AddCommand(btnOK); while(GetClickedCommand <> btnOK) do Delay(20); S:=(res-P)/P; ClearForm;
формулу я правильно написал, может он меня просто не понимает?
|
(Offline)
|
|
08.12.2010, 02:23
|
#19
|
Мастер
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений (для 713 пользователей)
|
Ответ: Помогите новичку! Пожалста
Ничего не понятно из приведенного куска кода. Напиши код полностью, не стесняйся. Никому кроме тебя он тут не нужен.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
08.12.2010, 16:48
|
#20
|
Оператор ЭВМ
Регистрация: 28.11.2010
Сообщений: 32
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Помогите новичку! Пожалста
0 видимо получаеться из за того что числа надо в real переделать. Как это сделать?
вот код, со всеми твоими подписями
Program Timer; Var btnOK: command; A, N, res, S, P, timer, i: integer; Begin ShowForm; // Включаем режим форм i:=FormAddTextField('Введите передаточное число счетчика', '', 8, TF_NUMERIC); // Добавляем поле ввода btnOK:=CreateCommand('ДАЛЬШЕ', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку A:=StringToInteger(FormGetText(A)); // Считываем введенное значение и запоминаем его ClearForm; // Очистка формы ShowForm; // Включаем режим форм i:=FormAddTextField('Мощность нагрузки Рн Ватт', '', 8, TF_NUMERIC); // Добавляем поле ввода btnOK:=CreateCommand('ДАЛЬШЕ', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку P:=StringToInteger(FormGetText(P)); // Считываем введенное значение и запоминаем его ClearForm; // Очистка формы ShowForm; // Включаем режим форм i:=FormAddTextField('Количество импульсов', '', 8, TF_NUMERIC); // Добавляем поле ввода btnOK:=CreateCommand('ДАЛЬШЕ', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку N:=StringToInteger(FormGetText(N)); // Считываем введенное значение и запоминаем его ClearForm; // Очистка формы //dsa i:=FormAddString('Нажмите ПУСК для старта таймера.'); btnOK:=CreateCommand('ПУСК', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку timer:=GetRelativeTimeMs; // Запоминаем текущее время ClearForm; // Очистка формы i:=FormAddString('Нажмите СТОП для остановки таймера.'); btnOK:=CreateCommand('СТОП', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку ClearForm; // Очистка формы timer:=GetRelativeTimeMs - timer; // Тут содержится прошедшее время в милиисекундах (1 с = 1000 мс) res:=(3600*N)/(A*timer); // Типа какое-то вычисление i:=FormAddString('Нажмите ДАЛЕЕ для вычисления погрешности'); btnOK:=CreateCommand('Далее', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку S:=100*(res-P)/P; ClearForm; // Очистка формы ClearForm; i:=FormAddString('Результат = ' + res); btnOK:=CreateCommand('ВЫХОД', CM_EXIT, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку End.
|
(Offline)
|
|
08.12.2010, 22:51
|
#21
|
Разработчик
Регистрация: 16.08.2008
Адрес: Нижегородская провинция
Сообщений: 389
Написано 48 полезных сообщений (для 93 пользователей)
|
Ответ: Помогите новичку! Пожалста
Сообщение от Sloth
0 видимо получаеться из за того что числа надо в real переделать. Как это сделать?
вот код, со всеми твоими подписями
Program Timer; Var btnOK: command; A, N, res, S, P, timer, i: integer; Begin ShowForm; // Включаем режим форм i:=FormAddTextField('Введите передаточное число счетчика', '', 8, TF_NUMERIC); // Добавляем поле ввода btnOK:=CreateCommand('ДАЛЬШЕ', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку A:=StringToInteger(FormGetText(A)); // Считываем введенное значение и запоминаем его ClearForm; // Очистка формы ShowForm; // Включаем режим форм i:=FormAddTextField('Мощность нагрузки Рн Ватт', '', 8, TF_NUMERIC); // Добавляем поле ввода btnOK:=CreateCommand('ДАЛЬШЕ', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку P:=StringToInteger(FormGetText(P)); // Считываем введенное значение и запоминаем его ClearForm; // Очистка формы ShowForm; // Включаем режим форм i:=FormAddTextField('Количество импульсов', '', 8, TF_NUMERIC); // Добавляем поле ввода btnOK:=CreateCommand('ДАЛЬШЕ', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку N:=StringToInteger(FormGetText(N)); // Считываем введенное значение и запоминаем его ClearForm; // Очистка формы //dsa i:=FormAddString('Нажмите ПУСК для старта таймера.'); btnOK:=CreateCommand('ПУСК', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку timer:=GetRelativeTimeMs; // Запоминаем текущее время ClearForm; // Очистка формы i:=FormAddString('Нажмите СТОП для остановки таймера.'); btnOK:=CreateCommand('СТОП', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку ClearForm; // Очистка формы timer:=GetRelativeTimeMs - timer; // Тут содержится прошедшее время в милиисекундах (1 с = 1000 мс) res:=(3600*N)/(A*timer); // Типа какое-то вычисление i:=FormAddString('Нажмите ДАЛЕЕ для вычисления погрешности'); btnOK:=CreateCommand('Далее', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку S:=100*(res-P)/P; ClearForm; // Очистка формы ClearForm; i:=FormAddString('Результат = ' + res); btnOK:=CreateCommand('ВЫХОД', CM_EXIT, 1); // Создаем кнопку 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);
__________________
- Это мы накодили WINDOWS,
- Это мы надкусили APPLE,
- Нам играют живые The Beatles
- И нестареющий Вова Высоцкий...
|
(Offline)
|
|
12.12.2010, 21:05
|
#22
|
Оператор ЭВМ
Регистрация: 28.11.2010
Сообщений: 32
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Помогите новичку! Пожалста
как сделать переход на нужную строку?
типа: if A:=0 then перейти туда то туда то
|
(Offline)
|
|
12.12.2010, 23:47
|
#23
|
Мастер
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений (для 713 пользователей)
|
Ответ: Помогите новичку! Пожалста
Сообщение от Sloth
как сделать переход на нужную строку?
типа: if A:=0 then перейти туда то туда то
|
Увы, Паскаль это тебе не Бейсик. Переходов на строку тут нет.
|
(Offline)
|
|
13.12.2010, 19:20
|
#24
|
Оператор ЭВМ
Регистрация: 28.11.2010
Сообщений: 32
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Помогите новичку! Пожалста
тоесть возврат сделать нельзя?
|
(Offline)
|
|
14.12.2010, 12:36
|
#25
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Помогите новичку! Пожалста
Нет. Делай циклы.
|
(Offline)
|
|
14.12.2010, 19:43
|
#26
|
Оператор ЭВМ
Регистрация: 28.11.2010
Сообщений: 32
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Помогите новичку! Пожалста
поясните
|
(Offline)
|
|
14.12.2010, 21:14
|
#27
|
Оператор ЭВМ
Регистрация: 02.10.2010
Сообщений: 29
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Помогите новичку! Пожалста
Сообщение от Sloth
поясните
|
открой справку и читай о циклах благо их только 3 типа так что не тяжело будет их понять
|
(Offline)
|
|
21.12.2010, 19:09
|
#28
|
Оператор ЭВМ
Регистрация: 28.11.2010
Сообщений: 32
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Помогите новичку! Пожалста
как сделать повтор на правую софт клавишу? тоесть повтор с самого начала
|
(Offline)
|
|
21.12.2010, 19:18
|
#29
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Помогите новичку! Пожалста
В самом начале repeat, в самом конце - until false.
|
(Offline)
|
|
22.12.2010, 14:51
|
#30
|
Оператор ЭВМ
Регистрация: 28.11.2010
Сообщений: 32
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Помогите новичку! Пожалста
помогите пожалуйста
Program Schetchik; Var btnOK: command; A, N, P, i: integer; res, S, timer, t,B: real; Begin ShowForm; // Включаем режим форм repeat i:=FormAddTextField('Введите передаточное число счетчика', '', 8, TF_NUMERIC); // Добавляем поле ввода btnOK:=CreateCommand('ДАЛЬШЕ', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку A:=StringToInteger(FormGetText(A)); // Считываем введенное значение и запоминаем его ClearForm; // Очистка формы until(A>0); repeat ShowForm; // Включаем режим форм i:=FormAddTextField('Мощность нагрузки Рн Ватт', '', 8, TF_NUMERIC); // Добавляем поле ввода btnOK:=CreateCommand('ДАЛЬШЕ', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку P:=StringToInteger(FormGetText(P)); // Считываем введенное значение и запоминаем его ClearForm; // Очистка формы until(P>0); repeat ShowForm; // Включаем режим форм i:=FormAddTextField('Количество импульсов', '', 8, TF_NUMERIC); // Добавляем поле ввода btnOK:=CreateCommand('ДАЛЬШЕ', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку N:=StringToInteger(FormGetText(N)); // Считываем введенное значение и запоминаем его ClearForm; // Очистка формы until(N>0); i:=FormAddString('Нажмите ПУСК для старта таймера.'); btnOK:=CreateCommand('ПУСК', CM_OK, 1); // Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку timer:=GetRelativeTimeMs; // Запоминаем текущее время ClearForm; // Очистка формы i:=FormAddString('Нажмите СТОП для остановки таймера.'); btnOK:=CreateCommand('СТОП', CM_OK, 1); // Создаем кнопку 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_BACK, 1); AddCommand(btnOK); btnOK:=CreateCommand('ВЫХОД', CM_EXIT, 1);// Создаем кнопку AddCommand(btnOK); // добавляем кнопку на форму while(GetClickedCommand <> btnOK) do Delay(20); // Ждем нажатия на кнопку clearform; End.
ну не понимаю я
Последний раз редактировалось Sloth, 22.12.2010 в 21:35.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 12:18.
|