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

"НОК трех чисел" и "Площадь треугольника" - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.58
z0z0ka
0 / 0 / 0
Регистрация: 27.12.2009
Сообщений: 5
27.12.2009, 18:30     "НОК трех чисел" и "Площадь треугольника" #1
Помогите пожалуйста решить 2 задачи.
1. Разработать функцию, возвращающую наименьшее общее кратное трёх заданных натуральных чисел.
2. Даны длины отрезков A, B, C, D. Для каждой тройки этих отрезков, из которых можно построить треугольник, напечатать площадь этого треугольника. (Определить функцию для нахождения и печати площади треугольника, если он существует.)

Добавлено через 16 минут
На обычном Си, любой компилятор.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.12.2009, 18:30     "НОК трех чисел" и "Площадь треугольника"
Посмотрите здесь:

C++ Необработанное исключение в "0x00412b4a" в "kursovik.exe": 0xC0000005: Нарушение прав доступа при чтении "0x00000004".
Необработанное исключение в "0x00414558" в "467.exe": 0xC0000005: Нарушение прав доступа при чтении "0xabababbb" C++
Необработанное исключение в "0x775e15de" в "laba3.exe": 0xC0000005: Нарушение прав доступа при чтении "0xfdfdfdf9". C++
C++ Необработанное исключение в "0x01082855" в "sort.exe": 0xC0000005: Нарушение прав доступа при записи "0xcccccccc"
Необработанное исключение в "0x778e15de" в "dir-3.exe": 0xC0000005: Нарушение прав доступа при чтении "0x00000000" C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
27.12.2009, 18:33     "НОК трех чисел" и "Площадь треугольника" #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int func_NOD(int a, int b, int c)
{
int i=2, fl=1;
while(fl)
{
if(i>a || i>b || i>c)
{
i=1;
fl=0;
}
if(a%i==0 && b%i==0 && c%i==0)
fl=0;
i++;
}
return i-1;
}
Функция возвращает 0 когда нет общего делителя (кроме 1), или возвращает значение наименьшего общего делителя.
odip
Эксперт C++
 Аватар для odip
7225 / 3287 / 58
Регистрация: 17.06.2009
Сообщений: 14,165
27.12.2009, 23:08     "НОК трех чисел" и "Площадь треугольника" #3
2valeriikozlov: наименьший общий делитель трех чисел это очевидно 1.
А посчитать просили наименьшее общее кратное.

Пусть NOD(a,b) - наибольшой общий делитель чисел.
Вычисляется например по алгоритму Евклида.
Тогда NOK(a,b)= a*b/NOD(a,b) - вычисление наименьшего общего кратного.
Далее NOK(a,b,c)= NOK( NOK(a,b), c )
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
28.12.2009, 07:13     "НОК трех чисел" и "Площадь треугольника" #4
odip, согласен
odip
Эксперт C++
 Аватар для odip
7225 / 3287 / 58
Регистрация: 17.06.2009
Сообщений: 14,165
29.12.2009, 00:03     "НОК трех чисел" и "Площадь треугольника" #5
А вообще все это в форуме я уже писал
fyk-fyk
Сообщений: n/a
07.04.2011, 22:00     "НОК трех чисел" и "Площадь треугольника" #6
#include <math.h>
#include <iostream.h>


float S(float x,float y,float z)
{
if (x+y >= z && x+z >= y && y+z >= x) {
float p=(x+y+z)/2;
return sqrt(p*(p-x)*(p-y)*(p-z));
} else {return -1;};
}


int main(int argc, char* argv[])
{
float a,b,c,d,t;
cout<<"Введите 4 числа\n";
cin>>a>>b>>c>>d;

cout<<a<<" "<<b<<" "<<c<<"\n";
t=S(a,b,c);
if (t!=-1) {
cout<<"Площадь="<<t<<"\n";
} else {cout<<"Треугольника не существует.\n";};

cout<<b<<" "<<c<<" "<<d<<"\n";
t=S(b,c,d);
if (t!=-1) {
cout<<"Площадь="<<t<<"\n";
} else {cout<<"Треугольника не существует.\n";};

cout<<c<<" "<<d<<" "<<a<<"\n";
t=S(c,d,a);
if (t!=-1) {
cout<<"Площадь="<<t<<"\n";
} else {cout<<"Треугольника не существует.\n";};

cout<<d<<" "<<a<<" "<<b<<"\n";
t=S(d,a,b);
if (t!=-1) {
cout<<"Площадь="<<t<<"\n";
} else {cout<<"Треугольника не существует.\n";};
cin>>t;

return 0;
}
Yandex
Объявления
07.04.2011, 22:00     "НОК трех чисел" и "Площадь треугольника"
Ответ Создать тему
Опции темы

Текущее время: 08:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru