S:=0
For i:=1 to 10
S:=s+2*i
i:=1
S:=o+2*1=2
i:=2
S:=2+2*2=6
i=3
S=6+2*3=12
i=4
S=12+2*4=20
i=5
S=40+2*5=50
i=6
S=50+2*6=62
i=7
S=63+2*7=77
i=8
S=77+2*8=93
i=9
S=93+2*9=111
i=10
S=111+2*10=131
Ответ=131
22/2 = 11, остаток 0
11/2 = 5, остаток 1
5/2=2, остаток 1
2/2=1, остаток 0
1/2=0, остаток 1
Теперь выписываем остатки в обратном порядке: 10110.
22₁₀ = 10110₂
<em>1. Современное решение</em>
<em>// PascalABC.NET 3.2, сборка 1488 от 21.06.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
function From5to10(Self:sequence of string):sequence of integer;
extensionmethod;
// Перевод последовательности заданных на строках пятиричных чисел
// в последовательность целых десятичных чисел
begin
foreach var s in Self do begin
var r:=0;
var pa:=1;
foreach var c in s.Reverse do begin
r+=c.ToDigit*pa; pa*=5
end;
yield r
end
end;
begin
var s:=ReadlnString('Введите строку:').MatchValues('[0-4]+').From5To10;
if s.Count=0 then Writeln('S=-1')
else Writeln('S=',s.Sum)
end.
<u>Пример</u>
Введите строку: sdf812973j223k
S=73
<em>2. Решение на TurboPascal ("Так писали наши отцы и деды в 1983 году, так и нас сейчас учат в школе")</em>
uses Crt;
function From5to10(n:string):integer;
{ Перевод из пятиричного числа в строковом представлении
в целое десятичное }
var
i,pa,s:integer;
begin
s:=0;
pa:=1;
for i:=Length(n) downto 1 do begin
s:=s+pa*(Ord(n[i])-Ord('0'));
pa:=pa*5
end;
From5to10:=s
end;
var
s,w:string;
i,k,r:integer;
begin
ClrScr;
Write('Введите строку: ');
Readln(s);
w:='';
r:=0;
k:=0;
for i:=1 to Length(s) do begin
if Pos(s[i],'01234')>0 then begin
if w='' then k:=k+1;
w:=w+s[i]
end
else
if w<>'' then begin
r:=r+From5to10(w);
w:=''
end
end;
if k=0 then Writeln('S=-1')
else Writeln('S=',r);
ReadKey
end.
В теории HDMI если чего нового не изобрели
Dim s As Integer, sum As Single
s = 44
If s Mod 2 = 1 Then
sum = Sin(s * 3.14 / 180) + Cos(s * 3.14 / 180)
Else
sum = Abs(s)
End If
MsgBox sum
'задач 3
Dim s As Integer, sum As Integer, i As Integer, j As Integer
Do While i < 21
sum = sum + j
Cells(i + 1, 1) = i
Cells(i + 1, 2) = j
Cells(i + 1, 3) = sum
i = i + 1
j = j + 3
Loop
'задач 4
Dim x As Integer, sum As Single, i As Integer, n As Integer
x = 30
n = CInt(InputBox("Введите n"))
For i = 1 To n
sum = sum + Sin(i * x * 3.14 / 180)
Next i
MsgBox sum