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

Задача.Магический квадрат. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ double функции в библиотеке math.h http://www.cyberforum.ru/cpp-beginners/thread384585.html
Коллеги, помогите, пожалуйста, разобраться в следующей проблеме. См. прикрепленный файл. Почему функции из библиотеки math.h не принимают целый тип? Обязательно нужно преобразовывать к вещественному. В то же время моя функция принимает целые числа, хотя имеет такой же прототип. Спасибо.
C++ удалить слово из строки Доброго времени суток ! Задача: ввести строку и слово, если в строке встречается это слово, удалить из строки его и вывести строку. код нужен на С (если не трудно, то с комментариями). можно использовать string.h (как мне писали в пред теме использовать strtok & strcmp) можно еще поделиться программами с использованием этих функций :) Заранее благодарю ! ... http://www.cyberforum.ru/cpp-beginners/thread384581.html
Система исчисления) C++
Ребята, кто-то знает, как написать программу, которая делает операцию сложения в восьмеричной системе исчисления?? и подносит в квадрат числа от 0 до 7..) Помогите, плиз)
C++ Вопрос про удаление символа с определенной позиции в строке
Дано задание по многопоточным потокам в си. Есть разделяемая переменная F типа str, если нажата клавиша от 1 до 9, то происходит стирание символа в позиции N, а если нажата alt+(от 1 до 9), то Восстановление символа в позиции N. Так же дан пример работы, но он дан для типа int : // при нажатии "1" -> F=F+1 (операция 1) // при нажатии "0" -> F=F-1 (операция 2) #include <windows.h> #include...
C++ Даны положительные x, y, z. Выяснить, существует ли треугольник http://www.cyberforum.ru/cpp-beginners/thread384563.html
Даны положительные x, y, z. Выяснить, существует ли треугольник с длинами сторон х, у, z. Ответ получить в текстовой форме: "существует" или "не существует".
C++ В чем проблемка? Сделал метод итерации, но програма после компиляции как бегущая строка... в чем ошибка програми? #include <iostream.h> #include <conio.h> #include <math.h> int main() { int k=0; float eps,x1,xn1,x2,xn2,x3,xn3; cout<<"Vvedit x1="; cin>>x1; подробнее

Показать сообщение отдельно
TwiX
60 / 60 / 1
Регистрация: 27.10.2011
Сообщений: 189
15.11.2011, 21:04
Самое простое - перебор + рекурсия. Рискну предположить, что любой квадрат можно привести к магическому не более чем за ~10 ходов. А так как на каждом ходу возможно всего 12 вариантов, то в 3 секунды такая прога должна уложится.
Делаешь функцию:
bool FindMagicSquare(int *sq, int N);
Где sq - числа в квадрате, а N число итераций - сколько можно сделать функции. Если находит квадрат, то возвращает true.
И потом пишешь цикл:
C++
1
2
int i=0;
while (!FindMagicSquare(sq, ++i)) ;
В функцию ещё массив надо передавать, который ходы будет записывать.

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