Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 06.03.2017, 18:46   #1
BoNaPaRtD
Пользователь
 
Регистрация: 06.03.2017
Сообщений: 16
По умолчанию Хочу множить, а для этого нужен тип float, по сути, переменная one это integer, я ее превращаю в str, а str в float, но выдает ошибку

Код:
procedure TForm1.Button1Click(Sender: TObject);
var one:integer;
var two:integer;
var otv:integer;
begin

      one:=IntToStr(StrToFloat(Edit1.Text));
      two:=IntToStr(StrToFloat(Edit2.Text));
      otv:=one*two;
      Edit3.Text:=FloatToStr(otv);
end;

end.
Хочу, что бы можно было множить, а для этого нужен тип float, по сути, переменная one это инт, я ее превращаю в str, а str в float, но выдает ошибку

[dcc32 Error] Unit1.pas(35): E2250 There is no overloaded version of 'IntToStr' that can be called with these arguments
[dcc32 Error] Unit1.pas(36): E2250 There is no overloaded version of 'IntToStr' that can be called with these arguments
[dcc32 Fatal Error] Project1.dpr(5): F2063 Could not compile used unit 'Unit1.pas'
Failed
Elapsed time: 00:00:00.2
BoNaPaRtD вне форума   Ответить с цитированием
Старый 06.03.2017, 18:49   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,078
По умолчанию

Вы что-то не то делаете или пишите.
Цитата:
one:=IntToStr(StrToFloat(Edit1.Text ));
Тут вы "превращаете" Edit1.Text (строку) в float и сразу опять в строку.

Для умножения float не обязателен.
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума   Ответить с цитированием
Старый 06.03.2017, 18:54   #3
BoNaPaRtD
Пользователь
 
Регистрация: 06.03.2017
Сообщений: 16
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Тут вы "превращаете" Edit1.Text (строку) в float и сразу опять в строку.

Для умножения float не обязателен.
Код:
one:=StrToFloat(Edit1.Text);
Так? Но так все равно не работает и выдает ошибку, но уже другую
[dcc32 Error] Unit1.pas(35): E2010 Incompatible types: 'Integer' and 'Extended'
BoNaPaRtD вне форума   Ответить с цитированием
Старый 06.03.2017, 21:04   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,078
По умолчанию

Ну так у вас
Код:
var one:integer;
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума   Ответить с цитированием
Старый 07.03.2017, 05:44   #5
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,776
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
var one,two,otv:real;
begin
      one:=StrToFloat(Edit1.Text);
      two:=StrToFloat(Edit2.Text);
      otv:=one*two;
      Edit3.Text:=FloatToStr(otv);
end;
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.narod.ru
[Паскаль] [Delphi]
newerow1989 вне форума   Ответить с цитированием
Старый 07.03.2017, 13:49   #6
BoNaPaRtD
Пользователь
 
Регистрация: 06.03.2017
Сообщений: 16
По умолчанию

Цитата:
Сообщение от newerow1989 Посмотреть сообщение
Код:
procedure TForm1.Button1Click(Sender: TObject);
var one,two,otv:real;
begin
      one:=StrToFloat(Edit1.Text);
      two:=StrToFloat(Edit2.Text);
      otv:=one*two;
      Edit3.Text:=FloatToStr(otv);
end;
Да, спасибо большое, это было сложно, сейчас еще подумал и наконец понял суть.
BoNaPaRtD вне форума   Ответить с цитированием
Старый 07.03.2017, 14:10   #7
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,776
По умолчанию

С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.narod.ru
[Паскаль] [Delphi]
newerow1989 вне форума   Ответить с цитированием
Старый 07.03.2017, 14:10   #8
Alex11223
Модератор
Заслуженный модератор
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,460
По умолчанию

Цитата:
Сообщение от BoNaPaRtD Посмотреть сообщение
наконец понял суть
И в чем суть?
Alex11223 вне форума   Ответить с цитированием
Старый 07.03.2017, 14:32   #9
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,078
По умолчанию

А так же сложность?..
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума   Ответить с цитированием
Старый 10.03.2017, 09:54   #10
Дmmm
Пользователь
 
Регистрация: 26.02.2013
Сообщений: 66
По умолчанию

Ошибка-то была совсем не в этом.
Никто, похоже, не обратил внимание, что написано one:=IntToStr, когда надо StrToInt. А умножать потом можно и integer
Дmmm вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Из float в Integer число с плавающей точкой Winexcel Общие вопросы Delphi 15 07.07.2014 17:25
если я хочу чтобы переменная была рандом, нужно просто написать, что типа а:=random? какой это будет тип переменных? gylayko Помощь студентам 6 04.10.2011 12:58
Ошибка типа cannot convert `float*' to `float' for argument `1' ... Trackman Помощь студентам 3 23.05.2011 17:09
Массив имеет тип float, переменная же, куда записывается значение int. Sabin4ik Общие вопросы C/C++ 1 28.04.2011 21:47
Float To Str,Int To Str Dobr1y Помощь студентам 2 01.03.2011 20:43


01:02.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.