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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
isaak
102 / 39 / 9
Регистрация: 17.10.2010
Сообщений: 658
#1

Вычислить коэффициент трения - C++

26.09.2012, 21:39. Просмотров 1111. Ответов 4
Метки нет (Все метки)

Всем доброго время суток. Тело соскальзывает с наклонной плоскости (угол наклона http://www.cyberforum.ru/cgi-bin/latex.cgi?\alpha) с ускорением a. Написать программу для определения коэффициента трения k тела о плоскость. Воспользоваться тем, что по второму закону Ньютона http://www.cyberforum.ru/cgi-bin/latex.cgi?m * a = m * g * sin(\alpha) - {F}_{t}, где http://www.cyberforum.ru/cgi-bin/latex.cgi?{F}_{t} = k * m * g * cos(\alpha). Отсюда получаем http://www.cyberforum.ru/cgi-bin/latex.cgi?a = g * sin(\alpha)- k * cos(\alpha). Вот код программы:
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 <cmath>
#include < cstdlib>
#include <iostream>
using namespace std;
const  double g = 9.81;
const double Pi = 3.1416;
int main()
{
setlocale( LC_ALL,"Russian" );
double a;
double alpha;
double k;
cout<<"a = ";cin>>a;
cout<<"a(in deg) = ";cin>>alpha;
alpha = alpha * Pi/180; //Перевели в радианы
k = (g * sin(alpha)- a)/(g * cos(alpha));
if( alpha >= 90 )
    {
        cout<<"Такого коэффициента трения тела о плоскость не существует!\n";
        system("pause");
        return 1;
    }
k = (g * sin(alpha)- a)/(g * cos(alpha));
 
{
cout << "Коэффициент трения тела о плоскость равен: " << k <<endl;
   }
    
 
system("pause");
return 0;
}
У меня не получается правильно записать условие, что при
C++
1
alpha >= 90
и
C++
1
g * cos(alpha) = 0
коэффициента трения не существует???? Помогите пожалуйста третьи сутки бьюсь. заранее огромное спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.09.2012, 21:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вычислить коэффициент трения (C++):

Определить силу трения - C++
Всем доброго время суток. Написать программу определения силы трения {F}_{t}, которая действует на тело массой m, находящейся на наклонной...

Биномиальный коэффициент - C++
Реализовать рекурсивную функцию, вычисляющую биномиальный коэффициент по формуле:

коэффициент пропорциональности - C++
Создайте программу, которая вычисляет коэффициент пропорциональности (aspect ratio) экрана вашего компьютера по заданным значениям ширины...

Биномиальный коэффициент с++ - C++
В голове ни мысли как написать это прогу, поэтому прошу вас!! Нужно написать программу, получающую числа n,m∈N_0, и вычисляющую...

R/S анализ коэффициент Херста - C++
Всем привет народ, кто может помочь по данному вопросу? Вот сам алгоритм http://ru.wikipedia.org/wiki/RS-анализ может у кого есть готовый...

Перемножить элементы массива на коэффициент - C++
надо перемножить массив на коэффициент в цикле, а массива я не вижу в данном куске программы if (m_floatSamples) { ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
-=ЮрА=-
26.09.2012, 21:54
  #2

Не по теме:

isaak, я помню о тебе, потерпи ещё день другой - на этой неделе я набрал заказов - некогда как говориться голову поднять
По задаче a = g*(sin(alpha) - k*cos(alpha)) = > k = tg(alpha) - a/g*cos(alpha) - у тебя такая же формула, норм, а вот тут как всегда накосил - альфа то в радианах

Цитата Сообщение от isaak Посмотреть сообщение
alpha = alpha * Pi/180; //Перевели в радианы
а тут с чем альфу сравниваешь?
Цитата Сообщение от isaak Посмотреть сообщение
if( alpha >= 90 )

isaak
102 / 39 / 9
Регистрация: 17.10.2010
Сообщений: 658
26.09.2012, 22:13  [ТС] #3
Хорошо -=ЮрА=- буду ждать Заранее огромное спасибо.
-=ЮрА=-
Заблокирован
Автор FAQ
02.10.2012, 02:21 #4
Вот что вышло
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
40
41
42
43
44
45
#include <cmath>
#include <iostream>
using namespace std;
 
template <class T>//Функция для безопасного ввода(ввод с защитой от ошибок)
void SafeInput(const char * sMsg, T &val)
{
    do
    {
        cin.sync();
        cout<<sMsg;
        cin.clear();
    }
    while(!(cin>>val));
}
 
int main()
{
    setlocale(LC_ALL,"RUS");
    //system("chcp 1251");
    double a = 0;   //Будет хранить ускорение тела
    double g = 9.81;//Будет хранить ускорение свободного падения
    double deg   = asin(1.0)/90;//Коэффициент перевода градусов в радианы
    double angle = 0;//Будет содержать величину угла наклона плоскости
    while(true)
    {
        cout<<"\tПРОГРАММА ДЛЯ РАСЧЁТА КОЭФФ ТРЕНЯ СКОЛЬЖЕНИЯ"<<endl;
        SafeInput("Угол наклона плоскости к горизонту (в градусах) : ", angle);
        if(angle < 0)
            cout<<"Введено некорректное значение угла"<<endl;
        else
        if(angle == 90)
            cout<<"Тело свободно падает а не соскальзывает"<<endl;
        else
        {
            angle *= deg;//Перевели угол в радианы
            SafeInput("Ускорение тела (м/с^2) : ", a);
            if(tan(angle) < (a/g)/cos(angle))
                cout<<"Введены некорректные параметры sin(a) > (a/g)"<<endl;
            else
                cout<<"kтр = "<<tan(angle) - (a/g)/cos(angle)<<endl;
        }
    }
    return 0;
}
Миниатюры
Вычислить коэффициент трения   Вычислить коэффициент трения  
isaak
102 / 39 / 9
Регистрация: 17.10.2010
Сообщений: 658
02.10.2012, 22:45  [ТС] #5
От души огромное спасибо -=ЮрА=- сейчас буду разбираться.

Добавлено через 1 час 37 минут
-=ЮрА=- вопрос? Ты использовал принцип подобия треугольников? Угол наклонной плоскости равен http://www.cyberforum.ru/cgi-bin/latex.cgi?\alpha так да? Сама наклонная плоскость прямоугольный треугольник и проекции G на оси OX и OY тоже получаются прямоугольные треугольники значит они подобные и углы у них равны? Если не правильно, то поправь меня. Заранее огромное спасибо.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.10.2012, 22:45
Привет! Вот еще темы с ответами:

Заполнить массив, увеличивая элементы на коэффициент - C++
Всем доброго времени суток! Я учусь писать свои первые коды на C++. Опыт дней 10 самообучения) Пытаюсь решить вот такую задачу...

Получить коэффициент многочлена, являющегося произведением P(x) и Q(x) - C++
Два многочлена Р(х) и порядка n и Q(x) порядка м заданы своими коэффициентами. Получить коэффициент многочлена, являющегося произведением...

Выборочные коэффициент ранговой корреляции методом Спирмена и Кендала - C++
Тема: Выборочные коэффициент ранговой корреляции методом Спирмена и Кендала. Необходимо написать программу на С# или на С++. Очень надо,...

Из массива случайных чисел сделать другой массив, умножая четные и нечетные элементы на коэффициент - C++
В SG1 ввести несколько (=&gt;10)целых чисел из интервала (массив №1,random).На его основе создать массив №2(-&gt;SG2),все элементы которого...


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

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

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