Program Task; Var a: Array of Integer; n, b, c, i: Integer; Begin Write('Введите номер билета: №'); ReadLn(n); b := n; While b <> 0 Do Begin b := b Div 10; c := c + 1; End; If (c < 1) Or (c > 6) Then WriteLn('Неверный номер билета. Завершение программы.') Else Begin SetLength(a, c); b := n; For i := c - 1 DownTo 0 Do Begin a[i] := b Mod 10; b := b Div 10; End; If (a[0] + a[1] + a[2]) = (a[3] + a[4] + a[5]) Then WriteLn('Билет "счастливый"!') Else WriteLn('Не повезло'); End; ReadLn; End.
1. Направо 45 (это равносильно "Направо 1", потому что 45 - это 44 + 1 (4 * 11 + 1), а 4 поворота возвращают её в начальное состояние. 2. Вперед 45 (проходим 45 ячеек в направлении "направо")
3. Направо 45 (направление будет "вниз") 4. Вперед 45 (проходим 45 ячеек в направлении "вниз")
5. Направо 45 (направление будет "влево") 6. Вперед 45 (проходим 45 ячеек в направлении "влево")
7. Направо 45 (направление будет "вверх") 8. Вперед 45 (проходим 45 ячеек в направлении "вверх")
Дальше опять тоже самое (4 поворота с перемещением).
Var a: Array of Integer;
n, b, c, i: Integer;
Begin
Write('Введите номер билета: №');
ReadLn(n);
b := n;
While b <> 0 Do
Begin
b := b Div 10;
c := c + 1;
End;
If (c < 1) Or (c > 6) Then
WriteLn('Неверный номер билета. Завершение программы.')
Else
Begin
SetLength(a, c);
b := n;
For i := c - 1 DownTo 0 Do
Begin
a[i] := b Mod 10;
b := b Div 10;
End;
If (a[0] + a[1] + a[2]) = (a[3] + a[4] + a[5]) Then
WriteLn('Билет "счастливый"!')
Else
WriteLn('Не повезло');
End;
ReadLn;
End.
1. Направо 45 (это равносильно "Направо 1", потому что 45 - это 44 + 1 (4 * 11 + 1), а 4 поворота возвращают её в начальное состояние.
2. Вперед 45 (проходим 45 ячеек в направлении "направо")
3. Направо 45 (направление будет "вниз")
4. Вперед 45 (проходим 45 ячеек в направлении "вниз")
5. Направо 45 (направление будет "влево")
6. Вперед 45 (проходим 45 ячеек в направлении "влево")
7. Направо 45 (направление будет "вверх")
8. Вперед 45 (проходим 45 ячеек в направлении "вверх")
Дальше опять тоже самое (4 поворота с перемещением).