Нужна помощь! Алгоритмизация, PascalABC

01.01.2001

Нужна помощь! Алгоритмизация, PascalABC
Вывести значение функции на промежутке [a.b] c шагом 0.5(т. е. а=0,b=5), решить задачу 2 способами, используя циклы с параметром и с предусловием и организовать повтор программы используя цикл с постусловием.
Функция: Y=X*COS(X)+SIN(X)
Всё это сделать в PascalABC (алгоритмизация) .
Без понятия даже с чего начать кроме uses crt :D помогите плиз)

  • вот программа с 3-мя циклами, примени к своей
    program fun;
    uses crt;
    var
    n,k,i:integer;
    y,y1,y2,a:real;
    BEGIN
    clrscr;
    writeln('vichislenie funkcii ');
    writeln('---------------------');
    write('vvesti A>0 and A<>1 --> ');
    readln(a);
    write('vvesti N >=1 --> ');
    readln (n);
    writeln(' ispolzuem repeat ');
    writeln('--------------------------------------------------');
    y1:=1; i:=1;
    repeat
    y1:=y1*ln(a*i)/ln(10); writeln('y1= ',y1:4:2,'i=',i);
    i:=i+1;
    until i=n+1;
    writeln('y1= ',y1:6:2);
    y2:=0;k:=3;
    repeat
    y2:=y2+(a+k)/(a*sqrt(k));
    k:=k+1;
    until k=10;
    writeln('y2= ',y2:6:2);
    y:=y1+y2;
    writeln('y= ',y:6:2);
    writeln(' ispolzuem while ');
    writeln('-----------------------------------------------------');
    y1:=1; i:=1;
    while i<=n do begin
    y1:=y1*ln(a*i)/ln(10); writeln('y1= ',y1:6:2);
    i:=i+1;
    end;
    writeln('y1= ',y1:6:2);
    y2:=0;k:=3;
    while k<=9 do begin
    y2:=y2+(a+k)/(a*sqrt(k));
    k:=k+1;
    end;
    writeln('y2= ',y2:6:2);
    y:=y1+y2;
    writeln('y= ',y:6:2);
    writeln(' ispolzuem for ');
    writeln('-------------------------------------------------------');
    y1:=1;
    for i:=1 to n do begin
    y1:=y1*ln(a*i)/ln(10); writeln('y1= ',y1:6:2); end;
    y2:=0;
    for k:=3 to 9 do begin
    y2:=y2+(a+k)/(a*sqrt(k));
    writeln('y2= ',y2:6:2);
    end;
    y:=y1+y2;
    writeln('y= ',y:6:2);
    writeln;
    writeln('end programm');
    readln;
    END.
  • Если ещё актуально, пиши на почту, помогу.

Вас заинтересует