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

Керлинг С++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Создание игры, реализованной на зацикленных комнатах. http://www.cyberforum.ru/cpp-beginners/thread1110862.html
Решил писать игру. Смысл заключается в том, чтобы из трёх дверей выбрать правильную. Как это выглядит? Мы появляемся в коридоре, а перед нами три двери. Первая дверь - проход в следующую комнату с дверями. Вторая дверь - дверь с ловушкой, или монстром (смерть, а соответственно и конец игры). Третья дверь - комната с какой-нибудь штукой для выживания. Ну не важно. Вопрос состоит в следующем. Как...
C++ Нерекурсивная функция возведения в степень Реализовать нерекурсивную функцию эффективного возведения в целочисленную степень. Определить инвариант для этого алгоритма. Помогите пожалуйста! Заранее спасибо! http://www.cyberforum.ru/cpp-beginners/thread1110858.html
C++ Интерфейс функции и класса
Часто встречаются понятия как интерфейс функции и класса.Если я правильно понимаю,то интерфейс функции-это её прототип:возвращаемое значение,имя и параметры.По прототипу можно понять,как работать с функцией.А что представляет собой интерфейс класса?
Двумерные массивы и возврат значения из функции C++
Доброго времени суток уважаемые фуромчане! Решил обратиться к более опытным людям ибо сам допереть не могу:) Ситуация вот в чём.Нужно написать программу которая бы выделяла динамическую память под двумерный массив?передавала его в функцию,а та в свою очередь проверяла бы являются ли элементы этого двумерного массива числами фибоначи. Задача до безобразия простая по идее.Но вот реализованная...
C++ Библиотека string.h, функция strcat http://www.cyberforum.ru/cpp-beginners/thread1110839.html
Написал вот такое, но в программе все равно текст не выводит. Должно работать точно также, как и обычная библиотека strcat. char * strcat ( char * destination, const char * source ) { int size1= sizeof((char*)destination)/sizeof((char*)destination); int size2= sizeof((char*)source)/sizeof((char*)source); size2=size1+size2; int c=0; for(int i=size1;i<size2;i++)
C++ Работа с чтением/записью бинарного файла Здравствуйте. Хочу создать бинарный файл, туда записать число. Затем его закрыть, заново открыть и прочитать из него записанное число в другую переменную. Все, вроде, работает, только в указанной папке (просто диск С) этого файла нет, он как будто не создается. Подскажите, в чем проблема? #include <iostream> //Для работы с клавиатурой #include <fstream> //Для работы с файлами using namespace... подробнее

Показать сообщение отдельно
Amandosov
Знаток
156 / 156 / 65
Регистрация: 18.11.2012
Сообщений: 411
Записей в блоге: 2
04.03.2014, 15:12     Керлинг С++
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include <iostream>
#include<math.h>
 
using namespace std;
 
int main()
{
  int n;
  double x1[101],x2[101],y1[101],y2[101],x,y,r;
  cin>>n;
  for(int i=0;i<n;i++)
  cin>>x1[i]>>y1[i];
  for(int i=0;i<n;i++)
  cin>>x2[i]>>y2[i];
  
  cin>>x>>y>>r;
  
  double minx1=x1[0],miny1=y1[0];
  double minx2=x2[0],miny2=y2[0];
  
  for(int i=0;i<n;i++)
  if(((x-x1[i])*(x-x1[i])+(y-y1[i])*(y-y1[i]))<((x-minx1)*(x-minx1)+(y-miny1)*(y-miny1)))
  {
    minx1=x1[i];
    miny1=y1[i];
  }
  
  for(int i=0;i<n;i++)
  if(((x-x2[i])*(x-x2[i])+(y-y2[i])*(y-y2[i]))<((x-minx2)*(x-minx2)+(y-miny2)*(y-miny2)))
  {
    minx2=x2[i];
    miny2=y2[i];
  }
  
  double mind1,mind2;
  mind1=sqrt((x-minx1)*(x-minx1)+(y-miny1)*(y-miny1));
  mind2=sqrt((x-minx2)*(x-minx2)+(y-miny2)*(y-miny2));
  
  if(mind1>r&&mind2>r||mind1==mind2) {cout<<"Draw"; return 0;}
  
  if(mind1<mind2) 
  {
      int k=0;
      for(int i=0;i<n;i++)
      {double d=sqrt((x-x1[i])*(x-x1[i])+(y-y1[i])*(y-y1[i]));
      if(d<mind2&&d<=r) k++;
      }
      
      if(k==1) cout<<"Red team wins 1 stone";
      else cout<<"Red team wins "<<k<<" stones";
      return 0;
  }
    int k=0;
    for(int i=0;i<n;i++)
    {double d=sqrt((x-x2[i])*(x-x2[i])+(y-y2[i])*(y-y2[i]));
    if(d<mind1&&d<=r) k++;
    }
     
    if(k==1) cout<<"Yellow team wins 1 stone";
    else cout<<"Yellow team wins "<<k<<" stones";
    return 0;
  
}
 
Текущее время: 23:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru