Я не понимаю, почему, если я вставлю букву, программа выполнит printf
после цикла for, не позволяя мне вставить значение для scanf
после цикла for.
int main()
{
float ascissa, ordinata, d, dis, a[50];
int i=0, j, count = 0;
for(;;){
printf("Inserisci ascissa: (oppure inserisci una lettera per terminare): ");
if(scanf("%f", &ascissa) != 1)
break;
printf("Inserisci ordinata: ");
scanf("%f", &ordinata);
punto p1 = creaPunto(ascissa, ordinata);
printf("Inserisci ascissa: ");
scanf("%f", &ascissa);
printf("Inserisci ordinata: ");
scanf("%f", &ordinata);
punto p2 = creaPunto(ascissa, ordinata);
dis = distanza(p1, p2);
a[i]=dis;
i++;
}
printf("Inserisci d: ");
scanf("%f", &d);
for(j=0; j<i; j++)
if(a[j]<d)
count++;
printf("Coppie che hanno distanza minore di d: %d\n", count);
}