Написать код на языке java №1. Дано целое число N (> 0). Используя один цикл, найти сумму 1 + 1/(1!) + 1/(2!) + 1/(3!) + . . . + 1/(N!) (выражение N! — N–факториал — обозначает произведение всех целых чисел от 1 до N: N! = 1·2·. . .·N). Полученное число является приближенным значением константы e = exp(1).
№2. Дано вещественное число X и целое число N (> 0). Найти значение выражения 1 + X + X 2 /(2!) + . . . + X N /(N!) (N! = 1·2·. . .·N). Полученное число является приближенным значением функции exp в точке X.
№3. Дано вещественное число X и целое число N (> 0). Найти значение выражения X − X 3 /(3!) + X 5 /(5!) − . . . + (−1)N ·X 2·N+1/((2·N+1)!) (N! = 1·2·. . .·N). Полученное число является приближенным значением функции sin в точке X.
// PascalABC.NET 3.2, сборка 1439 от 09.05.2017
// Внимание! Если программа не работает, обновите версию!
begin
ReadlnString.GroupBy(c->c).Select(x->(x.Key,x.Count)).OrderBy(x->x[0])
.Select(x->Format('"{0}" - {1}',x[0],x[1])).Println(NewLine)
end.
Пример
10101110
"0" - 3
"1" - 5
2. Школьный вариант в стиле Pascal ABC, Free Pascal
var
s:string;
i,k0,k1:integer;
begin
Readln(s);
k0:=0; k1:=0;
for i:=1 to Length(s) do
if s[i]='0' then Inc(k0) else Inc(k1);
Writeln('"0" - ',k0);
Writeln('"1" - ',k1)
end.
Вывод результатов точно такой же, как и выше.
// PascalABC.NET 3.2, сборка 1439 от 09.05.2017
// Внимание! Если программа не работает, обновите версию!
begin
Writeln('S=',ReadSeqInteger(3).Select(n->n.ToString
.Where(d->Pos(d,'13579')>0)).SelectMany(c->c)
.Select(c->c.ToDigit).Sum)
end.
Пример
252 337 105
S=24
2. А примерно вот так учат писать в школе - долго и длинно (да и не особо понятно)
var
m,i,j,s,d:integer;
begin
s:=0;
for i:=1 to 3 do begin
Read(m);
for j:=1 to 3 do begin
d:=m mod 10;
if d mod 2<>0 then s:=s+d;
m:=m div 10
end
end;
Writeln('S=',s)
end.