Модераторы: Snowy, MetalFan, bems, Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с калькулятором, не понятна причина бездействия 
:(
    Опции темы
spindul
Дата 18.3.2012, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Здравствуйте уважаемые форумчане. Вопрос может показаться глупым, но хотелось бы дельного совета:
есть код сложения:
Код

procedure TForm1.Button3Click(Sender: TObject); //кнопка +
begin
  a:=strtofloat(edit1.Text);
  edit1.Text:=' ';
  zn:='+';
end;

procedure TForm1.Button2Click(Sender: TObject); //кнопка =
begin
  b:=strtofloat(edit1.Text);
  case zn of
    '+': d:=a+b;
  end;
 edit1.Text:=floattostr(d);
end;


Как видно тут используются глобальные переменные. Как вы считаете, лучше оставить их или же использовать локальные переменные? Если же использовать локальные переменные, то как быть с кнопкой '=', ведь я могу создать специальную процедуру сложения, которая будет складывать две строки, вложить эту процедуру в button3Click(для кнопки +) Как же потом её вызвать при нажатии на кнопку '='?
PM MAIL   Вверх
spindul
  Дата 19.3.2012, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Посоветовали произвести работу с меткой, как это можно сделать?
PM MAIL   Вверх
Snowy
Дата 19.3.2012, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 31
Всего: 484



Размести переменные в секции private у TForm1
PM MAIL   Вверх
spindul
Дата 19.3.2012, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Цитата(Snowy @  19.3.2012,  13:43 Найти цитируемый пост)
Размести переменные в секции private у TForm1 

всмысле? как это выполнить кодом, точнее как это делать подробней хотя бы
PM MAIL   Вверх
Данкинг
Дата 19.3.2012, 14:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(spindul @  19.3.2012,  15:27 Найти цитируемый пост)
всмысле

В смысле, ищи объявление класса TForm1 и размещай там переменные.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
spindul
Дата 19.3.2012, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Цитата(Данкинг @  19.3.2012,  14:32 Найти цитируемый пост)
объявление класса TForm1

вы имеете в виду это объявление?
Код

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
var
  Form1: TForm1;
  a,b,d:extended;
  zn:char;

так то всё так, но ведь это будет являться глобальными переменными, а не локальными
PM MAIL   Вверх
Snowy
Дата 19.3.2012, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 31
Всего: 484



Код
type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
  private // личные поля класса TForm1
    a,b,d:extended;
    zn:char;
  end; // конец класса TForm1

var  // глобальные переменные
  Form1: TForm1;
Таким образом эти переменные будут доступны везде внутри класса TForm1 и недоступны за его пределами.
PM MAIL   Вверх
spindul
Дата 19.3.2012, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Спасибо, а какие еще возможны варианты?
PM MAIL   Вверх
Данкинг
Дата 19.3.2012, 18:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Варианты чего?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
DarkProg
Дата 19.3.2012, 19:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Законченный романтик
***


Профиль
Группа: Завсегдатай
Сообщений: 1784
Регистрация: 11.3.2009
Где: Земля

Репутация: 4
Всего: 19



Цитата(spindul @  19.3.2012,  17:24 Найти цитируемый пост)
Спасибо, а какие еще возможны варианты? 

Ну разве что свой класс написать...


--------------------
"И твоя голова всегда в ответе за то куда сядет твой зад..."

"Я студент - скажите с какого я ВУЗа..."

 smile  smile  smile 
PM MAIL   Вверх
spindul
Дата 19.3.2012, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Я просто хочу обдумать все варианты решение поставленной задачи. Плюс у меня возник вопрос, как работать с памятью. Интересует не только как запрограммировать кнопки типа RM, M+, M-, но и просто отдельные кнопки памяти, к примеру A,B,C
PM MAIL   Вверх
spindul
Дата 23.3.2012, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Как сделать правильно переключение с GRAD/RAD/DEG. Как это сделать оптимально?
PM MAIL   Вверх
Данкинг
Дата 23.3.2012, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(spindul @  23.3.2012,  22:53 Найти цитируемый пост)
Как сделать правильно переключение с GRAD/RAD/DEG. 

Radiobutton.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Keeper89
Дата 24.3.2012, 01:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 9
Всего: 58



Что значит оптимально? Лучше всего сделать свой класс и запихнуть все внутрь.


--------------------
PM MAIL WWW   Вверх
northener
Дата 24.3.2012, 01:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Данкинг @  23.3.2012,  22:34 Найти цитируемый пост)
Цитата(spindul @  23.3.2012,  22:53 Найти цитируемый пост)
Как сделать правильно переключение с GRAD/RAD/DEG. 

Radiobutton.

Даже больше. Глядя на уже существующие программные калькуляторы напрашивается использование TRadioGroup.


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
spindul
Дата 24.3.2012, 21:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Цитата(northener @  24.3.2012,  01:55 Найти цитируемый пост)
программные калькуляторы напрашивается использование TRadioGroup. 

