Предмет: Информатика,
автор: monster3
2. Калькулятор (100 баллов)
2 секунды и 64 Мб памяти
В старинном калькуляторе работают только две клавиши — A и B. При нажатии клавиши A калькулятор увеличивает число в два раза, а при нажатии клавиши B к числу прибавляется 1. На экране записано число 1.
Вам нужно вычислить число, которое получится на экране калькулятора после выполнения заданной последовательности операций.
Формат входного файла input.txt
В единственной строке записана последовательность символов A и B без пробелов. Длина строки не менее одного и не более 50 символов.
Формат выходного файла output.txt
В единственной строке запишите целое число, которое получится после выполнения заданной последовательности операций.
Примеры input.txt
Примеры output.txt
AB
3
BA
4
Ответы
Автор ответа:
0
var
i,x: integer;
A,B: text;
s: string;
begin
x:=1;
assign(A,'input.txt');
reset(A);
read(A,s);
close(A);
for i:= 1 to length(s) do
begin
if s[i] = 'A' then x:=x*2;
if s[i] = 'B' then x:=x+1
end;
assign(B,'output.txt');
rewrite(B);
write(B,x);
close(B);
end.
i,x: integer;
A,B: text;
s: string;
begin
x:=1;
assign(A,'input.txt');
reset(A);
read(A,s);
close(A);
for i:= 1 to length(s) do
begin
if s[i] = 'A' then x:=x*2;
if s[i] = 'B' then x:=x+1
end;
assign(B,'output.txt');
rewrite(B);
write(B,x);
close(B);
end.
Автор ответа:
0
C# без работы с файлами. Если задача c informatics.mccme.ru должно пройти.
string cmd = Console.ReadLine();
int ans = 1;
for (int i = 0; i < cmd.Length; i++) {
if (cmd[i] == 'A')
ans *= 2;
else if (cmd[i] == 'B')
ans++;
}
Console.WriteLine(ans);
string cmd = Console.ReadLine();
int ans = 1;
for (int i = 0; i < cmd.Length; i++) {
if (cmd[i] == 'A')
ans *= 2;
else if (cmd[i] == 'B')
ans++;
}
Console.WriteLine(ans);
Похожие вопросы
Предмет: Математика,
автор: Togasan
Предмет: Русский язык,
автор: vladyslavyankin
Предмет: История,
автор: anastasyapivovarova5
Предмет: Алгебра,
автор: ksenia2510
Предмет: Алгебра,
автор: Andreyev