Siema! Jestem początkującym adeptem programowania (bardzo) no i mam zadanko, które potrafię rozwiązać tylko do pewnego momentu.
Napisz program tablicujący funkcję sinus w zakresie od 0 do 360 stopni z krokiem 5 stopni. Obok wartości kąta w stopniach oraz wartości funkcji wypisywanych w równych kolumnach z lewej strony ekranu, należy dodatkowo rysować szkic wykresu funkcji wykorzystując znak ’*’ (patrz rysunek). Przesunięcie gwiazdki o odpowiednią ilość znaków wylicz na podstawie wartości funkcji. Przyjmij, że przedział [-1,1], do którego należą wartości funkcji, odpowiada 60 znakom na ekranie.
Oto mój kod:
int main(){
double x;
x=0;
cout<<fixed<<setprecision(3);
cout<<"X"<<setw(15)<<"sin(x)"<<setw(20)<<-1<<setw(20)<<0<<setw(20)<<1<<endl;
cout<<"____________________________________________________________________________________"<<endl;
for(int i=0; i<=360;i=i+5) {
cout<<x<<setw(15)<<sin(x*3.1416/180)<<endl;
x=x+5;
return 0;
}
I robi się tabelka z tymi sinusami oraz ich wartościami, ale jak zrobić tak, żeby tam gdzie jest 0, robiły się * i przesuwały zgodnie z wartościami sinusa? Czyli jak mamy 30 to żeby na tej wyskości i na długości na tej prowizorycznej osi 0.500 było * i tak całą tablice. Coś takiego jak na dole :
5.000 0.087 *
10.000 0.174 *
15.000 0.259 * itp
20.000 0.342
25.000 0.423
30.000 0.500