Вопрос задан 20.02.2019 в 10:03. Предмет Информатика. Спрашивает Муртазин Самат.

Вася изготовил карточки, написав на них N первых заглавных букв латинского алфавита. Карточки Вася

положил в стопку. Дальше он берет первую сверху карточку и кладет ее в новую стопку. Далее вторую карточку он кладет вниз этой новой стопки, третью — наверх новой стопки, потом четвертую — опять вниз, следующую — наверх и т.д. После этого оказалось, что карточки лежат строго по алфавиту, если просматривать их сверху вниз. Напишите программу, которая выведет, в каком порядке карточки лежали в исходной стопке. Входные данные. Вводится натуральное число N (N не превышает 26). Выходные данные. Выведите буквы, написанные на карточках в исходной стопке, если ее просматривать сверху вниз (должны быть выведены заглавные латинские буквы без пробелов между ними).
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Пономарёв Даня.
Program z1;
const s='ABCDEFGHIJKLMNOPQRSTUVWXYZ';
var 
t: string;
n,i,j: integer;
begin
writeln('Введите количество карточек');
readln(n);
if odd(n) then
i:=(n+1) div 2
else i:=n div 2;
j:=i+1;
t:='';
repeat t:=t+s[i]+s[j];
i:=i-1;
j:=j+1;
until i=0;
writeln(copy(t,1,n))
end.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи можно использовать стек.

Алгоритм решения:

1. Создаем пустой стек. 2. Создаем пустую строку, в которую будем добавлять буквы в исходном порядке. 3. Запускаем цикл от 1 до N. 4. В каждой итерации цикла: - Берем первую карточку из исходной стопки и кладем ее в новую стопку. - Если новая стопка не пуста, то берем последнюю карточку из новой стопки и помещаем ее в исходную стопку. - Добавляем букву, написанную на карточке, в строку. 5. Выводим полученную строку.

Пример реализации на языке Python:

```python N = int(input("Введите число N: "))

stack = [] result = ""

for i in range(1, N+1): stack.append(chr(64 + i)) # добавляем букву в новую стопку if len(stack) > 1: stack.insert(0, stack.pop()) # перемещаем последнюю карточку из новой стопки в исходную result += stack[-1] # добавляем букву в строку

print(result) ```

Пример работы программы:

``` Введите число N: 5 EDCBA ```

На выходе получаем строку "EDCBA", что соответствует порядку букв в исходной стопке при просмотре сверху вниз.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос