Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> программа на движение, игра Тараканы 
:(
    Опции темы
Talsy
  Дата 9.2.2008, 03:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 22.12.2007
Где: Одесса

Репутация: нет
Всего: нет



Пишем программку на языке С. (знакомы с масисвами, ф-циями)
Суть  в том что три таракана одновременно начинают движение по горизонтали вправо с разной (допускаются случаи что иногда и с одинаковой) скоростью. Первый добежавший до правого края консоли-победитель. Все!
Три таракана есть-как их заставить двигаться вправо? Я по сути понимаю, что разницу в скорости можно задать через генератор случайных чисел в дипазоне например от1 до 4 для каждого таракашки, а вот с перемещением чего-то никак не доходит.
А как определиь победителя? Подскажите кто что может smile, я овсем чайник в программировании,плиз.

#include <iostream>
#include <windows.h>
#include <conio.h>
#include<stdlib.h>
#include<time.h>
using namespace std;

HANDLE h=GetStdHandle(STD_OUTPUT_HANDLE);
COORD c;
void Tarakan1()
{     

    SetConsoleTextAttribute(h,12);
    c.X=1;
    c.Y=3;
    SetConsoleCursorPosition (h,c);
    cout<<"=э@<\n\n";
    
}
void Tarakan2()
{     
    SetConsoleTextAttribute(h,14);
    c.X=1;
    c.Y=7;
    SetConsoleCursorPosition (h,c);
    cout<<"=э@<\n\n";
}
void Tarakan3()
{
    SetConsoleTextAttribute(h,10);
    c.X=1;
    c.Y=11;
    SetConsoleCursorPosition (h,c);
    cout<<"=э@<\n\n";
    }


З.Ы. такое количество библиотек, рассчитано еще и на то, что я пишу меню и тотализатор для забегаsmile
PM MAIL ICQ   Вверх
susanin
Дата 10.2.2008, 01:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 587
Регистрация: 7.10.2006
Где: Санкт-Петербург

Репутация: 2
Всего: 7



ну могу дать такую идею..на вскидку....создать одномерный массив-это будет дистанция...рандомно выбирать значение переменной i для двух тараканов...а далее сделать цикл типа for(int i=0;i<end;i++) ///e каждого i будет увеличиваться по разному...у кого быстрее увеличится до конца массива (end) тот и победил...
PM MAIL   Вверх
Dronchik
Дата 15.2.2008, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Звукач ёмаё
**


Профиль
Группа: Участник
Сообщений: 451
Регистрация: 1.5.2007

Репутация: 1
Всего: 37



Talsy, во первых. Юзай тег .
По теме: 
Цитата(susanin @  10.2.2008,  01:21 Найти цитируемый пост)
создать одномерный массив-это будет дистанция...рандомно выбирать значение переменной i для двух тараканов...а далее сделать цикл типа for(int i=0;i<end;i++) ///e каждого i будет увеличиваться по разному...у кого быстрее увеличится до конца массива (end) тот и победил...

Можно создать 3 переменных, которые будут принимать значения пройденого пути каждого таракана. Тараканов можно двигать кареткой. То есть каретку ставишь перед тараканом и добавлять от 1 до 4 пробелов в зависимости от скорости. и в это же время прибавляешь к переменным число, соответствующее количеству пробелов. И когда одна из переменых превышает опустимое значение, значит один из тараканов победил. Определяешь какой оператором if. Думаю понятно объяснил. О способах управления кареткой почитай в учебниках для новичков по С++.


--------------------
Вместо слов делай дело, от которого ты фанатеешь. (с)

PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0406 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.