Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.60/35: Рейтинг темы: голосов - 35, средняя оценка - 4.60
web dev
106 / 92 / 9
Регистрация: 23.09.2010
Сообщений: 737
1

Напишите программу, которая рассчитывает и печатает диаметр, длину окружности и площадь круга

23.08.2011, 21:16. Показов 6560. Ответов 44
Метки нет (Все метки)

4.30. Напишите программу, которая читает радиус (как значение типа double),
рассчитывает и печатает диаметр, длину окружности и площадь круга. Для ?
используйте значение 3.14159.


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
#include "stdafx.h"
#include <iostream>
#include "lang.h"
 
using namespace std;
 
class circle
{
public:
    circle(double radius)
    {
    this->radius = radius; 
    }
    double printDiametr()
    {
        diameter = this->radius  * pi;
        return diameter;
    }
 private:
        double radius; 
    double pi;
        double diameter; 
        double length; 
        double area; 
};
 
int main()
{
        lang();
        double radius;
    double pi = 3.1415;
        circle One(radius);
        cout << "Введите радиус" << endl;
        cin >> radius;
    One.printDiametr();
 
        system("PAUSE");
        return 0;
}
Вроде как суть понял в прошлой задаче, немного прояснилось что к чему, решил сделать подобную
Вроде всё сделал правильно но радиус не выводится *цензура*.


Что не так, помогите пожалуйста
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.08.2011, 21:16
Ответы с готовыми решениями:

Напишите программу, которая считывает радиус круга и печатает диаметр круга, длину окружности и площадь
Добрый день. Продолжаю потихоньку решать задачи. Вот следующая. Напишите программу, которая...

