0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 35

Циклы

25.07.2012, 22:35. Показов 4656. Ответов 68
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужна помощь с циклом.Есть определенный массив из которого необходимо вытащить данные и поставить в цикл, так же необходимо делать проверку, вот что у меня получилось:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
LPDIRECT3DTEXTURE9 values[4];
    values[0] = Green; 
    values[1] = Red; 
    values[2] = Yellow; 
    values[3] = Blue; 
 
    while (GetAsyncKeyState(VK_NUMPAD1) &1 )
     {
         for (int i=0; i <= 4; ++i)
        {
        x = values[i];
        bFugas = !bFugas;
        }
        
 
     }
Т.Е при нажатии на num1 , должна происходить смена цвета)
P.S Надеюсь написал понятным языком)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.07.2012, 22:35
Ответы с готовыми решениями:

Заменить в коде циклы for на циклы while
int i, j, n; bool a; cin &gt;&gt; i &gt;&gt; n; for (i; i&lt;n; i++) { a = true; for (j = 2; j &lt;= i / 2; j++) if ((i%j) == 0) a =...

циклы
с точностью е=0.001

циклы for, while
for: Среди всех n-значных чисел (n = 1,2,3,4) указать те, сумма цифр которых равна данному числу k. while: Дано натуральное число n....

68
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
26.07.2012, 12:08
Студворк — интернет-сервис помощи студентам
А в вашем коде, что с подсветкой происходит? Если один цвет задать через x = values[], без опроса нажатия клавиши, без циклов, то код работает?
1
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 35
26.07.2012, 12:14  [ТС]
Цитата Сообщение от alsav22 Посмотреть сообщение
А в вашем коде, что с подсветкой происходит? Если один цвет задать через x = values[], без опроса нажатия клавиши, без циклов, то код работает?
Нет, необходимо нажатие клавиши, для включения и выключения подсветки. bFugas = !bFugas; отвечает за включение, отключение подсветки. Дается такой код
C
1
2
if(GetAsyncKeyState( VK_NUMPAD1 )&1) 
bFugas = !bFugas;
Я хочу его переделать, чтоб по нажатию цвет переключался, а не просто включился выключился)
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
26.07.2012, 12:24
А если так прописано:
C++
1
2
if(GetAsyncKeyState( VK_NUMPAD1 )&1) 
bFugas = !bFugas;
, то код работает? Меня интересует, без ваших изменений, код, сам по себе, рабочий?
0
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 35
26.07.2012, 12:26  [ТС]
Цитата Сообщение от alsav22 Посмотреть сообщение
А если так прописано:
C++
1
2
if(GetAsyncKeyState( VK_NUMPAD1 )&1) 
bFugas = !bFugas;
, то код работает? Меня интересует, без ваших изменений, код, сам по себе, рабочий?
Да (5 символов...)
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
26.07.2012, 12:38
Начальные значения bFugas, Fugas какие?

Добавлено через 2 минуты
Если так написать:
C++
1
2
3
4
5
if (GetAsyncKeyState(VK_NUMPAD1) &1 )
    {
        x = values[1];
        bFugas = !bFugas;
    }
, то цвет на красный меняется?
0
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 35
26.07.2012, 12:39  [ТС]
Цитата Сообщение от alsav22 Посмотреть сообщение
Начальные значения bFugas, Fugas какие?
Они задаются здесь (точнее цвет и подсветка):
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
if (bFugas) 
 { 
 if (Fugas) 
 { 
 DWORD dwOldZEnable; 
 m_pD3Ddev->GetRenderState(D3DRS_ZENABLE,&dwOldZEnable); 
 m_pD3Ddev->SetRenderState(D3DRS_ZENABLE,D3DZB_FALSE); 
 m_pD3Ddev->SetTexture(0,White);
 m_pD3Ddev->DrawIndexedPrimitive(device,BaseVertexIndex,MinVertexIndex,NumVertices,startIndex,primCount); 
 m_pD3Ddev->SetRenderState(D3DRS_ZENABLE,dwOldZEnable); 
 m_pD3Ddev->SetTexture(0,values[i]);
 } 
;
}
bFugas: bool bFugas = false;
Fugas: #define Fugas ((NumVertices == 1541 && primCount == 1220)
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
26.07.2012, 12:40
C++
1
m_pD3Ddev->SetTexture(0,x);
Это ваша добавка в код?
0
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 35
26.07.2012, 12:45  [ТС]
Цитата Сообщение от alsav22 Посмотреть сообщение
Начальные значения bFugas, Fugas какие?

