Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
_include
Студент
52 / 52 / 38
Регистрация: 17.09.2012
Сообщений: 291
Записей в блоге: 2
Завершенные тесты: 1
#1

Определить площади треугольников с проверкой условия их существования для введенных N раз сторон a,b,c. - C (СИ)

17.09.2012, 18:52. Просмотров 1400. Ответов 10
Метки нет (Все метки)

Добрый день, уважаемые господа программисты
Возникла проблема с циклами - что куда и как? Есть задача -

Определить площади треугольников с проверкой условия их существования для введенных N раз сторон a,b,c.

Я не могу составить СА для данной программы. Непонятно - "для введенных N раз сторон" - N сторон что ли? или как? Писал программу для одного треугольника. по идеи туда надо вставить цикл. но я не могу понять куда вставить этот цикл в СА. Помогите пожалуйста! Если можно хоть с самыми краткими объяснениями!

Добавлено через 1 час 31 минуту
В общем своими усилиями дошел до кода:
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
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
void main()
{
    float a,b,c,S,pp;
    int i,N;
    printf("\n Vvedite N - chislo, skolko raz vi budete vvodit storoni i programma budet vishitivat N raz dlya nih Ploshad i proveryat sushestvovoanie\n");
    scanf_s("%d", &N);
    printf("\n Vi budete vvodit storoni %d raz\n",N);
    for(i=0;i<=N;i++)
    {
    printf("\n Vvedite storoni treuglonkiov - a,b,c\n");
    scanf_s ("%f %f %f", &a, &b, &c);
    if ((a+b>c)&&(a+c>b)&&(b+c>a)) printf("\n Treugolnik sushestvuet.\n");
    else printf("Treugolnik ne sushestvuet!");
    }
    pp=(a+b+c)/2;
    S=sqrt(pp*(pp-a)*(pp-b)*(pp-c));
    printf("Treugolnik sushestvuet, ego S - %3.2f",S);
_getch();
}
Осталось отладить что бы он выводил площадь каждого треугольника. или же не выводил если такой тр-к не существует...
http://www.cyberforum.ru/c-beginners/thread1267933.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2012, 18:52
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Определить площади треугольников с проверкой условия их существования для введенных N раз сторон a,b,c. (C (СИ)):

Объявить функцию F для вычисления площади треугольника по длинам трех его сторон (по формуле Герона)
Объявить функцию F для вычисления площади треугольника по длинам трех его...

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

*на зачете*Даны длины двух сторон и угла между ними для двух треугольников.Определить больший по площади треугольник.Выч.пл.треуг.оформ. Ввиде ФУНКЦИИ
*на зачете*Даны длины двух сторон и угла между ними для двух...

Определить площади двух треугольников, заданных длинами сторон (через клавиатуру), по формуле Герона. Полупериметр вычислять с помощью функции
Привет всем, ребят кому не сложно помогите,написать програму на Си++ для...

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

10
alkagolik
Заблокирован
17.09.2012, 19:03 #2
Цитата Сообщение от _include Посмотреть сообщение
Непонятно - "для введенных N раз сторон" - N сторон что ли? или как?
Цитата Сообщение от _include Посмотреть сообщение
с проверкой условия их существования для введенных N раз сторон a,b,c.
1. вводим стороны треугольника
2. проверяем существует ли такой треугольник
3. Да. п.6
4. Нет.
5. Сообщаем об ошибке. п. 1
6. вычисляем площадь
7. выход.
или иначе - вычислить площади N треугольников. В случае невозможности существования такового (некоторых или всех из N) выдать сообщение.
0
zitxbit
89 / 741 / 279
Регистрация: 11.04.2012
Сообщений: 971
17.09.2012, 19:30 #3
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
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
typedef struct Triangle
{
    int a;
    int b;
    int c;
    double sq;
} TRIANGLE;
 
bool is_triangle(TRIANGLE* pTriangle)
{
    return (pTriangle->a+pTriangle->b>pTriangle->c)&&
        (pTriangle->a+pTriangle->c>pTriangle->b)&&
        (pTriangle->b+pTriangle->c>pTriangle->a) ? 1 : 0;
}
 
