Шулер показывает следующий трюк. Он имеет три одинаковых наперстка. Под первый (левый) он кладет маленький шарик. Затем он очень быстро выполняет ряд перемещений наперстков, каждое из которых – это одно из трех перемещений - A, B, C: A - обменять местами левый и центральный наперстки, B - обменять местами правый и центральный наперстки, C - обменять местами левый и правый наперстки. Необходимо определить, под каким из наперстков окажется шарик после всех перемещений. Входные данные В единственной строке входного файла INPUT.TXT записана строка длиной от 1 до 50 символов из множества {A, B, C} – последовательность перемещений. Выходные данные В единственную строку выходного файла OUTPUT.TXT нужно вывести номер наперстка, под которым окажется шарик после перемещений. Пример INPUT.TXT OUTPUT.TXT CBABCACCC 1
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(20,2,5);Write('Оценки за диктант: ');a.Println;
Writeln('Двоек: ', a.Where(t-> t = 2).Count);
Writeln('Троек: ', a.Where(t-> t = 3).Count);
Writeln('Четверок: ', a.Where(t-> t = 4).Count);
Writeln('Пятерок: ', a.Where(t-> t = 5).Count);
Writeln('Средний за диктант: ', a.Average:0:2);
end.
Пример:
Оценки за диктант: 4 3 2 3 5 3 3 2 5 2 3 5 4 3 3 4 2 2 3 2
Двоек: 6
Троек: 8
Четверок: 3
Пятерок: 3
Средний за диктант: 3.15
Var SunnyDay: Array [1..30] Of Boolean;
a, b, c, i: Integer;
Begin
WriteLn('a = ');
ReadLn(a);
WriteLn('b = ');
ReadLn(b);
b := b * 100;
Randomize;
For i := 1 To 30 Do
Begin
If Random(2) = 1 Then
SunnyDay[i] := True
Else
SunnyDay[i] := False;
End;
For i := 1 To 30 Do
Begin
If SunnyDay[i] = True
ThenBegin
a := a + 2;
If a > b Then
a := b;
End
Else
Begin
a := a - 10;
If a < 0 Then
a := 0; End;
End; WriteLn('Дни месяца были таковы:');
For i := 1 To 30 Do
Begin
If SunnyDay[i] = True Then
WriteLn(i, '. Солнечный')
Else
WriteLn(i, '. Пасмурный')
End;
WriteLn('К концу 30 дня местоположение улитки равно ', a, ' см над землей');
End.