Добавлено через 2 минуты
Если так написать:
C++
1
2
3
4
5
if (GetAsyncKeyState(VK_NUMPAD1) &1 )
    {
        x = values[1];
        bFugas = !bFugas;
    }
, то цвет на красный меняется?
Нет вылазит ошибка

Добавлено через 45 секунд
Цитата Сообщение от alsav22 Посмотреть сообщение
C++
1
m_pD3Ddev->SetTexture(0,x);
Это ваша добавка в код?
Только х, там стоял цвет
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
26.07.2012, 12:45
У вас в
C++
1
2
3
4
5
6
7
8
if (bFugas) 
 { 
 if (Fugas) 
 { ..............
m_pD3Ddev->SetTexture(0,White);
..............................................
m_pD3Ddev->SetTexture(0,values[i]);
...................................................
Как это сочетается?
0
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 35
26.07.2012, 12:47  [ТС]
Цитата Сообщение от alsav22 Посмотреть сообщение
C++
1
m_pD3Ddev->SetTexture(0,x);
Это ваша добавка в код?
Только х, там стоял цвет

Добавлено через 47 секунд
Цитата Сообщение от alsav22 Посмотреть сообщение
У вас в
C++
1
2
3
4
5
6
7
8
if (bFugas) 
 { 
 if (Fugas) 
 { ..............
m_pD3Ddev->SetTexture(0,White);
..............................................
m_pD3Ddev->SetTexture(0,values[i]);
...................................................
Как это сочетается?
1 Для подсветки сквозь стены, 2 для близи, т.е когда видишь объект перед собой
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
26.07.2012, 12:51
Если так написать:
C++
1
2
3
4
5
if (GetAsyncKeyState(VK_NUMPAD1) &1 )
    {
        x = Red;
        bFugas = !bFugas;
    }
, то цвет меняется?
0
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 35
26.07.2012, 12:57  [ТС]
Цитата Сообщение от alsav22 Посмотреть сообщение
Если так написать:
C++
1
2
3
4
5
if (GetAsyncKeyState(VK_NUMPAD1) &1 )
    {
        x = Red;
        bFugas = !bFugas;
    }
, то цвет меняется?
Нет, не работает.
Я подумал, тут х не нужен вообще) вместо него сразу написать values[i] а дальше уже от этого плясать
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
26.07.2012, 13:10
Если записать так:
C++
1
2
if (GetAsyncKeyState(VK_NUMPAD1) &1 )
        bFugas = !bFugas;
и так:
C++
1
m_pD3Ddev->SetTexture(0, Red);
, то всё правильно работает? Цвет меняется?
0
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 35
26.07.2012, 13:13  [ТС]
Цитата Сообщение от alsav22 Посмотреть сообщение
Если записать так:
C++
1
2
if (GetAsyncKeyState(VK_NUMPAD1) &1 )
        bFugas = !bFugas;
и так:
C++
1
m_pD3Ddev->SetTexture(0, Red);
, то всё правильно работает? Цвет меняется?
Да загорается красным, а при 2 нажатии перестает подсвечивается
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
26.07.2012, 13:31
Если так:
C++
1
2
if (GetAsyncKeyState(VK_NUMPAD1) &1 )
             bFugas = !bFugas;
и так:
C++
1
m_pD3Ddev->SetTexture(0, values[1]);
0
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 35
26.07.2012, 13:40  [ТС]
Цитата Сообщение от alsav22 Посмотреть сообщение
Если так:
C++
1
2
if (GetAsyncKeyState(VK_NUMPAD1) &1 )
             bFugas = !bFugas;
и так:
C++
1
m_pD3Ddev->SetTexture(0, values[1]);
да...
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
26.07.2012, 14:09
C++
1
2
3
4
5
if (GetAsyncKeyState(VK_NUMPAD1) &1 )
    {
        int i = 1;
        bFugas = !bFugas;
    }
C++
1
m_pD3Ddev->SetTexture(0, values[i]);
И что происходит, если три раза нажать?
0
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 35
26.07.2012, 14:12  [ТС]
о5 ошибка, таже самая что и с х
http://www.keepme.ru/upload/previews/2012/07/26/aa6fb96254ca53f0723652d082c2526d.png

Добавлено через 1 минуту
Цитата Сообщение от alsav22 Посмотреть сообщение
C++
1
2
3
4
5
if (GetAsyncKeyState(VK_NUMPAD1) &1 )
    {
        int i = 1;
        bFugas = !bFugas;
    }
C++
1
m_pD3Ddev->SetTexture(0, values[i]);
И что происходит, если три раза нажать?
снова включается, сама ф-ия GetAsyncKeyState представляет из себя некий цикл...
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
26.07.2012, 14:20
Если так:
C++
1
2
3
4
5
6
int i = 3;
    if (GetAsyncKeyState(VK_NUMPAD1) &1 )
    {
        i = 1;
        bFugas = !bFugas;
    }
C++
1
m_pD3Ddev->SetTexture(0, values[i]);
Добавлено через 2 минуты
о5 ошибка, таже самая что и с х
Эта ошибка возникает до нажатия?
0
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 35
26.07.2012, 14:29  [ТС]
Цитата Сообщение от alsav22 Посмотреть сообщение
Если так:
C++
1
2
3
4
5
6
int i = 3;
    if (GetAsyncKeyState(VK_NUMPAD1) &1 )
    {
        i = 1;
        bFugas = !bFugas;
    }
C++
1
m_pD3Ddev->SetTexture(0, values[i]);
Добавлено через 2 минуты
Эта ошибка возникает до нажатия?
нет при нажатии

Добавлено через 5 минут
а есть сделать так:
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
    
    int color=0;
 
 
    while (GetAsyncKeyState(VK_NUMPAD1) &1 )
    {
    for(int a=0; a<4;a++)
    {
        color++;
        bFugas = !bFugas;
 
    }
    }
 
 
if (bFugas) 
 { 
     if (Fugas) 
 { 
 DWORD dwOldZEnable; 
 m_pD3Ddev->GetRenderState(D3DRS_ZENABLE,&dwOldZEnable); 
 m_pD3Ddev->SetRenderState(D3DRS_ZENABLE,D3DZB_FALSE); 
 m_pD3Ddev->SetTexture(0,White);
 m_pD3Ddev->DrawIndexedPrimitive(device,BaseVertexIndex,MinVertexIndex,NumVertices,startIndex,primCount); 
 m_pD3Ddev->SetRenderState(D3DRS_ZENABLE,dwOldZEnable); 
 if(color=1)m_pD3Ddev->SetTexture(0,Red);
 if(color=2)m_pD3Ddev->SetTexture(0,White);
 if(color=3)m_pD3Ddev->SetTexture(0,Green);
 if(color=4)m_pD3Ddev->SetTexture(0,Blue);
 if(color=5)m_pD3Ddev->SetTexture(0,Black);
 } 
 }
Что надо исправить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.07.2012, 14:29
Помогаю со студенческими работами здесь

Циклы
Воозникли трудности. Можете помочь ?) Необходимо протабулировать функции, зависящее от 2 переменных или от нескольких параметров....

Циклы
1)Используя перебор значений найти все числа из диапазона от n до m, которые при возведении в квадрат дают палиндром 2)В соревнованиях...

Циклы do и while
Приветсвую всех. Прошу помощи в решении двух задач: 1.Составить программу для определения, является ли натуральное число k степенью...

Циклы
Дан номер телевизионного канала(от 1 до 5). Вывести на экран наиболее популярные программы заданного канала.

Циклы
Как написать программу, в которой нужно сложить значения получаемые в цикле? z=sin(\sum_{3}^{10}(a*k+c)) a,c известны


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

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

Новые блоги и статьи
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
Модель здравосохранения 17. Планы на выгорание
anaschu 23.05.2026
Вот конкретная схема реализации: В классе Работник добавить: накопленнаяУсталость — растёт каждый час работы, снижается в перерывы и болезни коэффициентПрезентеизма — снижает продуктивность. . .
Изменение цветов в палитре gif файла aka фавикона
russiannick 23.05.2026
Изменение цветов в палитре gif файла, юзаемого как фавиконка в составе html-файла, помещенная в base64, средствами нативного Java Script, навеянное сном в майский день. Для работы необходим браузер,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru