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

составить блок-схему алгоритма решения - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ С++ Блок Схема и описание компанентов http://www.cyberforum.ru/cpp-beginners/thread219174.html
помогите пожалуйста с блок схемой и расписать какой компанент за что отвечает #include <string.h> const int arabar = { 1, 4, 5, 9, 10, 40, 50, 90, 100, 400, 500, 900, 1000}; const char *romanar = { "I", "IV", "V", "IX", "X", "XL", "L", "XC", "C", "CD", "D", "CM", "M"}; char *arab2roman(unsigned short int arab) { static char roman;
C++ Перечислить все слова заданного предложения. Пожалуйста, напишите! Перечислить все слова заданного предложения, которые состоят из тех же букв, что и первое слово предложения и заканчиваются на такую же букву , что и первое слово. Пожалуйста, люди, напишите прогу. http://www.cyberforum.ru/cpp-beginners/thread219172.html
C++ рекурсивная обработка списков
написал программу для вычисления первообразной...все работает,но при введении коэфициэнта при x^0 равного нулю выскакивает ошибка...а он не должен включаться в список. если мы делаем равный нулю коэфициэнт при любом другом х то все работает как надо...помогите пожалуйста исправить косяк. вот задание 1.Многочлен P(x)=anxn+an-1xn-1+…+a0 с целыми коэффициентами представьте в виде списка, причем,...
C++ С++ getch и putch
У меня есть программа #include <iostream> #include <conio.h> using namespace std; /* 24.Слова текста из малых латинских букв записаны не менее чем через один пробел; текст оканчивается точкой. БЕЗ ИСПОЛЬЗОВАНИЯ конструкции STRING: а) написать программу ввода такого текста с клавиатуры; б) в каждом слове все гласные, начиная со второй, заменить на букву u.
C++ Шаблон класса стек http://www.cyberforum.ru/cpp-beginners/thread219121.html
Ошибка: no appropriate default constructor available. Предлагает использовать конструктор, но как это оно? template <class Type> struct data { Type e; data *next; } ; template <class data> class stack {
C++ вычислить результат выражения. помогите пожалуйста написать программу, которая по заданному натуральному значению n и действительному x вычисляет результат выражения. подробнее

Показать сообщение отдельно
coraline
0 / 0 / 0
Регистрация: 20.12.2010
Сообщений: 5

составить блок-схему алгоритма решения - C++

23.12.2010, 23:33. Просмотров 496. Ответов 0
Метки (Все метки)

Из заданного множества точек на плоскости выбрать две различные точки так, чтобы окружности заданного радиуса с центром в этих точках содержали внутри себя одинаковое количество точек
бльк схемы совсем не умею строить..помогите))

#include "stdafx.h"
#include "iostream"
#include <stdlib.h>
#include <math.h>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{setlocale (LC_ALL, "Russian");
int R; // Радиус окружностей
int n; // Количество точек
char c;
bool enter_type = true; // true - ручками, false - рандом

cout<<"Введите номер точки"<<endl;
cin>>n;
cout<<"Введите радиус"<<endl;
cin>>R;
cout<<"генерировать точки автоматически? 1/2"<<endl;
cin>>c;
if(c == '1')
{
enter_type = false;
}

int *x = new int[n];
int *y = new int[n];

if(enter_type)
{
for(int i=0;i<n;i++)
{
cout<<"Введите x и y ["<<(i+1)<<"]"<<endl;
cin>>x[i];
cin>>y[i];
}
}
else
{
for(int i=0;i<n;i++)
{
x[i] = rand(); // Здесь можно модифицировать рандом как хотите
y[i] = rand(); // Здесь можно модифицировать рандом как хотите
}
}


int *count = new int[n];
//А теперь сам алгоритм - сначала считаем количество точек для каждой окружности.

for(int i=0;i<n;i++)
{
count[i] = 0;
for(int j=0;j<n;j++)
{
if( sqrt((float)(x[i]-x[j])*(x[i]-x[j]) + (y[i]-y[j])*(y[i]-y[j])) <= R) //По теореме пифагора считаем попадает ли точка в окружность
count[i]++;
}
}

//Теперь бежим по массиву count и исчем любые 2 индекса с совпавшими значениями.

cout<<"Результаты:"<<endl;
int resCount = 0;
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(i!=j && count[i] == count[j]) //Нашли
{
resCount++;
cout<<"["<<x[i]<<","<<y[i]<<"] and ["<<x[j]<<","<<y[j]<<"]"<<endl;
//Далее можно завершить программу с помощью (return 0)
//Либо можно не завершать, и продолжить вывод всех точек с одинаковым количеством.
}
}
}

if(!resCount)
{
cout<<"Нет таких точек.";
}

cin>>c; //Чтобы притормозить программу и посмотреть результат.
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru