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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Ricco
0 / 0 / 0
Регистрация: 21.09.2012
Сообщений: 22
#1

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

27.11.2013, 20:56. Просмотров 400. Ответов 0
Метки нет (Все метки)

Помогите пожалуйста с задачей : Есть 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,' - белый');
Пожалуйста помогите решить или перевести на С++, понятия не имею как реализовать задачу
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2013, 20:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задача про стопку карточек (C++):

Дано n карточек, сложить из карточек один большой квадрат (без пустот). Сколько карточек останется? - C++
У Пети есть n квадратных карточек. Он хочет сложить из них один большой квадрат (без пустот). Сколько карточек у него останется? ...

Задача про календарь - C++
Имеется задача: Два одноклассника Петя и Вася родились не ранее 1993 и не позднее 1994 года, причем, Петя старше Васи. Напишите...

Задача про небоскребы - C++
В небоскребе N этажей и всего один подъезд; на каждом этаже по 3 квартиры; лифт может останавливаться только на нечетных этажах....

задача про Перегоны - C++
На некоторой железнодорожной ветке расположено N станций, которые последовательно пронумерованы числами от 1 до N. Известны расстояния...

Задача про Домино-2 - C++
Пожалуйста, помогите срочно!! Желательно код, или помогите переделать задачу про домино ранее на этом сайте:...

Задача про монахов - C++
Условие такое: Имеется n монахов и m пирогов. Ведущий монах съедает за один раз 10 пирогов, обычный - 5, ученик монаха - 0.5. Вывести все...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2013, 20:56
Привет! Вот еще темы с ответами:

Задача про ракету - C++
Нужно решить задачу,написав код на с++. Ракета массой 300 т стартует с Земли. Через какое время она достигнет высоты 40 км, если за...

Задача про рюкзак - C++
Из заданных N предметов выбрать такие, чтобы суммарный вес был менее 30 кг, а стоимость - наибольшей. Напечатать суммарную стоимость. ...

Задача про триугольник - C++
Треугольник задан координатами своих вершин. Найти периметр и площадь.

Задача про банк - C++
Вечер добрый! Прошу помощи, товарищи! Задание на скрине) #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;conio.h&gt; void main() { ...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru