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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.85
alemor
1 / 1 / 0
Регистрация: 03.06.2010
Сообщений: 61
#1

Используя датчик случайных чисел, получить координаты вершин треугольника x1, y1, x2, y2, x3, y3, принадлежащие отрезку [-5,5] - C++

07.10.2010, 16:12. Просмотров 2596. Ответов 42
Метки нет (Все метки)

Составьте программу для выполнения следующих заданий:
1. Ввести с клавиатуры длины отрезков a, b и c.
2. Проверить, могут ли быть эти отрезки сторонами треугольника, и вывести соответствующее сообщение.
3. Используя формулу Герона и теоремы синусов и косинусов, вычислить периметр и площадь треугольника, высоты ha, hb и hc, медианы ma, mb и mc и биссектрисы la, lb и lc треугольника.
4. Вывести результаты вычислений с комментариями на экран дисплея.
5. Используя датчик случайных чисел, получить координаты вершин треугольника x1, y1, x2, y2, x3, y3, принадлежащие отрезку [-5,5].
6. Не используя формулы Герона и теоремы косинусов, вычислить периметр, площадь и медианы треугольника.
7. Вычислить длины наибольшей и наименьшей сторон треугольника.
8. Вывести с комментариями результаты вычислений (координаты вершин, периметр, площадь и медианы, длины наименьшей и наибольшей сторон треугольника) на экран дисплея.
9. Напечатать длины сторон в порядке возрастания.

Начиная с 5 пункта не чего не получается. И не понимаю как сделать меню консольного вида(
Прошу не злится только начал изучать С++ самостоятельно и вот напал на такую задачу)

Добавлено через 21 час 29 минут
Что не кто не может помочь?

Добавлено через 6 часов 19 минут
Начал работать непосредственно в С и вот:

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
#include "stdafx.h"
#include "stdio.h"
#include "conio.h"
#include "math.h"
int a,b,c;
int ha,hb,hc;
int ma,mb,mc;
int la,lb,lc;
int x1,x2,x3;
int z1,z2,z3;
double p, s;
int _tmain(int argc, _TCHAR* argv[])
{
    printf("Введите длину отрезка a\n");
    scanf("%d", &a);
    printf("Вы ввели число %d, спасибо!\n", a);
    printf("Введите длину отрезка b\n");
    scanf("%d", &b);
    printf("Вы ввели число %d, спасибо!\n", b);
    printf("Введите длину отрезка c\n");
    scanf("%d", &c);
    printf("Вы ввели число %d, спасибо!\n", c);
 {
    if (a+b<c) printf("Треугольник получился\n");
    else if (a+b>c) printf("Не треугольник попробуйте заново\n");
        p=a+b+c;
        printf("Периметр равен: %d\n", p);
    return 0;
    
 }
}
Во первых не складывает не целые числа(
Во вторых не ищет периметр(

Добавлено через 17 часов 33 минуты
Да уж ну тут и программисты(((( Вообще не кто не помог(
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.10.2010, 16:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Используя датчик случайных чисел, получить координаты вершин треугольника x1, y1, x2, y2, x3, y3, принадлежащие отрезку [-5,5] (C++):

Сформировать одномерный массив целых чисел, используя датчик случайных чисел - C++
1) Сформировать одномерный массив целых чисел, используя датчик случайных чи-сел. 2) Распечатать полученный массив. 3) Удалить элементы...

Сформировать одномерный массив целых чисел, используя датчик случайных чисел - C++
Сформировать одномерный массив целых чисел, используя датчик случайных чисел.Распечатать полученный массив. Удалить 5 первых элементов...

Сформировать одномерный массив целых чисел, используя датчик случайных чисел - C++
1)Сформировать одномерный массив целых чисел, используя датчик случайных чисел. 2)Распечатать полученный массив. 3)Перевернуть массив...

Сформировать одномерный массив целых чисел, используя датчик случайных чисел. - C++
Сформировать одномерный массив целых чисел, используя датчик случайных чисел. Удалить 5 последних элементов массива. Добавить в...

Сформировать одномерный массив целых чисел, используя датчик случайных чисел - C++
Удалить элементы кратные 7. Добавить после каждого нечетного элемента массива элемент со значением 0.

Сформировать одномерный массив целых чисел, используя датчик случайных чисел - C++
Условие такое 1.Сформировать одномерный массив целых чисел, используя датчик случайных чисел. Распечатать полученный массив. ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
LineStown
66 / 66 / 3
Регистрация: 04.08.2010
Сообщений: 420
Завершенные тесты: 1
07.10.2010, 17:48 #2
Цитата Сообщение от alemor Посмотреть сообщение
Да уж ну тут и программисты(((( Вообще не кто не помог(
А какое тут программирование?
тут геометрия сплошная...
А самому написать математическое решение слабо?
0
alemor
1 / 1 / 0
Регистрация: 03.06.2010
Сообщений: 61
07.10.2010, 18:02  [ТС] #3
Вообще то я высшее получаю ща математик)
0
LineStown
66 / 66 / 3
Регистрация: 04.08.2010
Сообщений: 420
Завершенные тесты: 1
07.10.2010, 18:06 #4
Ну а я давно получил и не помню ни тригонометрию, ни геометрию (ну так то в общих чертах), а программить постоянно приходиться.Вот поэтому и пишу: нужно готовое условие, т.е. конкретная постановка задачи.
0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
07.10.2010, 18:23 #5
alemor,
Не создавайте глобальных переменных, здесь вполне достаточно локальных.
Если у вас a, b, c объявлены как целые, то какую же дробную сумму вы хотели видеть? При вводе в целые значения дробных чисел дробная часть отбрасывается, и пусть даже p объявлена как дробная, результат в ней всё равно будет целый, потому как слагаемые у вас целые.

Добавлено через 1 минуту
Далее, периметр вы выводите со спецификатором типа %d, хотя сама p объявлена как double. Следовательно спецификатор нужен %lf (или %f).
0
alemor
1 / 1 / 0
Регистрация: 03.06.2010
Сообщений: 61
07.10.2010, 19:11  [ТС] #6
Помогите с 5 сделать прошу)
0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
07.10.2010, 19:15 #7
Конкретный вопрос ждём. "Помогите" - не есть вопрос.
0
alemor
1 / 1 / 0
Регистрация: 03.06.2010
Сообщений: 61
07.10.2010, 21:28  [ТС] #8
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
#include "stdafx.h"
#include "stdio.h"
#include "conio.h"
#include "math.h"
float a,b,c;
int ha,hb,hc;
int ma,mb,mc;
int la,lb,lc;
int x1,x2,x3;
int z1,z2,z3;
float p, pp,s;
 
int _tmain(int argc, _TCHAR* argv[])
{
    printf("Введите длину отрезка* a\n");
    scanf("%f", &a);
    printf("Вы ввели число %8.2f, спасибо!\n", a);
    printf("Введите длину отрезка* b\n");
    scanf("%f", &b);
    printf("Вы ввели число %8.2f, спасибо!\n", b);
    printf("Введите длину отрезка* c\n");
    scanf("%f", &c);
    printf("Вы ввели число %8.2f, спасибо!\n", c);
     if (a+b<c) printf("’Треугольник получился\n");
    else if (a+b>c) printf("Не треугольнник попробуйдете заново\n");
     p=a+b+c;
     printf("Периметр равен: %f\n", p);
     pp=(a+b+c)/2;
     printf("Полупериметр равен: %f\n", pp);
     s=sqrt(pp*((pp-a)*(pp-b)*(pp-c)));
     printf("Площадь равна: %f\n", s);
     }
Поможете теперь?
0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
07.10.2010, 21:34 #9
"Поможете теперь?" - тоже не вопрос. Что у вас не получается? Вы хотите, чтобы вам помогли, но в упор не желаете говорить, с чем помочь! И чего вы ждёте?
0
alemor
1 / 1 / 0
Регистрация: 03.06.2010
Сообщений: 61
07.10.2010, 21:59  [ТС] #10
Не получается сделать:
1.Используя датчик случайных чисел, получить координаты вершин треугольника x1, y1, x2, y2, x3, y3, принадлежащие отрезку [-5,5].
2. Не используя формулы Герона и теоремы косинусов, вычислить периметр, площадь и медианы треугольника.
3. Вычислить длины наибольшей и наименьшей сторон треугольника.
4. Вывести с комментариями результаты вычислений (координаты вершин, периметр, площадь и медианы, длины наименьшей и наибольшей сторон треугольника) на экран дисплея.
5. Напечатать длины сторон в порядке возрастания.
6.Сделать меню.
0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
07.10.2010, 22:02 #11
Где сотни ваших безуспешных попыток сделать эти пункты? Или вы просто решили не искать в интернете или книгах материал про датчики случайных чисел и решили, пусть это напишут за вас?
Про второй пункт вообще молчу. Реализовать это в коде не сложнее, чем первые 4 пункта, вся сложность, по сути, в теоретической части, но вы ведь на математика учитесь, у вас это от зубов отскакивать должно.
С остальными пунктами то же.
С меню помогу, но писать за вас ничего не буду.
0
alemor
1 / 1 / 0
Регистрация: 03.06.2010
Сообщений: 61
07.10.2010, 22:26  [ТС] #12
Используя датчик случайных чисел, получить координаты вершин треугольника x1, y1, x2, y2, x3, y3, принадлежащие отрезку [-5,5]. вообще не понимаю как реализовать писал с -5 + rand() % 10 то показывала совсем не от -5 до 5
0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
07.10.2010, 22:35 #13
srand() использовали?
надо было ещё так попробоват:
doubler = -5.0 + 10.0 * rand() / RAND_MAX;
0
alemor
1 / 1 / 0
Регистрация: 03.06.2010
Сообщений: 61
07.10.2010, 22:52  [ТС] #14
Не знаю но тоже выводит числа в не диапазона(
0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
07.10.2010, 22:57 #15
У меня всё работает нормально...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.10.2010, 22:57
Привет! Вот еще темы с ответами:

Используя датчик случайных чисел, запол*нить массив из двадцати -элементов неповторяющи*мися числами - C++
Используя датчик случайных чисел, запол*нить массив из двадцати -элементов неповторяющи*мися числами.

Используя датчик случайных чисел на интервале получить целочисленный массив, состоящий из 320 элементов - Turbo Pascal
С помощью датчика случайных чисел на интервале (-250,100) получить целочисленный массив,состоящий из 320 элементов.

Сформировать одномерный массив целых чисел, используя датчик случайных чисел - Turbo Pascal
1) Сформировать одномерный массив целых чисел, используя датчик случайных чисел. 2) Распечатать полученный массив. 3) Удалить последний...

Используя датчик случайных чисел, составить программу подбрасывания монеты - PascalABC.NET
Используя датчик случайных чисел, составить программу, моделирующую процесс подбрасывания монеты. Подсчитать число выпадений &quot;орла&quot; и...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
07.10.2010, 22:57
Ответ Создать тему
Опции темы

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