Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.06.2012, 19:53   #1
novichok111
Новичок
Джуниор
 
Регистрация: 12.06.2012
Сообщений: 1
Сообщение Нужно чтобы косинус угла больше 1 не считал, а выводил сообщение "Косинуса нет" C++

Написать программу для вычисления косинуса
угла между векторами, заданными своими координатами
(скалярное произведение векторов делится на произведе-
ние модулей этих векторов) . Для вычисления скалярного
произведения и модуля вектора оформить отдельную
функцию.
Код:
#include <iostream>
#include <cmath>
#include <math.h>
#include <windows.h>
using namespace std; 
float cosin(float a,float b);
float b1,a1,co,x11,y11,x12,y12,x21,y21,x22,y22; 
int main()
{   setlocale (LC_ALL, "Russian");
	cout<<"\n введи координаты векторов x11,y11,x12,y12,x21,y21,x22,y22\n  ";
 cin>>x11>>y11>>x12>>y12>>x21>>y21>>x22>>y22;
a1=sqrt( ((x12-x11)*(x12-x11)) +  ((y12-y11)*(y12-y11)) );
b1=sqrt( ((x22-x21)*(x22-x21)) +  ((y22-y21)*(y22-y21)) );
cout<<"длины векторов "<<a1<<" "<<b1;
co=cosin(a1,b1); 
cout<<"\n"; cout<<"косинус угла= "<<co<<"\n";
return 0;}

float cosin(float b,float a)
{ float c,X1,Y1,X2,Y2;
X1= x12-x11;
Y1= y12-y11;
X2= x22-x21;
Y2= x22-x21;
c= ( (X1*X2) + (Y1*Y2) ) / ( (fabs(a) * fabs(b)) );
return (c); }
novichok111 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
сообщение об ошибке "в устройстве нет диска вставьте диск в устройство device harddisk1 dr1" Kcu Операционные системы общие вопросы 2 05.05.2012 19:19
Нужно поле "Загрузить файл" в "новости сайта" planetary Помощь студентам 1 24.06.2010 12:26
если >30 тогда "да" иначе "нет"... DBgrid Daur БД в Delphi 4 30.05.2010 16:54
Как сделать кнопку "больше"-"меньше" Clericos HTML и CSS 8 30.09.2009 20:20
Нет в русском языке "ложит", есть - "кладет". mihali4 Свободное общение 25 01.04.2008 11:19