Obliczenia i infinity loop

0

Czy ktoś może mi powiedzieć czemu mój program wpadł w infinity loopa?
Zakres x jest od 21 do 49 a x ma zwiększać się o c i dla każdego x(z tego przedziału),
mam wypisywać wartość y.


#include <iostream>
#include <stdio.h>
#include <cmath>
#include <fstream>
using namespace std;

int main()
{
    double c = ((49-21)/100);
    double y;
    double x = 21;

  for (; x < 49 ; x += c)
   {
    y = 30 * sqrt(x * (1/(tan(sqrt(3*x) - 2.1))));
    printf ("The value is: \n=> %f \n", y );
   } 

}

stackoverflow.jpg

1

Jak nie trudno się domyślić Twoje c = 0.

4

Takim, że dzielisz inta przez inta.
Zrób tak:

double c = ((49-21)/100.0);

albo tak:

double c = ((49-21)/(double)100);

1 użytkowników online, w tym zalogowanych: 0, gości: 1