Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 11.12.2015
Сообщений: 1
1

Проконсультируйте:)

11.12.2015, 00:08. Показов 478. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Выдаёт ошибку.

Delphi
1
2
3
4
5
6
7
8
9
10
procedure TForm1.Button1Click(Sender: TObject);
var x,f,b:real;
begin
x:=strtofloat(edit1.Text);
b:=strtofloat(edit2.Text);
if x<-5 then f:=sin(x)+sqrt(x+5);
if x=-5 then f:=(x*x*cos(x))+ln(x+b) else
f:=(x-5)*(x-5)*(x-5)*sin(x/2)/cos(x/2);
label3.caption:='Ответ '+floattostr(f);
end;
Связано с типом данных.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.12.2015, 00:08
Ответы с готовыми решениями:

Проконсультируйте
смысл в том, что на экране изображен трехмерный обьект-примитив, и надо показать его вращение,...

Проконсультируйте по программе в Concole Application, а именно с массивом, for, и case of
Доброго времени суток, мне дали в институте задание, написать программу, опрашивающую пользователя...

проконсультируйте
Добрый день , решил вот такую сборочку (собрать).Есть вопрос правильно ли все встанет?не возникнут...

Проконсультируйте
Здравствуйте, Я являюсь владельцем перспективного музыкального портала, На данный момент Тиц 0 Пр...

4
958 / 577 / 136
Регистрация: 23.05.2012
Сообщений: 7,364
11.12.2015, 01:52 2
Что за ошибка? В какой строке?
0
12 / 12 / 7
Регистрация: 09.12.2015
Сообщений: 187
11.12.2015, 02:00 3
вы наверное не верное ввели число, поэтому он и не может преобразовать строку в число
0
пофигист широкого профиля
4733 / 3167 / 859
Регистрация: 15.07.2013
Сообщений: 18,252
11.12.2015, 02:12 4
Для справки. В России исторически принято разделять целую и дробную часть вещественного числа запятой, а не точкой.
0
500 / 356 / 231
Регистрация: 29.03.2015
Сообщений: 675
11.12.2015, 04:47 5
  1. Во первых вместо:
    Delphi
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    procedure TForm1.Button1Click(Sender: TObject);
    var x,f,b:real;
    begin
    x:=strtofloat(edit1.Text);
    b:=strtofloat(edit2.Text);
    if x<-5 then f:=sin(x)+sqrt(x+5);
    if x=-5 then f:=(x*x*cos(x))+ln(x+b) else
    f:=(x-5)*(x-5)*(x-5)*sin(x/2)/cos(x/2);
    label3.caption:='Ответ '+floattostr(f);
    end;
    надо писать:
    Delphi
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    procedure TForm1.Button1Click(Sender: TObject);
    var x,f,b:real;
    begin
    x:=strtofloat(edit1.Text);
    b:=strtofloat(edit2.Text);
    if x<-5 then f:=sin(x)+sqrt(x+5)
    else if x=-5 then f:=(x*x*cos(x))+ln(x+b) else
    f:=(x-5)*(x-5)*(x-5)*sin(x/2)/cos(x/2);
    label3.caption:='Ответ '+floattostr(f);
    end;
  2. Во вторых, когда вводите x меньшее (-5), то вычисляется корень квадратный от отрицательного числа (sqrt(x+5)), а это приводит к ошибке.
  3. В третьих, когда x + b меньше 0 (например x = -5 и b = -5) должен вычисляться ln(x+b), но получается комплексное число, а оно не может быть выдано и выдается ошибка.
  4. В четвёртых если cos(x/2) равен 0, то происходит деление на 0, а это тоже ошибка.
0
11.12.2015, 04:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.12.2015, 04:47
Помогаю со студенческими работами здесь

Проконсультируйте =))
Мне надо защитить работу Преподаватель спрашивает только три вопроса: -Что делает программа?...

проконсультируйте о ЗоПП
всем привет я недавно (18 июля 2012 года) сдал планшет samsung p1010 в ремонт мне должны были его...

Оцените и проконсультируйте
Добрый вечер! ПК: Мать: MSI P45 Neo-F Проц.: Intel Core 2 Duo E7300 2.6GHz 2.6GHz БП: 350W...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru