Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.58/26: Рейтинг темы: голосов - 26, средняя оценка - 4.58
TBIKC
web dev
104 / 90 / 9
Регистрация: 23.09.2010
Сообщений: 737
#1

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

23.08.2011, 21:16. Просмотров 4611. Ответов 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
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.08.2011, 21:16
Ответы с готовыми решениями:

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

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

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

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

Вычислить длину окружности и площадь круга
Вычислить длину окружности и площадь, заключенную в круге Формат входных...

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

Добавлено через 31 секунду
TBIKC, Вы её только объявили
0
grizlik78
Эксперт С++
1984 / 1477 / 191
Регистрация: 29.05.2011
Сообщений: 3,053
23.08.2011, 21:23 #5
Цитата Сообщение от TBIKC Посмотреть сообщение
C++
1
2
3
circle One(radius);
cout << "Введите радиус" << endl;
cin >> radius;
Это примерно так:
- А-а-а, кровь из пальца! Плещет кровь!
- Вы укололи палец?
- Еще не уколола, но уже болит. A сейчас я его уколю. Вот почему из пальца шла кровь. Теперь ты понимаешь, как все здесь происходит?
2
TBIKC
web dev
104 / 90 / 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
lera8
634 / 217 / 63
Регистрация: 03.11.2009
Сообщений: 488
23.08.2011, 21:25 #8
TBIKC, ну и не мешала бы вывести результат подсчёта диаметра
C++
1
cout<<One.printDiametr();
0
villu
203 / 204 / 16
Регистрация: 06.08.2011
Сообщений: 600
Записей в блоге: 1
23.08.2011, 21:26 #9
потому что в классе не устанавливается поле pi
ага, и радиус коряво инициализируется.
0
lera8
634 / 217 / 63
Регистрация: 03.11.2009
Сообщений: 488
23.08.2011, 21:29 #10
TBIKC, ну и диаметр это же ведь удвоенный радиус или я ошибаюсь?
0
TBIKC
web dev
104 / 90 / 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
grizlik78
Эксперт С++
1984 / 1477 / 191
Регистрация: 29.05.2011
Сообщений: 3,053
23.08.2011, 21:31 #12
Цитата Сообщение от TBIKC Посмотреть сообщение
Как её инициализировать?
Её не обязательно инициализировать. Её нужно ввести до использования для создания circle. Ну и про pi в классе тоже уже сказали.
0
Сыроежка
Заблокирован
23.08.2011, 21:34 #13
Цитата Сообщение от lera8 Посмотреть сообщение
TBIKC, ну и диаметр это же ведь удвоенный радиус или я ошибаюсь?
У каждого свой диаметр!
0
TBIKC
web dev
104 / 90 / 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
grizlik78
Эксперт С++
1984 / 1477 / 191
Регистрация: 29.05.2011
Сообщений: 3,053
23.08.2011, 21:38 #16
Цитата Сообщение от TBIKC Посмотреть сообщение
Ведь я ввёл её до создания circle
До создания circle была создана переменная радиус. Я же про ввод значения этой переменной:
C++
1
cin >> radius;
0
lera8
634 / 217 / 63
Регистрация: 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
TBIKC
web dev
104 / 90 / 9
Регистрация: 23.09.2010
Сообщений: 737
23.08.2011, 21:39  [ТС] #18
Так мы же вводим радиус, как он может иметь какое то значение ?
Пс чуток исправил
Находим площадь
Площадь = 2 * радиус * 3,14
0
grizlik78
Эксперт С++
1984 / 1477 / 191
Регистрация: 29.05.2011
Сообщений: 3,053
23.08.2011, 21:41 #19
Цитата Сообщение от TBIKC Посмотреть сообщение
Так мы же вводим радиус, как он может иметь какое то значение ?
А если ты не выстрелишь, то испорчусь я!
больше мне сказать нечего
0
lera8
23.08.2011, 21:42     Напишите программу, которая рассчитывает и печатает диаметр, длину окружности и площадь круга
  #20

Не по теме:

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

1
23.08.2011, 21:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.08.2011, 21:42
Привет! Вот еще темы с ответами:

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

Вычислить площадь и длину окружности круга
Вычислить площадь и длину окружности круга, радиус которого равен а.

Найти площадь круга, вписанного в треугольник с заданными сторонами. напишите программу которая работала бы )
Найти площадь круга, вписанного в треугольник с заданными сторонами. ...


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

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

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