хорошо, предположим сделаю я RadioGroup, как мне его правильно запрограмить. Знаю что такое Rad/Grad но что такое DEG??
PM MAIL   Вверх
Данкинг
Дата 24.3.2012, 22:07 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(spindul @  24.3.2012,  22:14 Найти цитируемый пост)
Знаю что такое Rad/Grad но что такое DEG?? 

Хочешь, чтобы мы тут выяснили, что на твоём калькуляторе означает DEG?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Чучмек
Дата 24.3.2012, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЭТ БИЛЭТ
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 11.5.2008
Где: СССР

Репутация: 7
Всего: 41



Цитата(spindul @  24.3.2012,  21:14 Найти цитируемый пост)
DEG

Обыкновенные градусы, которых в круге 360


--------------------
умную мысль держи при себе, а дурной - поделись с другими 
PM MAIL   Вверх
spindul
Дата 24.3.2012, 22:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Цитата(Чучмек @  24.3.2012,  22:09 Найти цитируемый пост)
Обыкновенные градусы, которых в круге 360 
тогда что означает град? и это не только на моем калькуляторе, откройте любой инженерный калькулятор и вы увидите данные зн-ия. только вот как их программировать пока нет идей. может подскажите?

PM MAIL   Вверх
Чучмек
Дата 24.3.2012, 23:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЭТ БИЛЭТ
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 11.5.2008
Где: СССР

Репутация: 7
Всего: 41



Град он и есть град, 1/100 от 90 градусов. 


--------------------
умную мысль держи при себе, а дурной - поделись с другими 
PM MAIL   Вверх
spindul
Дата 25.3.2012, 22:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Ок, всё вроде понятно, т.е. надо будет для каждого режима программировать его, совместить это не получится....
PM MAIL   Вверх
northener
Дата 26.3.2012, 01:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(spindul @  25.3.2012,  22:56 Найти цитируемый пост)
Ок, всё вроде понятно, т.е. надо будет для каждого режима программировать его, совместить это не получится.... 

Чем дальше в лес, тем более не понятно что вас интересует.


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
spindul
Дата 26.3.2012, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Цитата(northener @  26.3.2012,  01:11 Найти цитируемый пост)
Чем дальше в лес, тем более не понятно что вас интересует. 

Всё вроде же понятно, я не понимаю как правильно запрограммировать эти режимы, ведь они не всегда должны работать, а только при тригонометрических ф-иях, как это сделать?
PM MAIL   Вверх
Keeper89
Дата 27.3.2012, 04:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 9
Всего: 58



Ну ты хотя бы какой-то кусок кода приведи, и мы подскажем  


--------------------
PM MAIL WWW   Вверх
spindul
Дата 2.4.2012, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



а какой можно кусок кода предоставить. Я просто себе представляю, что это будет что-то типа RadioButton. При переключении и будет происходить смена режима.
PM MAIL   Вверх
northener
Дата 3.4.2012, 00:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(spindul @  2.4.2012,  23:18 Найти цитируемый пост)
а какой можно кусок кода предоставить. Я просто себе представляю, что это будет что-то типа RadioButton. При переключении и будет происходить смена режима. 

Любой, который вы попробуете написать сами.


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Delvish
Дата 3.4.2012, 08:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


oO
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 13.12.2006

Репутация: нет
Всего: 4



Цитата(spindul @  3.4.2012,  00:18 Найти цитируемый пост)
а какой можно кусок кода предоставить. Я просто себе представляю, что это будет что-то типа RadioButton. При переключении и будет происходить смена режима.


занеси в переменную значение, при событии onClick делай вычисления и выводи на экран без перезаписи этой переменной. в чем проблема?
PM MAIL   Вверх
spindul
Дата 8.4.2012, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Код

Function Logz(x,y:extended):extended;
begin
  Result:= ln(x)/ln(y);
end;

procedure TForm1.logClick(Sender: TObject);
var
  rez,ln_a,ln_b:extended;
begin
  ln_a:=strtofloat(edit1.text);
  edit1.Text:=' ';
  ln_b:=strtofloat(edit1.text);
  edit1.Text:=' ';
  rez:=logz(ln_a,ln_b);
  edit1.Text:=floattostr(rez);
end;

Вроде бы должно всё работать, но однако выдает ошибку "Project raised exception class EConvertError with message '' ' is not a valid integer value'" Я не понимаю, почему здесь ошибка несовместимости типов
PM MAIL   Вверх
Данкинг
Дата 8.4.2012, 22:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Потому что из ничего не получится сделать число.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
spindul
Дата 8.4.2012, 22:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Цитата(Данкинг @  8.4.2012,  22:31 Найти цитируемый пост)
Потому что из ничего не получится сделать число. 

всмысле из ничего? я же передаю числа по идее. а как тогда должно быть, чтобы привязка была только к одному эдиту? Я как понимаю, не правильно его очищаю

Это сообщение отредактировал(а) spindul - 8.4.2012, 22:45
PM MAIL   Вверх
Данкинг
Дата 8.4.2012, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Ты сначала очищаешь, а затем то, что очистил, пытаешься приравнять ln_b.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
spindul
Дата 8.4.2012, 23:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Как мне тогда считать два раза инфу с одного эдита?
PM MAIL   Вверх
Данкинг
Дата 8.4.2012, 23:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Сделать все переменные глобальными. Ввести булеву переменную. При нажатии на клавишу действия (сложение/вычитание и т.д.) заносить в эту переменную действие. И проверять: если она непустая, значит, в данный момент будет вводиться второе слагаемое.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
spindul
Дата 8.4.2012, 23:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Цитата(Данкинг @  8.4.2012,  23:13 Найти цитируемый пост)
Сделать все переменные глобальными.

всё бы конечно хорошо, но использовать в данном калькуляторе глобальные переменные я не могу. Как по другому сделать(все обычные ф-ии, я сделал без проблем, возникли проблемы только при вычислении логарифмов и возведения в степень)
PM MAIL   Вверх
northener
Дата 8.4.2012, 23:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(spindul @  8.4.2012,  23:16 Найти цитируемый пост)
использовать в данном калькуляторе глобальные переменные я не могу.

Почему?

Цитата(spindul @  8.4.2012,  23:16 Найти цитируемый пост)
все обычные ф-ии, я сделал без проблем, возникли проблемы только при вычислении логарифмов

В приведенном выше примере я проблем с логарифмами не вижу. Но вижу проблемы с делением.


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Данкинг
Дата 8.4.2012, 23:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Без глобальных? ИМХО никак не сделаешь. Ну, можно временные данные хранить во временных файлах, но это уже высшая степень изврата.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
northener
Дата 9.4.2012, 00:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Данкинг @  8.4.2012,  23:56 Найти цитируемый пост)
Без глобальных?

Ну может он (а базовые знания у автора явно в зачаточном состоянии) слишком буквально понял приведенный вами термин "глобальная переменная"? Ведь на каждом углу твердят, что глобальные переменные - вселенское зло! smile


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Данкинг
Дата 9.4.2012, 00:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(northener @  9.4.2012,  01:28 Найти цитируемый пост)
глобальные переменные - вселенское зло!

Народное мнение ошибочно. Это не зло, это одна из возможностей языка программирования.  smile А так - ещё можно в реестре запоминать. Пока ещё никто его злом не назвал. smile

Добавлено через 1 минуту и 30 секунд
А ещё можно сделать две кнопки -  "первое слагаемое" и "второе слагаемое" - и два едита. smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
northener
Дата 9.4.2012, 01:18 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(Данкинг @  9.4.2012,  00:43 Найти цитируемый пост)
А ещё можно сделать две кнопки -  "первое слагаемое" и "второе слагаемое" - и два едита.

Это будет уже не калькулятор, а тот ужастный монстр, который порой снится во сне нерадивому студенту smile


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
spindul
Дата 9.4.2012, 16:26 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Я без понятия, что здесь за флуд, который расположен выше. У меня поставлена задача, сделать эти ф-ии без глобальных переменных, вроде бы ясно объяснил, так что господа northener и Данкинг, если не можете помочь зачем разводить флуд. Что надо изменить в коде, который был представлен раньше, чтобы ф-ия считывала два различных числа с одного эдита?
PM MAIL   Вверх
Данкинг
Дата 9.4.2012, 16:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(spindul @  9.4.2012,  17:26 Найти цитируемый пост)
У меня поставлена задача, сделать эти ф-ии без глобальных переменных, вроде бы ясно объяснил, 

Кроме тебя этого никому не ясно.
Цитата(spindul @  9.4.2012,  17:26 Найти цитируемый пост)
так что господа northener и Данкинг, если не можете помочь зачем разводить флуд. 

Какой флуд? Я тебе два варианта подсказал: сохранение в файле и в реестре. 




--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
spindul
Дата 9.4.2012, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



каким образом сохранять в реестр, и как это будет по правильности, сколько будет занимать место в памяти?
PM MAIL   Вверх
Данкинг
Дата 9.4.2012, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(spindul @  9.4.2012,  17:44 Найти цитируемый пост)
каким образом сохранять в реестр

В поиск, обсуждалось неоднократно. smile 
Цитата(spindul @  9.4.2012,  17:44 Найти цитируемый пост)
 и как это будет по правильности

В данном случае - никак. Это бред, как я и говорил.



--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Чучмек
Дата 9.4.2012, 18:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЭТ БИЛЭТ
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 11.5.2008
Где: СССР

Репутация: 7
Всего: 41



Цитата(spindul @  9.4.2012,  16:26 Найти цитируемый пост)
У меня поставлена задача, сделать эти ф-ии без глобальных переменных

Как ты себе это представляешь?
Вот, держи:

Добавлено через 8 минут и 48 секунд
Цитата(Данкинг @  8.4.2012,  23:56 Найти цитируемый пост)
Без глобальных? ИМХО никак не сделаешь

А ведь можно все-таки.

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  Логарифм_без_глобальных_переменных.7z 152,23 Kb


--------------------
умную мысль держи при себе, а дурной - поделись с другими 
PM MAIL   Вверх
spindul
Дата 9.4.2012, 19:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Цитата(Чучмек @  9.4.2012,  18:45 Найти цитируемый пост)
А ведь можно все-таки. 
 Спасибо, хоть кто-то толковое решение подсказал

PM MAIL   Вверх
Данкинг
Дата 9.4.2012, 21:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Так логарифм - одно дело, а если сложение?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
spindul
Дата 9.4.2012, 22:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



божечки, ну написал же выше, что все обычные ф-ии сделаны, как вы читаете?
PM MAIL   Вверх
Данкинг
Дата 9.4.2012, 22:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(spindul @  9.4.2012,  23:15 Найти цитируемый пост)
божечки

Кто? smile 
Цитата(spindul @  9.4.2012,  23:15 Найти цитируемый пост)
ну написал же выше, что все обычные ф-ии сделаны

Где именно это написано? 
Цитата(spindul @  9.4.2012,  23:15 Найти цитируемый пост)
как вы читаете? 

С трудом. smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
northener
Дата 9.4.2012, 23:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(spindul @  9.4.2012,  22:15 Найти цитируемый пост)
ну написал же выше, что все обычные ф-ии сделаны

Но тогда из-за чего возник вопрос 
Цитата(spindul @  8.4.2012,  23:06 Найти цитируемый пост)
Как мне тогда считать два раза инфу с одного эдита? 

Ведь и при сложении и при вычитании и при умножении и при делении нужно "считать два раза инфу с одного эдита".


Цитата(spindul @  9.4.2012,  19:37 Найти цитируемый пост)
Спасибо, хоть кто-то толковое решение подсказал

Это не "толковое решение". Это Чучмек "извратился" чтобы доказать Данкингу что "формально" возможно решить эту проблему используя только локальные переменные. Но вряд ли вас за такое решение учебной задачи похвалит преподаватель. Не любят они такие "извраты" smile
Ведь наверняка требование "не используя глобальные переменные" всего лишь означает, что вместо глобальных переменных (которые часто употреблялись в Паскале до ООП) нынче программисту стоит использовать поля классов. В данном случае нужно уметь создать в нужной секции описания класса формы переменную нужного типа и использовать её для хранения промежуточных (в данном случае калькулятора) данных.

Более в данном топике высказываться не буду.

Это сообщение отредактировал(а) northener - 9.4.2012, 23:52


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
spindul
Дата 9.4.2012, 23:55 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Цитата(Данкинг @  9.4.2012,  22:57 Найти цитируемый пост)
С трудом.   

заметно
Цитата(northener @  9.4.2012,  23:49 Найти цитируемый пост)
Более в данном топике высказываться не буду. 

я смотрю у нас тут обидчивые люди пошли

Цитата(northener @  9.4.2012,  23:49 Найти цитируемый пост)
В данном случае уметь создать в нужной секции описания класса форму переменную нужного типа и использовать её для хранения промежуточных (в данном случае калькулятора) данных.

не очень понял как это можно реализовать
PM MAIL   Вверх
Данкинг
Дата 10.4.2012, 00:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(spindul @  10.4.2012,  00:55 Найти цитируемый пост)
заметно

От ответа ушёл. Ну, как знаешь.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
northener
Дата 10.4.2012, 00:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 12
Всего: 20



Цитата(spindul @  9.4.2012,  23:55 Найти цитируемый пост)
я смотрю у нас тут обидчивые люди пошли

Ответил в личку.


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
spindul
Дата 10.4.2012, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



Цитата(Данкинг @  10.4.2012,  00:13 Найти цитируемый пост)
От ответа ушёл. Ну, как знаешь. 

я от ответа не уходил, если вы не заметили: 

Цитата(spindul @  8.4.2012,  23:16 Найти цитируемый пост)
Как по другому сделать(все обычные ф-ии, я сделал без проблем, возникли проблемы только при вычислении логарифмов и возведения в степень) 


то я то тут причем?!
PM MAIL   Вверх
spindul
Дата 21.4.2012, 17:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 30.7.2011

Репутация: нет
Всего: нет



спасибо, кто помогал и кто постоянно ворчал. тему можно закрывать
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1075 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.