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

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

Войти
Регистрация
Восстановить пароль
 
Андрей1992
0 / 0 / 1
Регистрация: 13.06.2012
Сообщений: 60
#1

Найти координаты числа в бесконечной спирали из чисел - C++

28.10.2013, 17:09. Просмотров 305. Ответов 1
Метки нет (Все метки)

Дана бесконечная во все стороны спираль из чисел, в центре которой - единица, нужно найти координаты числа по самому числу. (Прикрепил)
В общем-то идея только одна, строить спираль в массиве [-500..500][-500..500]
Знаю, что должна быть формула.
Изображения
 
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2013, 17:09     Найти координаты числа в бесконечной спирали из чисел
Посмотрите здесь:

координаты точек на спирали - C++
Не знал в какой раздел написать... Подскажите пожалуйста, как по спирали равномерно вывести символы? Точнее больше интересует сам...

Найти координаты числа в матрице - C++
Имеем кусочек программы который находит минимальное число в матрице for (int i=0;i<n;i++) { for (int j=0;j<n;j++) { ...

В массивах вещественных чисел X и Y записаны координаты точек на плоскости. Найти длины отрезков - C++
Помогите написать программу. В массивах вещественных чисел X и Y записаны координаты точек на плоскости. Найти длины отрезков и...

Даны действительные числа х1, у1, х2, у2, …,х10, у10. Найти периметр десятиугольника, вершины которого имеют соответственно координаты (х1, у1), (х2, - C++
Даны действительные числа х1, у1, х2, у2, …,х10, у10. Найти периметр десятиугольника, вершины которого имеют соответственно координаты (х1,...

Числа забиваются по спирали. Двумерный массив - C++
Доброго времени суток, мой первый опыт в создании динамического массива , поэтому просьба не судить слишком строго, а указать на мои...

Дан текстовый файл.текст. числа, разделённые пробелами. Найти количество положительных чисел. Удалить строку с min количеством чисел (на С) - C++
Дан текстовый файл, состоящий из одной или нескольких строк. Каждая строка файла содержит числа, разделенные пробелами. Найти количество...

Запись в матрицу по спирали (ввод чисел с клавиатуры) - C++
Нужно ввести n чисел с клавиатуры они записываются в матрицу по спирали из центра (не важно против часовой или по часовой) и если кол-во...

Найти длину периода и сам период бесконечной степенной дроби по основанию Р - C++
время поджимает, завтра сдавать. препод ни фига не объясняет!!! есть решение, осталось написать прогу на C++. Задача №1 Имеется N...

Получить целочисленную матрицу порядка 7, элементами которой являются числа 1, 2, …, 49, расположенные в ней по спирали. - C++
помогите на с++ прогу написать получить целочисленную квадратую матрицу порядка 7,элементами которого являються числа 1,2,...,49...

Найти суму чисел, введенного целого числа - C++
.Найти суму чисел, введенного целого числа(например 12345 будет 15 ).Через for на с++


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tulosba
:)
Эксперт С++
4392 / 3235 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
29.10.2013, 00:09     Найти координаты числа в бесконечной спирали из чисел #2
Не уверен, что оптимально, но как-то так:
C++
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
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
#include <cstdlib>
 
int main(int argc, char *argv[])
{ 
    const int value = 91;
 
    int v = value - 1;
 
    int helix = 0;
    int start = 1;
    for(; v>0; ++helix )
    {
        v -= (helix+1)*8;
        start += 8*helix;
    }
 
    int sideLen = helix * 2;
 
    int rest = value - start;
 
    int X = helix;
    int Y = -helix;
 
    int sideId = rest / sideLen;
    rest %= sideLen;
 
    switch( sideId )
    {
        case 0: Y += rest; break;
        case 1: Y += sideLen; X -= rest; break;
        case 2: Y += sideLen - rest; X -= sideLen; break;
        case 3: X -= sideLen - rest; break;
    }
 
    std::cout << "(" << X << "," << Y << ")" << std::endl;
 
    std::system( "pause" );
 
    return 0;
}
Yandex
Объявления
29.10.2013, 00:09     Найти координаты числа в бесконечной спирали из чисел
Ответ Создать тему
Опции темы

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