ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1601  
Старый 17.06.2009, 23:51
Аватар для DDN
DDN
Новичок
Регистрация: 26.02.2009
Сообщений: 3
Провел на форуме:
214103

Репутация: 0
Отправить сообщение для DDN с помощью ICQ
По умолчанию

Помогите пожалуйста. Нужно создать турнирную таблицу на C++ Builder. По результату матча проигравшая команда вылетает, выигравшая идет вперед-принцип олимпийской системы.
 
Ответить с цитированием

  #1602  
Старый 20.06.2009, 20:57
Аватар для EniOk
EniOk
Новичок
Регистрация: 06.06.2009
Сообщений: 8
Провел на форуме:
10298

Репутация: 0
Exclamation

Здравствуйте. Помогите пожалуйста. Долгосрочное задание на байлдере. Я просто тупой раз не смог это сотворить сам:

Код:
На плоскости задано множество окружностей. 
Две окружности A и B назовём связанными, если они пересекаются либо существует
 третья окружность C заданного множества, связанная с A и B. 
Выбрать максимальное подмножество попарно не связанных друг с другом окружностей.
Могу предоставить код того что я написал но оно в корне не верно, поэтому наверное легче будет Вам самим составить это адское детище... Очень надо... Помогите плз!
 
Ответить с цитированием

Задача по с++
  #1603  
Старый 20.06.2009, 23:53
Аватар для Тилль
Тилль
Познающий
Регистрация: 26.05.2006
Сообщений: 33
Провел на форуме:
120859

Репутация: 2
Отправить сообщение для Тилль с помощью ICQ
Question Задача по с++

Напишите пожалуйста задачу на С++.
Условие: Открыть текстовый файл, считать с него информацию, отсортировать по алфавиту, места пробелов заполнить амперсандами(&). Сохранить файл на диске.
 
Ответить с цитированием

  #1604  
Старый 21.06.2009, 00:01
Аватар для ss88
ss88
Участник форума
Регистрация: 27.11.2008
Сообщений: 161
Провел на форуме:
298300

Репутация: 128
Отправить сообщение для ss88 с помощью ICQ
По умолчанию

Люди, помогите, плиз, может у кого завалялось, надо на ВинАПИ две функции
1. чтение данных из определленого ключа реестра
2. запись

Знаю, что банальщина, не хватает времени
 
Ответить с цитированием

  #1605  
Старый 21.06.2009, 16:41
Аватар для NightJack
NightJack
Участник форума
Регистрация: 28.02.2007
Сообщений: 151
Провел на форуме:
323494

Репутация: 74
Отправить сообщение для NightJack с помощью ICQ
По умолчанию

Цитата:
Сообщение от ss88  
Люди, помогите, плиз, может у кого завалялось, надо на ВинАПИ две функции
1. чтение данных из определленого ключа реестра
2. запись

Знаю, что банальщина, не хватает времени

http://www.compdoc.ru/prog/pascal/work_with_reg_in_delphi/
http://www.delphisources.ru/pages/faq/base/kol_lesson8.html

Посмотри здесь, может подойдет...
 
Ответить с цитированием

  #1606  
Старый 21.06.2009, 16:48
Аватар для --StraNger--
--StraNger--
Познающий
Регистрация: 04.01.2009
Сообщений: 94
Провел на форуме:
404716

Репутация: 145
Отправить сообщение для --StraNger-- с помощью ICQ
По умолчанию

Цитата:
Сообщение от NightJack  
http://www.compdoc.ru/prog/pascal/work_with_reg_in_delphi/
сказали ведь на winapi =/
 
Ответить с цитированием

  #1607  
Старый 21.06.2009, 16:59
Аватар для Fata1ex
Fata1ex
Постоянный
Регистрация: 12.12.2006
Сообщений: 906
Провел на форуме:
4205500

Репутация: 930


По умолчанию

Функции winapi везде одинаковы ~

http://msdn.microsoft.com/ru-ru/library/sykcb9xf.aspx
http://social.msdn.microsoft.com/Search/ru-RU/?query=registr&ac=8
http://social.msdn.microsoft.com/Search/ru-RU/?query=registry&ac=3
 
Ответить с цитированием

  #1608  
Старый 21.06.2009, 17:08
Аватар для --StraNger--
--StraNger--
Познающий
Регистрация: 04.01.2009
Сообщений: 94
Провел на форуме:
404716

Репутация: 145
Отправить сообщение для --StraNger-- с помощью ICQ
По умолчанию

Цитата:
Сообщение от Fata1ex  
Функции winapi везде одинаковы ~
Совершенно верно. Но приведенная выше ссылка вела на материал по классу TRegisty в Delphi. Это как известно не является winapi
 
Ответить с цитированием

  #1609  
Старый 21.06.2009, 17:11
Аватар для BrainDeaD
BrainDeaD
Постоянный
Регистрация: 09.06.2005
Сообщений: 531
Провел на форуме:
3516666

Репутация: 439


По умолчанию

RegCreateKeyEx
там скроль вниз

http://support.microsoft.com/kb/135398
 
Ответить с цитированием

  #1610  
Старый 21.06.2009, 20:26
Аватар для EniOk
EniOk
Новичок
Регистрация: 06.06.2009
Сообщений: 8
Провел на форуме:
10298

Репутация: 0
По умолчанию

Итак... Все это время я соображал... Задача свелась к тому чтобы выбрать собственно само подмножество окружностей:
Язык я бы назвал так: С++ без классов, потому что на си надо, но разрешено пользоваться немного средствами с++

Вот мой код:
main.cpp
Код:
/************************Preprocessor's operations***********************/
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <conio.h>
#include "d:\ddz\proc.cpp"
/*****************************Global variables***************************/
FILE *in,*out;                   //Servise variables
char inname[80], outname[80];    //Names of input & output files
int count;                       //Count of circles
int i,j,w;				 //
/******************************Main function*****************************/
int main()
{

	clrscr();
	//Ask the user about name of the input file
	printf("Enter the name of input file, please: ");
	scanf("%s", &inname);
	///////////////////////////////////////////

	//Opening input file
	if ((in = FOpen(inname,"r"))==NULL) return 1;
	////////////////////

	//Reading nomber of circles
	fscanf(in, "%d", &count);
	if (count <1)
	{
		printf("Incorrect format of input file\n");
		fclose(in);
		return 1;
	}
	///////////////////////////
	//Declaring array of CIRCLE
	CIRCLE *circle = new  CIRCLE[count];
	////////////////////////

	//Reading circles information
	printf("Information from input file:\n Count of circles: %i\n",count);
	printf("                                 \n");
	printf("  #     X         Y        R     \n");
	for (i=0;i<count;i++)
	{
		fscanf(in,"%f %f %f", &circle[i].x, &circle[i].y, &circle[i].r);
		printf(" %2i   %5.4f   %5.4f   %5.4f \n",i, circle[i].x,circle[i].y,circle[i].r);
		circle[i].crossflag=0;
	}
	printf("                                 ");
	/////////////////////////////
	//Now test)
	//int **s = new int*[count];
int **s = new int*[count];//тут создали только массив указателей
for(i=0;i<count;++i) s[i]=new int[count];//а вот собственно выделение памяти для элементов массива
for(i=0;i<count;++i) for(j=0;j<count;++j) s[i][j]=0;//обнуление
	for (i=0;i<count;i++) for (j=0;j<count;j++) s[i][j]=0;

	MatrixCreator(s, count, circle);
	printf("\n");
	printf("Matrix of atteinability:\n");
	for (i=0;i<count;i++) {for (j=0;j<count;j++) if (i!=j)printf(" %i",s[i][j]); else printf(" °"); printf("\n");};
	///////////
	getch();
	int *mas=new int[count];

  	Vibor(s, count, mas);
	printf("\n");
	getch();
	for (i=0;i<count;i++) if (mas[i]) printf("%i ", i);
	getch();
	///////////
for(i=0;i<count;++i) delete [] s[i];
delete [] s;
	return 0;
}
proc.cpp
Код:
//Declaring new data type
struct CIRCLE {
    float x, y, r;
    char crossflag;
};
int j1, k1,l,i2;
/////////////////////////
//Folloving we'll have dinamic array of one
/*******************************Opening file****************************/
FILE *FOpen(char *path, char *reg)
{
	FILE *name;
	if ((name = fopen(path,reg))!=NULL) return name;
	printf("Unable to open file '%s'",path);
	return NULL;
}
/*Tests crossing of 2 circles*/
int test(CIRCLE c1,CIRCLE c2)
{
	//printf("%i %i %i %i %i %i", c1.x, c1.y, c1.r, c2.x, c2.y, c2.r);
	if ( sqrt( (fabs(c1.x-c2.x)*fabs(c1.x-c2.x))+(fabs(c1.y-c2.y)*fabs(c1.y-c2.y)))  <(c1.r+c2.r)) return 1;
	return 0;
}
/////
int test2(CIRCLE c1, CIRCLE c2)
{
	if (((sqrt( ((c1.x-c2.x)*(c1.x-c2.x))+((c1.y-c2.y)*(c1.y-c2.y)))+c1.r)<c2.r)||( (sqrt( ((c1.x-c2.x)*(c1.x-c2.x))+((c1.y-c2.y)*(c1.y-c2.y)))+c2.r)<c1.r))
	return 0;
	return 1;
}
int MatrixCreator(int **s, int n, CIRCLE *circle)
{
	int i2,j2,k2;
	for (i2=0;i2<n;i2++)
		for (j2=0; j2<n; j2++)
			if(i2!=j2)
			 if (test (circle[i2],circle[j2]))
			  if (test2(circle[i2],circle[j2])) s[i2][j2]=5    ;

//	for (i2=0;i2<n;i2++)
//		for (j2=0;j2<n;j2++)
//			for (k2=0;k2<n;k2++)
//				if (i2!=j2)
//				 if(s[k2][i2] && s [j2][k2])
//				  s[j2][i2]=4;
//        for (i2=1;i2<n;i2++) for (j2=1; j2<n; j2++) s[n-j2][i2]= s[i2][n-j2];
	for (k2=0;k2<n;k2++)
		for (i2=0;i2<n;i2++)
			for (j2=0;j2<n;j2++)
				s[i2][j2] = s[i2][j2] || (s[i2][k2] && s[k2][j2]);
	return 0;
}
/*int Vibor(int **s, int i, int *mas, int*w, int n)
 {
	for (j1=0;j1<n;j1++)
		///for(k1=0;k1<n;k1++)
		///	if(!s[j1][k1])
		///		{
		///			mas[*w++]=k1;
		///			Vibor(s,k1,mas,w,n);
		///		}
		k1=1;
		for(l=0;l<*w;l++)
		if (j1==mas[l]) k1=0;
		if ((!k1)||(s[i][j1]==0))
		{       *w++;
			mas[*w]=j1;
			Vibor(s,j1,mas,w,n);

		}
 }
  */
  void  Vibor(int **s, int n, int *mas)
  {//     int l=-1;
	int *flags = new int[n];
	for (i2=0;i2<n;i2++) flags[i2] = mas[i2] = 0;
	l2:
	for (i2=0;i2<n;i2++)
		if (!flags[i2])
			{
				flags[i2]= mas[i2]=1;
				for (j1=0;j1<n;j1++)
					if (s[i2][j1]) flags[j1]=1;

			}
	 for (i2=0;i2<n; i2++)
	 if (!flags[i2]) goto l2;

  }
Только функция Vibor не верна(
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сюда выкладываем все проги для фрикринга мобильников, которых знаем! nigger Сотовый фрикинг 5 11.04.2009 11:15
Американским студентам запретили пользоваться Skype KPOT_f!nd Мировые новости 1 28.09.2006 03:47
Любителям квестов сюда!! FoX's Болталка 10 25.01.2005 20:42



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