Форум программистов, компьютерный форум CyberForum.ru

Задача про стопку карточек - C++

Восстановить пароль Регистрация
 
Ricco
0 / 0 / 0
Регистрация: 21.09.2012
Сообщений: 22
27.11.2013, 20:56     Задача про стопку карточек #1
Помогите пожалуйста с задачей : Есть n черных и белых карточек, сложенных в стопку. Карточки раскладываются на столе в одну линию следующим образом: первая кладется на стол, вторая вниз стопки, третья на стол, четвертая – вниз стопки и т.д., пока все карточки не будут выложены на стол. Напишите программу, которая определит, каким должно быть исходное расположение карточек в стопке, чтобы расположенные на столе карточки чередовались по цвету: белая, черная,белая,черная.
Есть решение этой задачи , но на Pascal:

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
A[FIN]:=BEG; {следующей за последним элементом - бывший первый}
FIN:=BEG; {меняем ссылку на последний элемент}
BEG:=A[BEG] {новый первый элемент}
A[FIN]:=0 {корректировка ссылки у последнего элемента}
Фрагмент программы будет выглядеть так:
for i:=1 to N-1 do A[i]:=i+1;
A[N]:=0; {установка ссылок в списке}
BEG:=1; FIN:=N;
COLOR:=1; {белый цвет = 1, черный = 0}
while A[BEG]<>0 do 
{пока первый элемент не является} {одновременно и последним}
begin
BEFORE:=BEG; {сохраняем индекс начала списка}
BEG:=A[BEG]; {удаляем первый элемент из списка}
A[BEFORE]:=COLOR; {раскрашиваем удаленный элемент} 
{в нужный цвет}
COLOR:=1-COLOR; {меняем цвет}
A[FIN]:=BEG;  {переставляем элемент из}
FIN:=BEG;  {начала списка в конец}
BEG:=A[BEG];
A[FIN]:=0
end;
A[BEG]:=COLOR;  {раскрашиваем последний элемент}
{списка}
for i:=1 to N do  {распечатка цветов}
if A[i]=0
then writeln('элемент',i,' - черный')
else writeln('элемент',i,' - белый');
Пожалуйста помогите решить или перевести на С++, понятия не имею как реализовать задачу
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2013, 20:56     Задача про стопку карточек
Посмотрите здесь:

C++ Задача про водопровод
C++ Задача про буквы
C++ Задача про кузнечиков
C++ Задача про синусоиду
задача про матрицы C++
C++ Задача про графы
Задача про Домино-2 C++
C++ Задача про небоскребы

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 16:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru