Вычисление выражения - перевод с Pascal - C#
Формулировка задачи:
Помогите пожалуйста с переводом
program cos_teilor;
var x,stx,cost,e: real;
i,fakt,z: integer;
Begin
Write('Введите x: ');
Readln(x);
Write('Введите точность e: ');
Readln(e);
stx:= x*x; {x в степени}
fakt:= 2; {значение факториала в знаменателе}
cost:= 1; {первый элемент в разложении}
i:= 2; {счётчик}
z:= -1; {знак элемента}
while stx/fakt>=e do begin {до тех пор, пока элемент в разложении не меньше точности}
cost:=cost+z*stx/fakt;
inc(i,2);
stx:=stx*x*x;
fakt:=fakt*(i-1)*i;
z:=z*(-1); {смена знака}
end;
Writeln('Количество элементов в разложении = ',i div 2 + 1);
Writeln('Значение cos(',x:6:6,')= ',cost:6:6);
Writeln('Значение компьютера: ',cos(x):6:6);
Readln;
End.Решение задачи: «Вычисление выражения - перевод с Pascal»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication
{
class cos_teilor
{
static void Main(string[] args)
{
//var x,stx,cost,e: real;
float x,stx,cost,e;
//i,fakt,z: integer;
int i, fakt, z;
//Write('Введите x: ');
Console.Write("Введите x: ");
//Readln(x);
x = float.Parse(Console.ReadLine());
//Write('Введите точность e: ');
Console.Write("Введите точность e: ");
//Readln(e);
e = float.Parse(Console.ReadLine());
//stx:= x*x; {x в степени}
stx = (float)Math.Pow((double)x,(double)2);
//fakt:= 2; {значение факториала в знаменателе}
fakt = 2;
//cost:= 1; {первый элемент в разложении}
cost = 1;
//i:= 2; {счётчик}
i = 2;
//z:= -1; {знак элемента}
z = -1;
//while stx/fakt>=e do {до тех пор, пока элемент в разложении не меньше точности}
while (stx / fakt >= e)
//begin
{
//cost:=cost+z*stx/fakt;
cost=cost + z * stx / fakt;
//inc(i,2);
i+=2;
//stx:=stx*x*x;
stx = stx * x * x;
//fakt:=fakt*(i-1)*i;
fakt = fakt * (i-1) * i;
//z:=z*(-1); {смена знака}
z = z * (-1);
//end;
}
//Writeln('Количество элементов в разложении = ',i div 2 + 1);
Console.WriteLine("Количество элементов в разложении = " + i / 2 + 1);
//Writeln('Значение cos(',x:6:6,')= ',cost:6:6);
Console.WriteLine("Значение cos({0:000000.000000}) ",cost);
//Writeln('Значение компьютера: ',cos(x):6:6);
Console.WriteLine("Значение компьютера: {0:000000.000000}", Math.Cos(x));
//Readln;
Console.ReadKey();
}
}
}