Напишите программу, которая находит диаметр круга по его окружности
Напишите программу, которая находит диаметр круга по его окружности(длину окружности вводит...

Найти площадь круга, радиус, длину окружности и диаметр
Дан круг , где R-радиус окружность, D-диаметр , L-длинна окружности. Найти площадь круга, радиус,...

Дана площадь S круга. Найти его диаметр D и длину L окружности
Помогите пожалуйста перевести данный код в Assembler: Дана площадь S круга. Найти его диаметр D...

44
635 / 218 / 64
Регистрация: 03.11.2009
Сообщений: 488
23.08.2011, 21:18 2
TBIKC, у Вас переменная радиус ничем не инициализирована
0
web dev
106 / 92 / 9
Регистрация: 23.09.2010
Сообщений: 737
23.08.2011, 21:19  [ТС] 3
В функции main()
double radius;
Я же её инициализировал, или что я сделал ?
0
635 / 218 / 64
Регистрация: 03.11.2009
Сообщений: 488
23.08.2011, 21:21 4
TBIKC, задайте значение double radius=5.4; к примеру
и напишите методы установки значений объекта и их вывод на экран.так как они у Вас все со спецификатором private а значит напрямую из main вы не можете к ним обратиться

Добавлено через 31 секунду
TBIKC, Вы её только объявили
0
Эксперт С++
2363 / 1651 / 275
Регистрация: 29.05.2011
Сообщений: 3,379
23.08.2011, 21:23 5
Цитата Сообщение от TBIKC Посмотреть сообщение
C++
1
2
3
circle One(radius);
cout << "Введите радиус" << endl;
cin >> radius;
Это примерно так:
- А-а-а, кровь из пальца! Плещет кровь!
- Вы укололи палец?
- Еще не уколола, но уже болит. A сейчас я его уколю. Вот почему из пальца шла кровь. Теперь ты понимаешь, как все здесь происходит?
2
web dev
106 / 92 / 9
Регистрация: 23.09.2010
Сообщений: 737
23.08.2011, 21:24  [ТС] 6
Я понял что ещё не ввели, а уже используем, так ?

так как инициализировать ?
0
Заблокирован
23.08.2011, 21:24 7
Цитата Сообщение от TBIKC Посмотреть сообщение
В функции main()
double radius;
Я же её инициализировал, или что я сделал ?
Нет, вы просто определили переменную, но ее значение не определенное. То есть в вашем коде

C++
1
2
3
       double radius;
        double pi = 3.1415;
        circle One(radius);
вы создаете объект circle, а в качестве параметра передаете не инициализированную переменную tadius.
0
635 / 218 / 64
Регистрация: 03.11.2009
Сообщений: 488
23.08.2011, 21:25 8
TBIKC, ну и не мешала бы вывести результат подсчёта диаметра
C++
1
cout<<One.printDiametr();
0
204 / 205 / 16
Регистрация: 06.08.2011
Сообщений: 600
Записей в блоге: 1
23.08.2011, 21:26 9
потому что в классе не устанавливается поле pi
ага, и радиус коряво инициализируется.
0
635 / 218 / 64
Регистрация: 03.11.2009
Сообщений: 488
23.08.2011, 21:29 10
TBIKC, ну и диаметр это же ведь удвоенный радиус или я ошибаюсь?
0
web dev
106 / 92 / 9
Регистрация: 23.09.2010
Сообщений: 737
23.08.2011, 21:30  [ТС] 11
Цитата Сообщение от Сыроежка Посмотреть сообщение
Нет, вы просто определили переменную, но ее значение не определенное. То есть в вашем коде

C++
1
2
3
       double radius;
        double pi = 3.1415;
        circle One(radius);
вы создаете объект circle, а в качестве параметра передаете не инициализированную переменную tadius.
Как её инициализировать?
Код на данный момент:
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
#include "stdafx.h"
#include <iostream>
#include "lang.h"
 
using namespace std;
 
class circle
{
public:
    circle(double radius)
    {
    this->radius = radius; 
    }
    double printDiametr()
    {
        diameter = this->radius  * pi;
        return diameter;
    }
 public:
        double radius; 
        double pi;
        double diameter; 
        double length; 
        double area; 
};
 
int main()
{
        lang();
        double radius;
        double pi = 3.1415;
        circle One(radius);
        cout << "Введите радиус" << endl;
        cin >> radius;
        cout << One.printDiametr();
 
        system("PAUSE");
        return 0;
}
0
Эксперт С++
2363 / 1651 / 275
Регистрация: 29.05.2011
Сообщений: 3,379
23.08.2011, 21:31 12
Цитата Сообщение от TBIKC Посмотреть сообщение
Как её инициализировать?
Её не обязательно инициализировать. Её нужно ввести до использования для создания circle. Ну и про pi в классе тоже уже сказали.
0
Заблокирован
23.08.2011, 21:34 13
Цитата Сообщение от lera8 Посмотреть сообщение
TBIKC, ну и диаметр это же ведь удвоенный радиус или я ошибаюсь?
У каждого свой диаметр!
0
web dev
106 / 92 / 9
Регистрация: 23.09.2010
Сообщений: 737
23.08.2011, 21:35  [ТС] 14
Цитата Сообщение от Сыроежка Посмотреть сообщение
double radius;
double pi = 3.1415;
circle One(radius);
вы создаете объект circle, а в качестве параметра передаете не инициализированную переменную tadius.
Как не инициализированную ?

Цитата Сообщение от grizlik78 Посмотреть сообщение
Как её инициализировать?
Её не обязательно инициализировать. Её нужно ввести до использования для создания circle. Ну и про pi в классе тоже уже сказали
Ведь я ввёл её до создания circle
0
Заблокирован
23.08.2011, 21:36 15
Цитата Сообщение от TBIKC Посмотреть сообщение
Как её инициализировать?
Код на данный момент:
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
#include "stdafx.h"
#include <iostream>
#include "lang.h"
 
using namespace std;
 
class circle
{
public:
    circle(double radius)
    {
    this->radius = radius; 
    }
    double printDiametr()
    {
        diameter = this->radius  * pi;
        return diameter;
    }
 public:
        double radius; 
        double pi;
        double diameter; 
        double length; 
        double area; 
};
 
int main()
{
        lang();
        double radius;
        double pi = 3.1415;
        circle One(radius);
        cout << "Введите радиус" << endl;
        cin >> radius;
        cout << One.printDiametr();
 
        system("PAUSE");
        return 0;
}
Ваш радиус должен иметь какое-то значение. Можно при определении переменной ее инициализировать. Например,

C++
1
2
3
        double radius = 10;
        double pi = 3.1415;
        circle One(radius);
0
Эксперт С++
2363 / 1651 / 275
Регистрация: 29.05.2011
Сообщений: 3,379
23.08.2011, 21:38 16
Цитата Сообщение от TBIKC Посмотреть сообщение
Ведь я ввёл её до создания circle
До создания circle была создана переменная радиус. Я же про ввод значения этой переменной:
C++
1
cin >> radius;
0
635 / 218 / 64
Регистрация: 03.11.2009
Сообщений: 488
23.08.2011, 21:39 17
TBIKC, Могу предложить вот такой вот вариант решения задачи и готова ответить на вопросы по ней

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
// prj.cpp: главный файл проекта.
 
#include "stdafx.h"
#include <iostream>
using namespace System;
using namespace std;
 
class circle
{
public:
        circle(double radius)
        {
        this->radius = radius; 
        }
        double printDiametr()
        {
                diameter = radius  * 2;
                return diameter;
        }
        void set_pi(double p)
         {
           pi=p;
           
         }
        void Show()
         {
             length=pi*diameter;
             area=pi*radius*radius;
             cout<<"Радиус:"<<radius<<endl;
             cout<<"Диметр"<<diameter<<endl;
             cout<<"Длина:"<<length<<endl;
              cout<<"Площадь:"<<area<<endl;
 
        
         }
 private:
        double radius; 
        double pi;
        double diameter; 
        double length; 
        double area; 
};
 
 
int main(array<System::String ^> ^args)
{
   locale::global(locale("rus"));
                double radius;
        double pi = 3.1415;
        cout << "Введите радиус" << endl;
        cin >> radius;
        circle One(radius);
        One.set_pi(pi);
        One.Show();
                system("PAUSE");
                return 0;
}
0
web dev
106 / 92 / 9
Регистрация: 23.09.2010
Сообщений: 737
23.08.2011, 21:39  [ТС] 18
Так мы же вводим радиус, как он может иметь какое то значение ?
Пс чуток исправил
Находим площадь
Площадь = 2 * радиус * 3,14
0
Эксперт С++
2363 / 1651 / 275
Регистрация: 29.05.2011
Сообщений: 3,379
23.08.2011, 21:41 19
Цитата Сообщение от TBIKC Посмотреть сообщение
Так мы же вводим радиус, как он может иметь какое то значение ?
А если ты не выстрелишь, то испорчусь я!
больше мне сказать нечего
0
lera8
23.08.2011, 21:42     Напишите программу, которая рассчитывает и печатает диаметр, длину окружности и площадь круга
  #20

Не по теме:

Цитата Сообщение от Сыроежка Посмотреть сообщение
У каждого свой диаметр!
а ну тогда ясно)

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.08.2011, 21:42

Дана площадь круга S. Найти его диаметр D и длину окружности L
Дана площадь круга S. Найти его диаметр D и длину окружности L.

Дан диаметр круга, найдите его площадь и длину окружности
Дан диаметр круга, найдите его площадь и длину окружности

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

Дана площадь S круга. Найти его диаметр D и длину L окружности, ограничивающей этот круг
Добрый день, форумчане. Помогите написать задачку в С++, а выглядит она следующим образом &quot;Дана...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru