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

Реализация алгоритма - C++

Восстановить пароль Регистрация
 
crazy1ua
2 / 2 / 0
Регистрация: 09.12.2012
Сообщений: 65
05.12.2013, 21:25     Реализация алгоритма #1
Смотрите, есть функция для рисования сегмента круга:
pieslice(int x, int y, int start, int end, int radius) - int start и int ende угол начала и конца.

Не могу придумать как в первый раз старт был нулем, а последующие концом предыдущего .
Конец ищу с помощью: end=a[i]*koeficient.
И это всё в цикле.

Какие будут идеи?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.12.2013, 21:25     Реализация алгоритма
Посмотрите здесь:

C++ Реализация алгоритма Мандельброта
Реализация алгоритма C++
C++ реализация алгоритма кодирования
Реализация алгоритма Йена на С++ C++
C++ Реализация LCS алгоритма на с++
Реализация алгоритма RLE C++
Реализация алгоритма FOREL C++
C++ Реализация алгоритма Дейкстры

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrCold
851 / 749 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
05.12.2013, 21:30     Реализация алгоритма #2
Что- то вроде такого .
start и end передать по ссылке
C++
1
2
3
4
5
6
7
8
9
10
11
pieslice(int x, int y, int & start, int & end, int radius) 
 
 
...........................
int start = 0;
 
  while(.....)
    {
         pieslice(x,  y, start, end, radius) ;
         start = end;
      }
crazy1ua
2 / 2 / 0
Регистрация: 09.12.2012
Сообщений: 65
05.12.2013, 23:04  [ТС]     Реализация алгоритма #3
Цитата Сообщение от MrCold Посмотреть сообщение
Что- то вроде такого .
start и end передать по ссылке
C++
1
2
3
4
5
6
7
8
9
10
11
pieslice(int x, int y, int & start, int & end, int radius) 
 
 
...........................
int start = 0;
 
  while(.....)
    {
         pieslice(x,  y, start, end, radius) ;
         start = end;
      }
Нам нужно сделать переменную которая будет сохранять после использования цикла, потом использоваться как старт и опять обновляться. Жаль, на словах объяснить могу, а вот в виде кода..(

Добавлено через 1 час 27 минут
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    int n, *p, sum=0, koef=0, start=0, end, j=1;
    cout<<"Number massive:\n";
    cin>>n;
    p=new int[n];
    cout<<"Massive:\n";
    for(int i=0; i<n; i++)
    {
            cin>>p[i];
            sum+=p[i];
    }
    koef=360/sum;
    for (i=0;i<n;i++)
    {
    setfillstyle(SOLID_FILL, ++j);
    end=start+p[i]*koef;    
    pieslice(320, 240, start, end, 175);
    start=end;
 //   cout<<end<<endl;
    }
Сделал!
Yandex
Объявления
05.12.2013, 23:04     Реализация алгоритма
Ответ Создать тему
Опции темы

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