Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 15.11.2014, 17:01   #1 (permalink)
Salavat
Новичок
 
Регистрация: 09.11.2014
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Составил программу на Паскале, но что то не так. Посмотрите, пожалуйста

program h;
//uses crt;
var x,y,a,b:real;
begin
write('a,b=');
readln(a,b);
x:=sqrt(2)/10;
if abs(sqr(a)-sqr(b))<10*x
then y:=power(a,x)-exp(x)+exp(3*ln(b))*cos(4*X-0.2)
else y:=sin(4.5*x)/cos(4.5*x)+x/sin(0.5*x);
write('y=',y:5:2);
end.
а=234.56 в=2123.78*10^-2
Salavat вне форума   Ответить с цитированием

Старый 15.11.2014, 17:01
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Вот ссылки по которым содержаться темы интересные для вас

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

Старый 15.11.2014, 18:44   #2 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Вряд ли мы сможем Вам помочь, пока Вы не скажете, что именно "не так".
Vladimir_S вне форума   Ответить с цитированием
Старый 15.11.2014, 19:27   #3 (permalink)
Salavat
Новичок
 
Регистрация: 09.11.2014
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Цитата:
Сообщение от Vladimir_S Посмотреть сообщение
Вряд ли мы сможем Вам помочь, пока Вы не скажете, что именно "не так".
Пишет что вводная строка имела не верный формат .я не знаю что делать.все перепробовал
Salavat вне форума   Ответить с цитированием
Старый 15.11.2014, 19:47   #4 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Salavat Посмотреть сообщение
Пишет что вводная строка имела не верный формат .я не знаю что делать.все перепробовал
Я тоже не знаю: в моём нормальном Паскале ошибок нет. А что у Вас за Паскаль? Поди, АВС?
Vladimir_S вне форума   Ответить с цитированием
Старый 15.11.2014, 20:50   #5 (permalink)
Salavat
Новичок
 
Регистрация: 09.11.2014
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Цитата:
Сообщение от Vladimir_S Посмотреть сообщение
Я тоже не знаю: в моём нормальном Паскале ошибок нет. А что у Вас за Паскаль? Поди, АВС?
да ABC, программа запускается ,но когда ввожу а и в выходит ошибка :Ошибка времени выполнения: Входная строка имела неверный формат.
Salavat вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 15.11.2014, 22:46   #6 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Увы, ничем помочь не могу: эту глючную мерзопакость (АВС) не держу.
Так, умозрительно, попробуйте вместо
write('a,b=');
readln(a,b);
записать
write('a,b= ');
readln(a,b);
т.е. после знака равенства поставить пробел.
Или так:
writeln('a,b=');
readln(a,b);
т.е. ввод перенести в отдельную строку.
Авось сожрет.
И кстати, как Вы числа вводите? Напишите точно. Надеюсь, при вводе Вы символ "^" не ставите?
Vladimir_S вне форума   Ответить с цитированием
Старый 19.11.2014, 08:48   #7 (permalink)
AlexZir
support
 
Аватар для AlexZir
 
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,797
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
По умолчанию

Что это у вас за функция POWER()?
Откуда вы взяли ваш листинг?
__________________
Убить всех человеков!
AlexZir вне форума   Ответить с цитированием
Старый 19.11.2014, 09:31   #8 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от AlexZir Посмотреть сообщение
Что это у вас за функция POWER()?
Лёш, в каких-то модификациях Паскаля, сколь мне известно, это самое возведение в степень добавлено. Возможно, и в АВС, точно не знаю. Я, поскольку пользуюсь DOS-Free, при тестировании заменил на Exp(x*Ln(a)).
Vladimir_S вне форума   Ответить с цитированием
Старый 19.11.2014, 11:10   #9 (permalink)
AlexZir
support
 
Аватар для AlexZir
 
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,797
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
По умолчанию

Эта функция из объектного паскаля, для Delphi. Имеет тип Extended. Может,именно это и вызывает ошибку.
И неизвестно, при каких a, b ошибка проявляется. Может, топикстартер оба нуля вводил, тогда ничего удивительного нет.

Попробуйте перед основной программой вставить эту функцию, по идее, после этого все должно заработать
Код:
Function Power(a1,b1:Real):Real;  
  begin  {Power}  
  if a1>0 then   Power:=exp(b1*ln(a1))  
  else if a1<0 then   Power:=exp(b1*ln(abs(a1)))  
  else if b1=0 then   Power:=1  
  else   Power:=0  
  end  {Power} ;
__________________
Убить всех человеков!
AlexZir вне форума   Ответить с цитированием
Старый 19.11.2014, 11:42   #10 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от AlexZir Посмотреть сообщение
Эта функция из объектного паскаля, для Delphi.
Черт ее знает, а народ в Сети пишет, что вроде и в АВС есть. Или надо модуль Math присобачить?
Ну да это и не важно - товарищ, похоже, не намерен больше у нас появляться.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


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

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




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

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.