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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
zidans
0 / 0 / 0
Регистрация: 30.10.2010
Сообщений: 45
#1

Правильно ли написана программа - C++

02.11.2010, 08:02. Просмотров 435. Ответов 2
Метки нет (Все метки)

Проверьте, пожалуйста правильность написания данной программы и какой она всетаки дает результат в итоге ?(а то я чего то сомневаюсь). Заранее благодарю.

Задание в Microsoft Visual C++ 6.0:
В одномерном массиве с четным количеством элементов (2N) находятся координаты N точек плоскости. Они располагаются в порядке х1,у1,х2,у2,х3,у3 и т.д. Определить кольцо с центром в начале координат, которое содержит все точки.


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
#include <iostream>
#include <cmath>
using namespace std;
 
int main()
{
        int n,i;
        double * arr, r, rMin, rMax;  // rMin-внутренний радиус, rMax - внешний
        cout<<"Vvedite kolvo tochek: ";
        cin>>n;
 
        arr = new double[n*2];
 
        // ввод
        for (i=0; i<n; ++i)
        {
                cout<<"x["<<i<<"]=";
                cin>>arr[2*i];
                cout<<"y["<<i<<"]=";
                cin>>arr[2*i+1];
        }
 
        // вычисляем расстояние от центра до первой точки
        r=sqrt(arr[0]*arr[0]+arr[1]*arr[1]);
        rMin=rMax=r;
 
        // вычисляем расстояние от центра до последующих точек
        // и находим макс. и мин. расстояния  - радиусы кольца
        for (i=0; i<n; ++i)
        {
                r=sqrt(arr[2*i]*arr[2*i]+arr[2*i+1]*arr[2*i+1]);
                if (r<rMin) rMin=r;
                if (r>rMax) rMax=r;
        }
 
        // вывод
        cout<<"Vse tochki lezhat v koltse s radiusami: ";
        cout<<"\nVnutrennij = "<<rMin;
        cout<<"\nVneshnij = "<<rMax;
 
        delete []arr;
        cout<<endl;
        system("pause");
        return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.11.2010, 08:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Правильно ли написана программа (C++):

Правильно ли написана программа? - C++
#include &lt;tchar.h&gt; #include &lt;stdio.h&gt; #include &lt;iostream&gt; int _tmain(int argc, _TCHAR* argv) { std::cout &lt;&lt; &quot;temperature...

Правильно ли написана программа? - C++
Задача такова. Перед авиаперелётом на известное расстояние закупается топливо для самолёта. Топливо продаётся в ёмкостях заданного...

Правильно ли написана программа - C++
Почему мне компилятор выдает ошибку после main? #include &lt;stdio.h&gt; #include &lt;conio.h&gt; void main (void) { // вот здесь ...

Правильно ли написана программа? - C++
//--------------------------------------------------------------------------- #include &lt;vcl.h&gt; #include &lt;iostream&gt; #pragma hdrstop...

Правильно ли написана программа? - C++
здравтвуйте! изучаю с++ на данный момент К Л А С С Ы...хотел написать свою простенькую программу на классы и написал..всё работает...(я...

Сумма (правильно ли написана программа?) - C++
Подскажите, правель но ли написана программа? #include &lt;iostream.h&gt; using namespace std; vad main() { setlocale (LC_ALL,...

2
Good-bad man
254 / 232 / 17
Регистрация: 31.10.2010
Сообщений: 504
02.11.2010, 08:47 #2
У меня компилятор сказал только про то, что в конце программы нету переноса строки.(если я правильно понял вопрос)
Vvedite kolvo tochek: 2
x[0]=3
y[0]=5
x[1]=10
y[1]=15
Vse tochki lezhat v koltse s radiusami:
Vnutrennij = 5.83095
Vneshnij = 18.0278
Для продолжения нажмите любую клавишу . . .
0
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
02.11.2010, 08:54 #3
Не поленился, сделал проверку на билдере с отрисовкой. Вобщем имеется форма с одной кнопкой, по её нажатию генерятся рандомно точки и отрисовываются радиусы. Обработчик нажатия кнопки:
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
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Form1->Repaint();
int n,i;
double * arr, r, rMin, rMax;
n=100;
 
arr = new double[n*2];
const int centerX = Form1->Width/2;
const int centerY = Form1->Height/2;
 
// генерация точек
for (i=0; i<n; ++i)
{
    arr[2*i] = -100+rand()%200;
    arr[2*i+1] = -100+rand()%200;
}
 
// вычисление радиусов
r=sqrt(arr[0]*arr[0]+arr[1]*arr[1]);
rMin=rMax=r;
 
for (i=0; i<n; ++i)
{
    r=sqrt(arr[2*i]*arr[2*i]+arr[2*i+1]*arr[2*i+1]);
    if (r<rMin) rMin=r;
    if (r>rMax) rMax=r;
 
}
 
// отрисовка
Form1->Canvas->Pen->Width = 2;
Form1->Canvas->Ellipse(centerX-rMax, centerY - rMax,rMax+centerX, rMax+centerY);
Form1->Canvas->Ellipse(centerX-rMin, centerY - rMin,rMin+centerX, rMin+centerY);
 
for (i=0; i<n; ++i)
    Form1->Canvas->Pixels[centerX+arr[2*i]][centerY + arr[2*i+1]] = clRed;
 
delete []arr;
}
На скорую руку, конечно, но вроде так. Результат - все точки внутри кольца:
0
Миниатюры
Правильно ли написана программа  
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.11.2010, 08:54
Привет! Вот еще темы с ответами:

Программа (100%) написана правильно, но не запускается. - C++
Просто не запускает и вс! Попробуйте запустить её у себя, и сообщите! Зарание спасибо! #include &lt;iostream&gt; #include&quot;conio.h&quot; ...

Крестики-нолики (в классах) - Правильно ли структурно написана программа - C++
//main.cpp #include&lt;iostream&gt; #include&lt;windows.h&gt; #include&quot;board.h&quot; #include&quot;BoardView.h&quot; using namespace std; int main()...

Правильно ли написана задача - C++
здравствуйте помогите решить задачу на с++ я вроде решил но не пойму где ошибся. решение: #include &lt;iostream&gt; using namespace...

Функция сложения C строк. Правильно ли написана? - C++
Ребят, интересует вопрос, нужна ли строчка &quot;delete sum;&quot;? По логике: надо очистить выделенную память. На деле: если я её очищу, то не...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru