2. Калькулятор (100 баллов) 2 секунды и 64 Мб памяти В старинном калькуляторе работают только две клавиши — A и
10-11 класс
|
B. При нажатии клавиши A калькулятор увеличивает число в два раза, а при нажатии клавиши B к числу прибавляется 1. На экране записано число 1.
Вам нужно вычислить число, которое получится на экране калькулятора после выполнения заданной последовательности операций.
Формат входного файла input.txt
В единственной строке записана последовательность символов A и B без пробелов. Длина строки не менее одного и не более 50 символов.
Формат выходного файла output.txt
В единственной строке запишите целое число, которое получится после выполнения заданной последовательности операций.
Примеры input.txt
Примеры output.txt
AB
3
BA
4
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.
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);
Другие вопросы из категории
Решить обратную задачу, с пояснениями пожалуйста.
мин. соответственно. Какую сумму насчитает компьютер к оплате за каждый разговор в отдельности и за все вместе?
Читайте также
мму, которая подсчитывает средний балл класса и выводит на экран номера учеников, набравших баллов больше среднего.
информатике.Опишите на русском языке или на одном из языков програмирования алгоритм, который позволяет найти и вывести количество учащихся чья оценка за тест выше средней оценки в классе.
const N=30;
var a: array [1..N] of integer;
i, j: integer;
s: real;
begin
for i:=1 to N do readln(a[i]);
...
end.
цикла (do ...while, while, for). В алгоритме и программе массивов не использовать.
Я здесь набросал все ,что мог, помогите доработать, написать до конца все эти операторы в одну программу,не получается.
#include <iostream>
#include <cstdlib>
#include <conio.h>
#include <math.h>
using namespace std;
int main()
{
float a,z,xn,xk,dx,R,max,min; float count=0,x;
a = 2.94;xn = 1.5;xk = 5.5;dx = 0.4;
while (xn <= xk)
for (x >= xn; x <= xk; x+=dx, dx = dx + 0.4)
{
do
{
z = a*pow((a*x*x*x*x*x*x*x/cos(a*a*a)+1,31),(1/5));
printf("X = %10f, Z = %10f \n", x, z);
dx = dx + 0.4;
}
while (x <= xk);
return 0;
}
{
max = x;min = z;
if (x > max) max = x;
if (z < max) min = z;
if (count > 2) count = 0;
if (count == 2) printf("X = %10f, Z = %10f \n", x, z);
count=0;
}
cout<<"max="<<max<<"\t min="<<min<<"\n";
cout<<"R="<<min-max<<"\n";
system("PAUSE");
return 0;
}
Умножь на 2
Прибавь 1
Выполняя команду номер 1, КАЛЬКУЛЯТОР умножает число на экране на 2, а выполняя
команду номер 2, прибавляет к числу на экране 1. Напишите программу, содержащую не
более 5 команд, которая из числа 6 получает число 33. Укажите лишь номера команд.
Например, программа 12122 -это программа:
Умножь на 2
Прибавь 1
Умножь на 2
Прибавь 1
Прибавь 1
которая преобразует число 5 в число 24.
Дана вещественная матрица А, размерностью n*m. Найти в каждой строке матрицы максимальный элемент.