int main()
{
    static TRIANGLE triangles[] = { { 5, 7, 9, 0 }, { 2, 6, 5, 0 }, { 4, 3, 8, 0 }, 
                                    { 9, 8, 7, 0 }, { 3, 5, 6, 0 }, { 7, 8, 4, 0 } };
 
    for (int i = 0; i < sizeof(triangles)/sizeof(TRIANGLE); i++)
        if (is_triangle(&triangles[i]))
        {
            double pp = (double)(triangles[i].a+triangles[i].b+triangles[i].c) / 2;
            triangles[i].sq = sqrt(pp*(pp-triangles[i].a)*(pp-triangles[i].b)*(pp-triangles[i].c));
            printf("a = %d b = %d c = %d s = %lf\n",triangles[i].a, triangles[i].b, triangles[i].c, triangles[i].sq);
        }
 
        else printf("Treugolnik ne suschstvuet\n");
 
    _getch();
 
    return 0;
}
http://liveworkspace.org/code/f531f042ec88cdfbdf5ae25482f1ec52
0
Миниатюры
Определить площади треугольников с проверкой условия их существования для введенных N раз сторон a,b,c.  
Natalich94
2 / 2 / 2
Регистрация: 15.10.2011
Сообщений: 34
20.09.2012, 21:54 #4
Дано 4 точки на декартовой системе координат.
как проверить какие тройки из них создают треугольник ?
0
accept
4833 / 3254 / 454
Регистрация: 10.12.2008
Сообщений: 10,569
21.09.2012, 04:06 #5
Цитата Сообщение от Natalich94 Посмотреть сообщение
Дано 4 точки на декартовой системе координат.
как проверить какие тройки из них создают треугольник ?
перебирая все комбинации из трёх точек, передавай их в функцию, которая определяет, образуют ли три точки треугольник
0
Psilon
Master of Orion
Эксперт .NET
5981 / 4834 / 901
Регистрация: 10.07.2011
Сообщений: 14,439
Записей в блоге: 5
Завершенные тесты: 4
21.09.2012, 09:53 #6
Natalich94, если неохота думать, то
C
1
2
3
4
for i
 for j
   for k
      for c
Он сам найдет. Хотя комбинаций всего http://www.cyberforum.ru/cgi-bin/latex.cgi?{{C}_{4}}^{3} = 6
0
accept
4833 / 3254 / 454
Регистрация: 10.12.2008
Сообщений: 10,569
21.09.2012, 10:11 #7
Код
 3         4!           4
С  = -------------- = ----- = 4
 4    3! * (4 - 3)!     1!
0
Psilon
Master of Orion
Эксперт .NET
5981 / 4834 / 901
Регистрация: 10.07.2011
Сообщений: 14,439
Записей в блоге: 5
Завершенные тесты: 4
21.09.2012, 10:17 #8
accept, тьфу ты, не выспался, конечно 4.
0
accept
4833 / 3254 / 454
Регистрация: 10.12.2008
Сообщений: 10,569
21.09.2012, 10:18 #9
просто количество точек могут повысить, поэтому нужно алгоритм сразу писать таким, чтобы для любого количества точек работало
0
Psilon
Master of Orion
Эксперт .NET
5981 / 4834 / 901
Регистрация: 10.07.2011
Сообщений: 14,439
Записей в блоге: 5
Завершенные тесты: 4
21.09.2012, 10:42 #10
accept, я имею ввиду, что можно с головой и математикой подумать и написать более продуманный алгоритм, чем тупой перебор абсолютно всех точек.
0
accept
4833 / 3254 / 454
Регистрация: 10.12.2008
Сообщений: 10,569
21.09.2012, 10:48 #11
Цитата Сообщение от Psilon Посмотреть сообщение
что можно с головой и математикой подумать и написать более продуманный алгоритм
алгоритмы разные есть, но просто перебирать - это первое, что нужно уметь
0
21.09.2012, 10:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.09.2012, 10:48
Привет! Вот еще темы с решениями:

Сравнить площади треугольников, заданных длинами сторон
заданы стороны 2-х треугольников: ABC(a,b,c) и PLF(p,l,f) Q={ -1, если...

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

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

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


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

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

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