Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Переделал простенькую программу на Паскале в СИ.Не работает.Где грабли?

22K
12 ноября 2006 года
vitiv
2 / / 12.11.2006
Вот исходники на паскале и си:
Это паскаль:
program RUBAKOV;
uses crt;
function MR(x:real):real;
begin
MR:=sin(x-0.3)+0.2*x;
end;

var p1,k,p2,E,x,x1,M:real;

begin
clrscr;
writeln('');
p1:=-1; p2:=1; M:=1.2; K:=1000; E:=0.001;
while p1<p2 do
begin
x:=p1;
x1:=x+abs(MR(x)/M);
while (abs(abs(x1)-abs(x))>=(E)) and (x1<p2) do
begin
x:=x1; x1:=x+abs(MR(x))/M;
end;
if x1<=p2 then writeln(x1:10:9); p1:=x1+K*E;
end;
end.

Это СИ:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<math.h>
void main ()
{
float a,b,m,k,E,x,x1;
a=-1;b=1;m=1.2;k=1000;E=0.001;
system("cls");
while (a<b)
{x=a;
x1=x+abs(sin(x-0.3)+0.2*x)/m;
while ((abs(abs(x1)-abs(x)) >=E && x1<b))
{x=x1;
x1=x+abs(sin(x-0.3)+0.2*x)/m;}
if (x1<=b) printf("x1=%f\n",x1); a=x1+k*E; }
getch();}
Зарание благодарен
3.0K
12 ноября 2006 года
Мerlin
267 / / 25.07.2006
Поменяй abs на fabs.
22K
12 ноября 2006 года
vitiv
2 / / 12.11.2006
Спасибо все заработало.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог