


Срочно нужно решить.Ответьте пожалуйста.
Библиотекарь решил произвести небольшой ремонт на кухне. Для установки вытяжки ему нужно понять, на какую высоту могут взлетать котлеты, когда он их переворачивает, подбрасывая сковородку. Говоря иначе, ему нужно подсказать, на какой высоте будут котлеты спустя указанное время. Также библиотекарь обещал прислать начальную скорость, с которой взлетает котлета. Также у него стоит небольшой грави-генератор, так что ускорение свободного падения он также пришлет.
Загляни в примечания, там находится точная формула для расчета.
К слову о грави-генераторе. У библиотекаря иногда еда вот так леветирует.
Формат входных данных
Три целых числа:
Стартовая скорость котлеты - v
Время, в которое интересна высота - t
Ускорение свободного падения на кухне библиотекаря - g
Формат выходных данных
Вывести текущую высоту(целым числом) в формате: "Height is ANSWER", где Answer - посчитанное значение.
Примечания
Формула для расчета высоты:
S = v*t - (g*t*t)/2
S- текущая высота
входные данные выходные данные
10
3
10
Height is -15
30
2
5
Height is 50
Единственное, что хотелось бы уточнить - на каком языке программирования это нужно сделать - нет, я вижу, что вопрос размещен в категории C/C++, но дело в том, что это - несколько разные языки. Так на каком именно делать?
Ладно, напишу и на том, и на том.
Итак, C++:
#include <iostream>
#include <cmath>
using namespace std;
int main ()
{
setlocale (LC_ALL, "RUS");
long double g, t, v;
cout<<"Введите с клавиатуры значения скорости котлеты, времени полета котлеты и ускорения свободного падения (только числа). После ввода каждого из значений нажимайте клавишу Enter. При вводе дробных значений целую часть от дробной отделяйте точкой, а не запятой.\n";
cout<<"Введите скорость котлеты: ";
cin>>v;
cout<<"\nВведите время полета котлеты: ";
cin>>t;
cout<<"\nВведите ускорение свободного падения: ";
cin>>g;
cout<<"\nHeight is: "<<v*t-(g*pow (t, 2))/2;
getchar ();
return 0;
}
C:
#include <stdio.h>
#include <math.h>
int main ()
{
long double g, t, v;
printf ("Введите с клавиатуры значения скорости котлеты, времени полета котлеты и ускорения свободного падения (только числа). После ввода каждого из значений нажимайте клавишу Enter. При вводе дробных значений целую часть от дробной отделяйте точкой, а не запятой.\n");
printf ("Введите скорость котлеты: ");
scanf ("%Lf", &v);
printf ("\nВведите время полета котлеты: ");
scanf ("%Lf", &t);
printf ("\nВведите ускорение свободного падения: ");
scanf ("%Lf", &g);
printf ("\nHeight is: %Lf", v*t-(g*pow (t, 2))/2);
getchar ();
return 0;
}
Библиотекарь - инженер - повар? Да всё на си + ?
Вы чё там курите все?
Должно быть как то так:
#include <iostream>
int main(){
int v0, t,g;
std::cout << "Please provide Velocity, Time, Gravity separated by ' ' space:";
std::cin >> v0 >> t >> g;
std::cout << "Height is " << v0*t - t*t*g/2 << std::endl;
std::cout << "Press enter to finish";
std::cin >> v0;
}
Проблемы могут быть в округлении при делении на 2. Оно всегда будет в меньшую сторону. Но можно например добавить что-нибудь на подобии :
-(t%2)*(g%2)?1:0 к вычислению. Если это критично.