Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.03.2011, 20:20   #1
Kerragin
Пользователь
 
Регистрация: 09.12.2010
Сообщений: 34
Печаль Задачи с массивами

Недавно начал изучать массивы,немного научился их перебирать,но задачи такого уровня не знаю как делать,помоги пожалуйста их решить:

1)В заданном одномерном массиве поменять местами соседние
элементы, стоящие на четных местах, с элементами, стоящими
на нечетных местах.

2)«Суперзамок». Секретный замок для сейфа состоит из 10
расположенных в рад ячеек, в которые надо вставить игральные
кубики. Но дверь открывается только в том случае, когда в любых
трех соседних ячейках сумма точек на передних гранях кубиков
равна 10. (Игральный кубик имеет на каждой грани от 1 до 6 точек.)
Напишите программу, которая разгадывает код замка при
условии, что два кубика уже вставлены в ячейки.

Язык С++

Последний раз редактировалось Kerragin; 29.03.2011 в 21:51. Причина: другой язык
Kerragin вне форума Ответить с цитированием
Старый 29.03.2011, 20:24   #2
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

1)
Код:
i:=1;
while i<=n do begin
t:=a[i];
a[i]:=a[i+1];
a[i+1]:=t;
i:=i+2;
end;
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 29.03.2011, 20:53   #3
Ezhuk
Форумчанин
 
Регистрация: 09.10.2010
Сообщений: 217
По умолчанию

2.
Код:
i:=2;
while i<=9 do begin
a[i]:=10-a[i-1]-a[i-2];
i:=i+1;
end;
что-то вроде этого.


А еще можно проверить что бы a[0]+a[1]<=9 и >3.
проверять что бы a[i] была от 1 до 6 вроде тут не надо, но не уверен
Ёж птица гордая, пока не пнешь не полетит.
Ezhuk вне форума Ответить с цитированием
Старый 29.03.2011, 21:28   #4
Kerragin
Пользователь
 
Регистрация: 09.12.2010
Сообщений: 34
По умолчанию

спасибо конечно,но что тоу меня не очень хочет скомпилироваться
Kerragin вне форума Ответить с цитированием
Старый 29.03.2011, 21:30   #5
Сtrl
C++
Форумчанин
 
Аватар для Сtrl
 
Регистрация: 27.03.2011
Сообщений: 803
По умолчанию

Язык-то какой? C++ небось?
Ищете информацию по C++?
cplusplus.com
Сtrl вне форума Ответить с цитированием
Старый 29.03.2011, 21:33   #6
Kerragin
Пользователь
 
Регистрация: 09.12.2010
Сообщений: 34
По умолчанию

да,С++,мой компилятор VS 2010,хз может с ним проблемы
Kerragin вне форума Ответить с цитированием
Старый 29.03.2011, 21:41   #7
Сtrl
C++
Форумчанин
 
Аватар для Сtrl
 
Регистрация: 27.03.2011
Сообщений: 803
По умолчанию

Нет. Просто вам предоставили код на Паскале. На C++ эти примеры выглядят так:
1)
Код:
for (int i = 1; i <= n; i += 2)
{
	int t = a[i];
	a[i] = a[i+1];
	a[i+1] = t;
}
2)
Код:
for (int i = 2; i <= 9; i++)
{
	a[i] = 10 - a[i-1] - a[i-2];
}
P.S. Я не проверял исходный код на правильность, просто перевел на другой язык.
Ищете информацию по C++?
cplusplus.com

Последний раз редактировалось Сtrl; 29.03.2011 в 22:36.
Сtrl вне форума Ответить с цитированием
Старый 29.03.2011, 21:51   #8
Kerragin
Пользователь
 
Регистрация: 09.12.2010
Сообщений: 34
По умолчанию

к сожалению есть ошибки
Kerragin вне форума Ответить с цитированием
Старый 29.03.2011, 21:59   #9
Сtrl
C++
Форумчанин
 
Аватар для Сtrl
 
Регистрация: 27.03.2011
Сообщений: 803
По умолчанию

Цитата:
Сообщение от Kerragin Посмотреть сообщение
к сожалению есть ошибки
Синтаксические, или как? Вы, надеюсь, понимаете, что вам предоставили только фрагмент кода, выполняющий задачу, а не всю программу? Некоторые переменные нужно объявить самостоятельно.
В данном случае, это переменная n (кол-во элементов в массиве) и переменная a (сам, непосредственно, массив).
Ищете информацию по C++?
cplusplus.com
Сtrl вне форума Ответить с цитированием
Старый 29.03.2011, 22:04   #10
Kerragin
Пользователь
 
Регистрация: 09.12.2010
Сообщений: 34
По умолчанию

Вот так?!

#include <stdio.h>
#include <iostream>
using namespace std;
int main ()
{
for (int i = 1; i <= n; (i++)++)
{
t = a[i];
a[i] = a[i+1];
a[i+1] = t;
}
return 0;
}
Kerragin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
2 задачи с массивами Vanchel56 Помощь студентам 5 12.02.2011 17:51
Задачи с массивами Alenchik Помощь студентам 4 21.12.2010 20:40
Работа с массивами,2 задачи Павел Бочаров Паскаль, Turbo Pascal, PascalABC.NET 2 20.12.2010 20:54
Задачи с массивами Pina_Kolada Помощь студентам 2 27.11.2010 15:49
массивами C++ 2 задачи Электрон Помощь студентам 2 23.12.2009 21:10