- Ја почнал/а темата
- #1
maximilian
Gaining Experience
- 26 март 2008
- 1,064
- 74
Имам едно домашно по С++ и ми излезе еден проблем.
Прво, да ви ја објаснам задачата: Коњ може да пасе трева од 10 различни ливади. Секоја ливада има различна трева. Тревата има калоричност калории/уста, време на задржување на коњот на таа ливада, а ливадите имаат координати по Х и У во километри, а првата ливада (коњушницата) е со координати (0,0). Коњот има карактеристики - секунди за џвакање на една уста, брзина на движење во km/h од една ливада до друга и неопходни калории за ден. За да се нахрани, освен калориите, треба да апнал барем 4 вида трева.
A) Да се воведат карактеристиките
Б) Да се пресмета необходното време за барем едно пасење.
Е сеа, тоа под А) е гола вода, го напраив
. Финтата е, кога сакам да ми пресмета колку калории примил коњот од една ливада, на сите ливади ми дава резултат 0. :zbunet: . Еве го кодот па ве молам ако можете помогнете, кажете ми кај сум заебал 
Прво, да ви ја објаснам задачата: Коњ може да пасе трева од 10 различни ливади. Секоја ливада има различна трева. Тревата има калоричност калории/уста, време на задржување на коњот на таа ливада, а ливадите имаат координати по Х и У во километри, а првата ливада (коњушницата) е со координати (0,0). Коњот има карактеристики - секунди за џвакање на една уста, брзина на движење во km/h од една ливада до друга и неопходни калории за ден. За да се нахрани, освен калориите, треба да апнал барем 4 вида трева.
A) Да се воведат карактеристиките
Б) Да се пресмета необходното време за барем едно пасење.
Е сеа, тоа под А) е гола вода, го напраив
Код:
#include<iostream>
#include<stdlib.h>
#include<cmath>
using namespace std;
struct horse
{
int sec;
double speed;
double calories;
int time;
};
struct field
{
double calPerMouth;
int x;
int y;
double time;
double cals;
};
int main()
{
horse konj;
cout << "Input: second per mouth" << endl;
cin >> konj.sec;
cout << "Input: speed km/h" << endl;
cin >> konj.speed;
cout << "Input: calories per day" << endl;
cin >> konj.calories;
field a[10];
a[0].x=0;
a[0].y=0;
cout << "Input: calories per mouth for field No:1" << endl;
cin >> a[0].calPerMouth;
cout << "time for the horse eating on this field in hours: ";
cin >> a[0].time;
a[0].cals=(konj.sec/3600) * a[0].time * a[0].calPerMouth;
cout << endl << endl;
for (int i=1; i<10; i++)
{
cout << "Input: the X, Y coordinate for field No:" << i+1 << " ";
cin >> a[i].x >> a[i].y;
cout << "Input: the calories per mouth from the grass from field No:" << i+1 << " ";
cin >> a[i].calPerMouth;
cout << "time for the horse eating on this field in hours: ";
cin >> a[i].time;
a[i].cals=(konj.sec/3600)*a[i].time*a[i].calPerMouth;
cout << endl << endl << endl;
}
cout << "Seconds per mouth: " << konj.sec << endl;
cout << "Speed km/h" << konj.speed << endl;
cout << "Calories per day: " << konj.calories << endl << endl;
for (int i=0; i<10; i++)
{
cout << "Field No: " << i+1;
cout << "(x,y)=(" << a[i].x << "," << a[i].y << ")" << endl;
cout << "calories per mouth:" << a[i].calPerMouth << endl;
cout << "time for the horse eating on this field in hours:" << a[i].time << endl;
cout << "Calories inputed on this field: " << a[i].cals << endl << endl;
}
double distance[9];
for (int i=0; i<9; i++)
for (int j=i+1; j<10; j++)
distance[i]=sqrt(fabs((a[j].x-a[i].x)*(a[j].x-a[i].x)+(a[j].y-a[i].y)*(a[j].y-a[i].y)));
for (int i=0; i<9; i++)
{
cout << "Distance between " << i+1 << " and " << i+2 << " is " << distance[i] <<"km" << endl;
}
cout << endl << endl;
double time[9];
for (int i=0; i<9; i++)
time[i]=distance[i]/konj.speed;
for (int i=0; i<9; i++)
cout << "The time that the horse have to go between the field " << i+1 << " and " << i+2 << " is:" << time[i] << endl << "hours";
cout << endl << endl;
system ("pause");
return 0;
}