Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/34: Рейтинг темы: голосов - 34, средняя оценка - 4.76
33 / 33 / 43
Регистрация: 07.02.2014
Сообщений: 89

Определить можно вписать круг в квадрат?

04.11.2014, 15:44. Показов 6986. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задание :
При заданном радиусе найти площадь круга.
При заданной стороне квадрата найти его площадь.
Определить:
а) можно вписать круг в квадрат?
б) можно вписать квадрат в круг?


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
using System;
 
namespace Lab3Var6Zadanie1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("|=================================================|");
            Console.WriteLine("| При заданому радiусi знайти  площу кола.        |");
            Console.WriteLine("| При заданiй сторонi квадрата знайти його площу. |");
            Console.WriteLine("|    Визначити:                                   |");
            Console.WriteLine("|        а) чи можна вписати коло в квадрат?      |");
            Console.WriteLine("|        б) чи можна вписати квадрат в коло?      |");
            Console.WriteLine("|=================================================|");
            Console.Write(" Введiть радiус кола : ");
            string a = Console.ReadLine();
            double r = Convert.ToDouble(a);
            Console.Write(" Введiть длину сторони квадрата : ");
            string b = Console.ReadLine();
            double d = Convert.ToDouble(b);
            double AreaKolo;
            double PlKvadrat;
            double DiagonalKvadrata;
            AreaKolo = Math.Pow(r, 2) * 3.1416; 
            PlKvadrat = Math.Pow(d, 2);
            DiagonalKvadrata = d * Math.Sqrt(2);
            Console.WriteLine(" Площа кола = {0:#.##}", + AreaKolo );
            Console.WriteLine(" Площа квадрата = {0:#.##}", + PlKvadrat);
            Console.WriteLine(" Дiагональ квадрата = {0:#.##}", + DiagonalKvadrata);
            if (d == r)
                Console.WriteLine("Квадрат вписан в круг");
            else
                if (d == r)
                    Console.WriteLine("Круг можно вписать в квадрат");
            Console.ReadKey();
        }
    }
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.11.2014, 15:44
Ответы с готовыми решениями:

Определить, можно ли вписать круг в квадрат
Ребята, очень прошу помогите!!! Определить , можно ли вписать круг в квадрат. радиус круга - r и сторона квадрата - d.

Заданы радиус круга R и сторона квадрата A. Определить можно ли вписать квадрат в круг
Заданы радиус круга R и сторона квадрата A. Определить можно ли вписать квадрат в круг.

Можно ли вписать квадрат в круг?
Заданы радиус круга R и сторона квадрата A. Определить можно ли вписать квадрат в круг

9
60 / 17 / 11
Регистрация: 01.11.2014
Сообщений: 100
04.11.2014, 16:20
Цитата Сообщение от tomb2002 Посмотреть сообщение
C#
1
2
3
4
5
6
if (d == r)
           Console.WriteLine("Квадрат вписан в круг");
              else
              if (d == r)
           Console.WriteLine("Круг можно вписать в квадрат");
           Console.ReadKey()
;
Так тут неправильные условия. Чтобы круг мог быть вписан в квадрат, его радиус должен быть равен половине стороны квадрата. И чтобы квадрат вписать в круг, диагональ квадарата должна быть равна двум радиусам круга.
C#
1
2
3
4
5
if (d == 2*r)
                Console.WriteLine("Квадрат вписан в круг");
            else
                if (r == (d/2))
                    Console.WriteLine("Круг можно вписать в квадрат");
Так получается тогда
0
871 / 721 / 304
Регистрация: 15.04.2013
Сообщений: 2,047
Записей в блоге: 5
04.11.2014, 16:31
msg_kurt,
Вот только так не стоит сравнивать вещественные числа
И 2*r = d ничем не отличается от r = d/2

Добавлено через 2 минуты
Радиус описаной окружности: https://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{\sqrt{2}*d}{2}
1
60 / 17 / 11
Регистрация: 01.11.2014
Сообщений: 100
04.11.2014, 16:34
XRoy, да, я погорячился. Просьба подробнее пояснить
Цитата Сообщение от XRoy Посмотреть сообщение
Вот только так не стоит сравнивать вещественные числа
а то я слишком туманно улавливаю мысль. В любом случае спасибо!
0
307 / 284 / 102
Регистрация: 06.05.2014
Сообщений: 861
04.11.2014, 16:38
Эммм...
Радиус описанной окружности квадрата: r = d/2 = a/https://www.cyberforum.ru/cgi-bin/latex.cgi?\sqrt{2}, где d - диагональ квадрата, а - сторона квадрата.
А радиус вписанной окружности квадрата: r = a/2, где a - сторона квадрата.
0
60 / 17 / 11
Регистрация: 01.11.2014
Сообщений: 100
04.11.2014, 16:41
Вспомнив, благодаря замечаниям алгебру за 8-й класс, делаю вывод, что условия должны быть такими:
C#
1
2
3
4
 if (r == d/2)
                Console.WriteLine("Квадрат вписан в круг");
            else
                if (r == d/Math.Sqrt(2);
0
871 / 721 / 304
Регистрация: 15.04.2013
Сообщений: 2,047
Записей в блоге: 5
04.11.2014, 17:16
BozKurt,
Вы 2 потеряли в r = d/2 = a/https://www.cyberforum.ru/cgi-bin/latex.cgi?\sqrt{2}
R = d/2 = https://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{a*\sqrt{2}}{2}, d = a * https://www.cyberforum.ru/cgi-bin/latex.cgi?\sqrt{2}

Добавлено через 5 минут
msg_kurt,
Числа в компьюетере хранятся с ограниченной точностью, поэтому числа могут быть не равны, но очень близки по значениям друг к другу.

Добавлено через 3 минуты
Это можно легко заметить на таком примере
C#
1
2
3
4
5
6
7
            
double d = 1 / 3d;
            double f = 1 + d - 1;
 
            Console.WriteLine(d == f);
            Console.WriteLine(d);
            Console.WriteLine(f);
1
60 / 17 / 11
Регистрация: 01.11.2014
Сообщений: 100
04.11.2014, 17:23
XRoy, спасибо. То есть, по хорошему, иррациональные выражения нужно округлять, если без них не обойтись, как здесь, например:
C#
1
 r == ((d*Math.Sqrt(2))/2);
Или есть альтернатива?
0
307 / 284 / 102
Регистрация: 06.05.2014
Сообщений: 861
04.11.2014, 17:32
XRoy, от чего же? Ничего я не потерял:https://www.cyberforum.ru/cgi-bin/latex.cgi?R = \frac{d}{2} = \frac{\sqrt{2}a}{2} = \frac{\sqrt{2}a}{\sqrt{2}\sqrt{2}} = \frac{a}{\sqrt{2}}
0
871 / 721 / 304
Регистрация: 15.04.2013
Сообщений: 2,047
Записей в блоге: 5
04.11.2014, 18:08
msg_kurt, Вы столкнетесь с этой проблемой если будете пользоваться дробными числами.

BozKurt,
Совсем уже заработался, извиняюсь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.11.2014, 18:08
Помогаю со студенческими работами здесь

Определить, можно ли вписать круг в заданную равнобедренную трапецию
Можно ли вписать круг в заданную равнобедренную трапецию, если известны длины оснований и высота?

Определить, можно ли квадрат со стороной a вписать в окружность заданного радиуса R?
Определить, можно ли квадрат со стороной a вписать в окружность заданного радиуса R? Точность сравнения вещественных величин 0.001.

Определить, можно ли квадрат со стороной a вписать в окружность заданного радиуса R?
Определить, можно ли квадрат со стороной a вписать в окружность заданного радиуса R? Точность сравнения вещественных величин 0.001. ...

Класс «Квадрат»: можно ли вписать в объект-квадрат со стороной A окружность радиуса R
Люди помогите, сижу уже неделю, выходит какая-то фигня. Хочу научиться, но тяжеловато) Объясните кто может, как будет выглядеть код? ...

Можно ли вписать в круг треугольник?
Нужна помощь в решении задачи. Даны площадь круга S1 и площадь треугольника S2. Определить, поместится ли треугольник в круге. ...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru