powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / C++ [игнор отключен] [закрыт для гостей] / Задача по c++
5 сообщений из 5, страница 1 из 1
Задача по c++
    #40052947
PavelGR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имеется вот такая задача (фото в вложениях), вроде как суть понял но не могу понять как сделать так что бы на выводе мы получили число с буквой (в данном случае ответ с радиусом r), и как ввести в переменную alpha pi/3 и так далее

вот такой код я пока сделал
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
//Подключим библиотеки
#include <iostream>
#include <cmath>
#include <windows.h>
//Объявем переменные
using namespace std;
double a, b, c, r = 1, x, y, pi = 3.14159265, alpha;
//Создадим функцию
double Function(double alpha)
{
    return (pow(r, 3) * sin(alpha) * pow(sin((180 - alpha) / 2), 2)) / r; //Функция
}
//Тело кода
int main()
{
    setlocale(LC_ALL, "Rus"); //Для вывода на русском языке
    cout << "Введите alpha:";
    cin >> alpha; //Вввод alpha
    y = Function(alpha);
    cout << "Решение: " << y << endl;
    return 0;
}



Модератор: Используй теги SRC для оформления исходников.
...
Рейтинг: 0 / 0
Задача по c++
    #40052955
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для этого надо вывести эту букву с помощью оператора вывода.
А пи/3 это 1.047197551.
...
Рейтинг: 0 / 0
Задача по c++
    #40052962
PavelGR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

Тоесть отдельно cout << "r" <<; ?
...
Рейтинг: 0 / 0
Задача по c++
    #40052983
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Задача по c++
    #40053072
Пётр Седов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PavelGR
как ввести в переменную alpha pi/3 и так далее
Стандартный C++-ный ввод (iostreams) не поддерживает parsing формул вроде «pi / 3», поэтому вводите цифрами:
π / 2 &approx; 1.5707963267948966
π / 3 &approx; 1.0471975511965976

PavelGR
Код: plaintext
1.
sin((180 - alpha) / 2)

Это не может работать правильно, потому что стандартная функция sin принимает угол в радианах. Надо как-то так:
Код: plaintext
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.
#include <assert.h>
#include <math.h>
#include <iostream>

using namespace std;

double squ(double x) {
  return x * x;
}

double cube(double x) {
  return x * x * x;
}

const double _pi = 3.141592653589793; // без учёта НДС

const double _radius = 3;
const double _circle_area = _pi * squ(_radius); // площадь круга

// площадь треугольника; angle -- в радианах
double triangle_area(double angle) {
  assert((0 < angle) && (angle < _pi));
  return 4 * cube(cos(0.5 * angle)) * sin(0.5 * angle) * squ(_radius);
}

bool almost_equals(double x, double y) {
  return fabs(x - y) <= 0.0001;
}

int main() {
  // тестовые случаи из задания
  assert(almost_equals(triangle_area(_pi / 3), (3 * sqrt(3) * squ(_radius)) / 4));
  assert(almost_equals(triangle_area(_pi / 2), squ(_radius)));

  cout << "Enter angle in radians: ";
  double angle;
  cin >> angle;
  double tri_area = triangle_area(angle);
  cout << "triangle area = " << tri_area << endl;
  cout << "ratio = " << _circle_area / tri_area << endl;
  return 0;
}
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Задача по c++
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]